Skip to content

Commit f8c667e

Browse files
dt-bindings: gpu: Add Apple SoC GPU
Add bindings for the GPU present in Apple SoCs Reviewed-by: Rob Herring (Arm) <[email protected]> Reviewed-by: Sven Peter <[email protected]> Signed-off-by: Sasha Finkelstein <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Sven Peter <[email protected]>
1 parent ef68a0e commit f8c667e

File tree

2 files changed

+95
-0
lines changed

2 files changed

+95
-0
lines changed
Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/gpu/apple,agx.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Apple SoC GPU
8+
9+
maintainers:
10+
- Sasha Finkelstein <[email protected]>
11+
12+
properties:
13+
compatible:
14+
oneOf:
15+
- enum:
16+
- apple,agx-g13g
17+
- apple,agx-g13s
18+
- apple,agx-g14g
19+
- items:
20+
- enum:
21+
- apple,agx-g13c
22+
- apple,agx-g13d
23+
- const: apple,agx-g13s
24+
25+
reg:
26+
items:
27+
- description: GPU coprocessor control registers
28+
- description: GPU block MMIO registers
29+
30+
reg-names:
31+
items:
32+
- const: asc
33+
- const: sgx
34+
35+
power-domains:
36+
maxItems: 1
37+
38+
mboxes:
39+
maxItems: 1
40+
41+
memory-region:
42+
items:
43+
- description: Region containing GPU MMU TTBs
44+
- description: Region containing GPU MMU page tables
45+
- description:
46+
Region containing a shared handoff structure for VM
47+
management coordination
48+
- description: Calibration blob. Mostly power-related configuration
49+
- description: Calibration blob. Mostly GPU-related configuration
50+
- description: Shared global variables with GPU firmware
51+
52+
memory-region-names:
53+
items:
54+
- const: ttbs
55+
- const: pagetables
56+
- const: handoff
57+
- const: hw-cal-a
58+
- const: hw-cal-b
59+
- const: globals
60+
61+
apple,firmware-abi:
62+
$ref: /schemas/types.yaml#/definitions/uint32-array
63+
minItems: 3
64+
description:
65+
macOS version the current firmware is paired with, used to pick
66+
the version of firmware ABI to be used.
67+
Bootloader will overwrite this
68+
69+
required:
70+
- compatible
71+
- reg
72+
- mboxes
73+
- memory-region
74+
- apple,firmware-abi
75+
76+
additionalProperties: false
77+
78+
examples:
79+
- |
80+
gpu@6400000 {
81+
compatible = "apple,agx-g13g";
82+
reg = <0x6400000 0x40000>,
83+
<0x4000000 0x1000000>;
84+
reg-names = "asc", "sgx";
85+
mboxes = <&agx_mbox>;
86+
power-domains = <&ps_gfx>;
87+
memory-region = <&uat_ttbs>, <&uat_pagetables>, <&uat_handoff>,
88+
<&gpu_hw_cal_a>, <&gpu_hw_cal_b>, <&gpu_globals>;
89+
memory-region-names = "ttbs", "pagetables", "handoff",
90+
"hw-cal-a", "hw-cal-b", "globals";
91+
92+
apple,firmware-abi = <0 0 0>;
93+
};
94+
...

MAINTAINERS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2331,6 +2331,7 @@ F: Documentation/devicetree/bindings/arm/apple/*
23312331
F: Documentation/devicetree/bindings/clock/apple,nco.yaml
23322332
F: Documentation/devicetree/bindings/cpufreq/apple,cluster-cpufreq.yaml
23332333
F: Documentation/devicetree/bindings/dma/apple,admac.yaml
2334+
F: Documentation/devicetree/bindings/gpu/apple,agx.yaml
23342335
F: Documentation/devicetree/bindings/i2c/apple,i2c.yaml
23352336
F: Documentation/devicetree/bindings/input/touchscreen/apple,z2-multitouch.yaml
23362337
F: Documentation/devicetree/bindings/interrupt-controller/apple,*

0 commit comments

Comments
 (0)