From cef203e2916b0a357d325e27f3f07ded9ea2e88b Mon Sep 17 00:00:00 2001 From: Ryan Murray <81541646+RyanTheTide@users.noreply.github.com> Date: Sat, 7 Nov 2026 22:44:37 +1100 Subject: [PATCH 1/4] arm64: dts: apple: describe T6050 board resources Add conservative board scaffolding, disabled peripheral resource descriptions and per-board coverage ledgers. Unresolved providers, transport children and handoff requirements remain explicit review gaps. Signed-off-by: Ryan Murray <81541646+RyanTheTide@users.noreply.github.com> Assisted-by: LLM --- .../devicetree/bindings/arm/apple.yaml | 5 + .../soc/apple/apple,t6050-admac-complex.yaml | 53 + .../soc/apple/apple,t6050-admac-control.yaml | 48 + .../bindings/soc/apple/apple,t6050-aes.yaml | 53 + .../soc/apple/apple,t6050-aic-timebase.yaml | 43 + .../soc/apple/apple,t6050-ane-complex.yaml | 53 + .../soc/apple/apple,t6050-aop-coproc.yaml | 53 + .../soc/apple/apple,t6050-atc-dpxbar.yaml | 43 + .../apple/apple,t6050-atc-phy-complex.yaml | 43 + .../apple/apple,t6050-audio-dma-proxy.yaml | 43 + .../soc/apple/apple,t6050-cpu-debug.yaml | 48 + .../soc/apple/apple,t6050-dart-complex.yaml | 52 + .../soc/apple/apple,t6050-display-coproc.yaml | 53 + .../soc/apple/apple,t6050-display-engine.yaml | 53 + .../soc/apple/apple,t6050-display-expert.yaml | 48 + .../apple,t6050-dockchannel-complex.yaml | 48 + .../bindings/soc/apple/apple,t6050-dp-in.yaml | 48 + .../soc/apple/apple,t6050-dptx-aux.yaml | 43 + .../soc/apple/apple,t6050-event-monitor.yaml | 48 + .../soc/apple/apple,t6050-gpio-bank.yaml | 61 + .../soc/apple/apple,t6050-gpu-complex.yaml | 48 + .../soc/apple/apple,t6050-gpu-coproc.yaml | 48 + .../soc/apple/apple,t6050-i2c-controller.yaml | 48 + .../soc/apple/apple,t6050-jpeg-complex.yaml | 53 + .../soc/apple/apple,t6050-pcie-piodma.yaml | 53 + .../soc/apple/apple,t6050-pciec-complex.yaml | 48 + .../soc/apple/apple,t6050-pciec-piodma.yaml | 53 + .../soc/apple/apple,t6050-pmp-coproc.yaml | 53 + .../apple/apple,t6050-processor-trace.yaml | 43 + .../soc/apple/apple,t6050-prores-complex.yaml | 53 + .../bindings/soc/apple/apple,t6050-ptd.yaml | 48 + .../bindings/soc/apple/apple,t6050-rsm.yaml | 53 + .../soc/apple/apple,t6050-scaler.yaml | 53 + .../soc/apple/apple,t6050-secure-mailbox.yaml | 53 + .../soc/apple/apple,t6050-secure-repair.yaml | 48 + .../soc/apple/apple,t6050-sep-coproc.yaml | 53 + .../soc/apple/apple,t6050-sio-coproc.yaml | 53 + .../soc/apple/apple,t6050-spi-controller.yaml | 48 + .../soc/apple/apple,t6050-spmi-complex.yaml | 43 + .../apple/apple,t6050-usb-drd-complex.yaml | 53 + .../soc/apple/apple,t6050-usb4-coproc.yaml | 48 + .../soc/apple/apple,t6050-usb4-router.yaml | 53 + .../apple,t6050-video-decoder-complex.yaml | 53 + .../apple,t6050-video-encoder-complex.yaml | 53 + arch/arm64/boot/dts/apple/Makefile | 5 + .../dts/apple/t6050-j714c-peripherals.dtsi | 387 +++++ arch/arm64/boot/dts/apple/t6050-j714c.dts | 2 + .../dts/apple/t6050-j714s-peripherals.dtsi | 371 +++++ arch/arm64/boot/dts/apple/t6050-j714s.dts | 45 + .../dts/apple/t6050-j716c-peripherals.dtsi | 387 +++++ arch/arm64/boot/dts/apple/t6050-j716c.dts | 2 + .../dts/apple/t6050-j716s-peripherals.dtsi | 371 +++++ arch/arm64/boot/dts/apple/t6050-j716s.dts | 45 + .../dts/apple/t6050-j775c-peripherals.dtsi | 431 +++++ arch/arm64/boot/dts/apple/t6050-j775c.dts | 45 + .../dts/apple/t6050-j775d-peripherals.dtsi | 321 ++++ arch/arm64/boot/dts/apple/t6050-j775d.dts | 2 + .../dts/apple/t6050-j873s-peripherals.dtsi | 260 +++ arch/arm64/boot/dts/apple/t6050-j873s.dts | 45 + .../dts/apple/t6050-k114c-peripherals.dtsi | 373 +++++ arch/arm64/boot/dts/apple/t6050-k114c.dts | 2 + .../dts/apple/t6050-k114s-peripherals.dtsi | 358 +++++ arch/arm64/boot/dts/apple/t6050-k114s.dts | 2 + .../dts/apple/t6050-k116c-peripherals.dtsi | 373 +++++ arch/arm64/boot/dts/apple/t6050-k116c.dts | 2 + .../dts/apple/t6050-k116s-peripherals.dtsi | 358 +++++ arch/arm64/boot/dts/apple/t6050-k116s.dts | 2 + .../boot/dts/apple/t6050-peripherals.dtsi | 1409 +++++++++++++++++ docs/devicetree/DT-GAPS-j714c.md | 265 ++++ docs/devicetree/DT-GAPS-j714s.md | 263 +++ docs/devicetree/DT-GAPS-j716c.md | 265 ++++ docs/devicetree/DT-GAPS-j716s.md | 263 +++ docs/devicetree/DT-GAPS-j775c.md | 261 +++ docs/devicetree/DT-GAPS-j775d.md | 353 +++++ docs/devicetree/DT-GAPS-j873s.md | 240 +++ docs/devicetree/DT-GAPS-k114c.md | 267 ++++ docs/devicetree/DT-GAPS-k114s.md | 265 ++++ docs/devicetree/DT-GAPS-k116c.md | 267 ++++ docs/devicetree/DT-GAPS-k116s.md | 265 ++++ 79 files changed, 10723 insertions(+) create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-admac-complex.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-admac-control.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-aes.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-aic-timebase.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-ane-complex.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-aop-coproc.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-atc-dpxbar.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-atc-phy-complex.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-audio-dma-proxy.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-cpu-debug.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-dart-complex.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-display-coproc.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-display-engine.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-display-expert.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-dockchannel-complex.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-dp-in.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-dptx-aux.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-event-monitor.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-gpio-bank.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-gpu-complex.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-gpu-coproc.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-i2c-controller.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-jpeg-complex.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-pcie-piodma.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-pciec-complex.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-pciec-piodma.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-pmp-coproc.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-processor-trace.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-prores-complex.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-ptd.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-rsm.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-scaler.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-secure-mailbox.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-secure-repair.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-sep-coproc.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-sio-coproc.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-spi-controller.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-spmi-complex.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-usb-drd-complex.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-usb4-coproc.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-usb4-router.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-video-decoder-complex.yaml create mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-video-encoder-complex.yaml create mode 100644 arch/arm64/boot/dts/apple/t6050-j714c-peripherals.dtsi create mode 100644 arch/arm64/boot/dts/apple/t6050-j714s-peripherals.dtsi create mode 100644 arch/arm64/boot/dts/apple/t6050-j714s.dts create mode 100644 arch/arm64/boot/dts/apple/t6050-j716c-peripherals.dtsi create mode 100644 arch/arm64/boot/dts/apple/t6050-j716s-peripherals.dtsi create mode 100644 arch/arm64/boot/dts/apple/t6050-j716s.dts create mode 100644 arch/arm64/boot/dts/apple/t6050-j775c-peripherals.dtsi create mode 100644 arch/arm64/boot/dts/apple/t6050-j775c.dts create mode 100644 arch/arm64/boot/dts/apple/t6050-j775d-peripherals.dtsi create mode 100644 arch/arm64/boot/dts/apple/t6050-j873s-peripherals.dtsi create mode 100644 arch/arm64/boot/dts/apple/t6050-j873s.dts create mode 100644 arch/arm64/boot/dts/apple/t6050-k114c-peripherals.dtsi create mode 100644 arch/arm64/boot/dts/apple/t6050-k114s-peripherals.dtsi create mode 100644 arch/arm64/boot/dts/apple/t6050-k116c-peripherals.dtsi create mode 100644 arch/arm64/boot/dts/apple/t6050-k116s-peripherals.dtsi create mode 100644 arch/arm64/boot/dts/apple/t6050-peripherals.dtsi create mode 100644 docs/devicetree/DT-GAPS-j714c.md create mode 100644 docs/devicetree/DT-GAPS-j714s.md create mode 100644 docs/devicetree/DT-GAPS-j716c.md create mode 100644 docs/devicetree/DT-GAPS-j716s.md create mode 100644 docs/devicetree/DT-GAPS-j775c.md create mode 100644 docs/devicetree/DT-GAPS-j775d.md create mode 100644 docs/devicetree/DT-GAPS-j873s.md create mode 100644 docs/devicetree/DT-GAPS-k114c.md create mode 100644 docs/devicetree/DT-GAPS-k114s.md create mode 100644 docs/devicetree/DT-GAPS-k116c.md create mode 100644 docs/devicetree/DT-GAPS-k116s.md diff --git a/Documentation/devicetree/bindings/arm/apple.yaml b/Documentation/devicetree/bindings/arm/apple.yaml index 9156ca918cdfb..1eaf92969a77c 100644 --- a/Documentation/devicetree/bindings/arm/apple.yaml +++ b/Documentation/devicetree/bindings/arm/apple.yaml @@ -476,6 +476,11 @@ properties: items: - enum: - apple,j714c # MacBook Pro (14-inch, M5 Max, 2026) + - apple,j714s # MacBook Pro (14-inch, M5 Pro) + - apple,j716c # MacBook Pro (16-inch, M5 Max) + - apple,j716s # MacBook Pro (16-inch, M5 Pro) + - apple,j775c # Mac Studio (J775c) + - apple,j873s # Mac mini (J873s) - apple,k114c # MacBook Pro (14-inch PROLED XDR, M5 Max, 2026) - apple,k114s # MacBook Pro (14-inch PROLED XDR, M5 Pro, 2026) - apple,k116c # MacBook Pro (16-inch PROLED XDR, M5 Max, 2026) diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-admac-complex.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-admac-complex.yaml new file mode 100644 index 0000000000000..dfc141f7f59ea --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-admac-complex.yaml @@ -0,0 +1,53 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-admac-complex.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 audio dma controller complex + +maintainers: + - Ryan Murray + +description: | + Audio DMA controller complex on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-admac-complex + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-admac-complex + - const: apple,admac-complex + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 2 + maxItems: 2 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 1 + maxItems: 1 + + iommus: + description: DMA translation streams used by this controller. + minItems: 1 + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-admac-control.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-admac-control.yaml new file mode 100644 index 0000000000000..3ab13e81c1be9 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-admac-control.yaml @@ -0,0 +1,48 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-admac-control.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 audio dma clock and event distribution + +maintainers: + - Ryan Murray + +description: | + Audio DMA clock and event distribution on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-admac-control + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-admac-control + - const: apple,admac-control + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 2 + maxItems: 2 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 1 + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-aes.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-aes.yaml new file mode 100644 index 0000000000000..4c87863fe50a7 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-aes.yaml @@ -0,0 +1,53 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-aes.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 aes cryptographic accelerator + +maintainers: + - Ryan Murray + +description: | + AES cryptographic accelerator on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-aes + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-aes + - const: apple,aes + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 3 + maxItems: 3 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 1 + maxItems: 1 + + iommus: + description: DMA translation streams used by this controller. + minItems: 1 + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-aic-timebase.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-aic-timebase.yaml new file mode 100644 index 0000000000000..4bafebfc6a6ce --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-aic-timebase.yaml @@ -0,0 +1,43 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-aic-timebase.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 interrupt controller timebase + +maintainers: + - Ryan Murray + +description: | + Interrupt controller timebase on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-aic-timebase + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-aic-timebase + - const: apple,aic-timebase + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 1 + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-ane-complex.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-ane-complex.yaml new file mode 100644 index 0000000000000..460289e008ab3 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-ane-complex.yaml @@ -0,0 +1,53 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-ane-complex.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 neural processing accelerator complex + +maintainers: + - Ryan Murray + +description: | + Neural processing accelerator complex on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-ane-complex + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-ane-complex + - const: apple,ane-complex + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 7 + maxItems: 7 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 2 + maxItems: 2 + + iommus: + description: DMA translation streams used by this controller. + minItems: 2 + maxItems: 2 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-aop-coproc.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-aop-coproc.yaml new file mode 100644 index 0000000000000..ae44665885d76 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-aop-coproc.yaml @@ -0,0 +1,53 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-aop-coproc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 always-on processor + +maintainers: + - Ryan Murray + +description: | + Always-on processor on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-aop-coproc + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-aop-coproc + - const: apple,aop-coproc + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 3 + maxItems: 3 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 4 + maxItems: 4 + + iommus: + description: DMA translation streams used by this controller. + minItems: 1 + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-atc-dpxbar.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-atc-dpxbar.yaml new file mode 100644 index 0000000000000..79d9030ad99d4 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-atc-dpxbar.yaml @@ -0,0 +1,43 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-atc-dpxbar.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 type-c displayport crossbar + +maintainers: + - Ryan Murray + +description: | + Type-C DisplayPort crossbar on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-atc-dpxbar + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-atc-dpxbar + - const: apple,atc-dpxbar + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 1 + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-atc-phy-complex.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-atc-phy-complex.yaml new file mode 100644 index 0000000000000..ac28ea0cfac93 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-atc-phy-complex.yaml @@ -0,0 +1,43 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-atc-phy-complex.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 type-c phy complex + +maintainers: + - Ryan Murray + +description: | + Type-C PHY complex on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-atc-phy-complex + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-atc-phy-complex + - const: apple,atc-phy-complex + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 44 + maxItems: 44 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-audio-dma-proxy.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-audio-dma-proxy.yaml new file mode 100644 index 0000000000000..7687dc9c92a89 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-audio-dma-proxy.yaml @@ -0,0 +1,43 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-audio-dma-proxy.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 isolated audio dma proxy + +maintainers: + - Ryan Murray + +description: | + Isolated audio DMA proxy on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-audio-dma-proxy + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-audio-dma-proxy + - const: apple,audio-dma-proxy + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 1 + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-cpu-debug.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-cpu-debug.yaml new file mode 100644 index 0000000000000..237456a8aed6a --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-cpu-debug.yaml @@ -0,0 +1,48 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-cpu-debug.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 cpu debug controller + +maintainers: + - Ryan Murray + +description: | + CPU debug controller on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-cpu-debug + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-cpu-debug + - const: apple,cpu-debug + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 2 + maxItems: 2 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 1 + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-dart-complex.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-dart-complex.yaml new file mode 100644 index 0000000000000..8533be2c7e870 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-dart-complex.yaml @@ -0,0 +1,52 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-dart-complex.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 iommu translation and address-filter complex + +maintainers: + - Ryan Murray + +description: | + IOMMU translation and address-filter complex on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-dart-complex + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-dart-complex + - const: apple,dart-complex + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 1 + maxItems: 6 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 1 + maxItems: 1 + + '#iommu-cells': + const: 1 + +required: + - compatible + - reg + - '#iommu-cells' + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-display-coproc.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-display-coproc.yaml new file mode 100644 index 0000000000000..37881435aab89 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-display-coproc.yaml @@ -0,0 +1,53 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-display-coproc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 display management coprocessor + +maintainers: + - Ryan Murray + +description: | + Display management coprocessor on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-display-coproc + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-display-coproc + - const: apple,display-coproc + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 2 + maxItems: 2 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 7 + maxItems: 8 + + iommus: + description: DMA translation streams used by this controller. + minItems: 2 + maxItems: 2 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-display-engine.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-display-engine.yaml new file mode 100644 index 0000000000000..13b794af7cb90 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-display-engine.yaml @@ -0,0 +1,53 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-display-engine.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 display scanout engine + +maintainers: + - Ryan Murray + +description: | + Display scanout engine on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-display-engine + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-display-engine + - const: apple,display-engine + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 5 + maxItems: 5 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 11 + maxItems: 13 + + iommus: + description: DMA translation streams used by this controller. + minItems: 2 + maxItems: 2 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-display-expert.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-display-expert.yaml new file mode 100644 index 0000000000000..6f6c5011f697e --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-display-expert.yaml @@ -0,0 +1,48 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-display-expert.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 display engine control and status windows + +maintainers: + - Ryan Murray + +description: | + Display engine control and status windows on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-display-expert + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-display-expert + - const: apple,display-expert + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 3 + maxItems: 13 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 1 + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-dockchannel-complex.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-dockchannel-complex.yaml new file mode 100644 index 0000000000000..e62f3f217a934 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-dockchannel-complex.yaml @@ -0,0 +1,48 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-dockchannel-complex.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 dockchannel fifo and interrupt complex + +maintainers: + - Ryan Murray + +description: | + DockChannel FIFO and interrupt complex on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-dockchannel-complex + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-dockchannel-complex + - const: apple,dockchannel-complex + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 6 + maxItems: 6 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 1 + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-dp-in.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-dp-in.yaml new file mode 100644 index 0000000000000..615757711830d --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-dp-in.yaml @@ -0,0 +1,48 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-dp-in.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 displayport input adapter + +maintainers: + - Ryan Murray + +description: | + DisplayPort input adapter on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-dp-in + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-dp-in + - const: apple,dp-in + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 1 + maxItems: 1 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 1 + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-dptx-aux.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-dptx-aux.yaml new file mode 100644 index 0000000000000..d4d7f427b3b31 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-dptx-aux.yaml @@ -0,0 +1,43 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-dptx-aux.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 displayport aux channel controller + +maintainers: + - Ryan Murray + +description: | + DisplayPort AUX channel controller on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-dptx-aux + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-dptx-aux + - const: apple,dptx-aux + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 2 + maxItems: 2 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-event-monitor.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-event-monitor.yaml new file mode 100644 index 0000000000000..4ed8266594763 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-event-monitor.yaml @@ -0,0 +1,48 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-event-monitor.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 soc event log register windows + +maintainers: + - Ryan Murray + +description: | + SoC event log register windows on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-event-monitor + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-event-monitor + - const: apple,event-monitor + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 141 + maxItems: 141 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 23 + maxItems: 23 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-gpio-bank.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-gpio-bank.yaml new file mode 100644 index 0000000000000..d900b55c36ebc --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-gpio-bank.yaml @@ -0,0 +1,61 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-gpio-bank.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 gpio register bank + +maintainers: + - Ryan Murray + +description: | + GPIO register bank on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-gpio-bank + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-gpio-bank + - const: apple,gpio-bank + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 1 + maxItems: 1 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 7 + maxItems: 7 + + '#address-cells': + const: 0 + + gpio-controller: true + + '#gpio-cells': + const: 2 + + interrupt-controller: true + + '#interrupt-cells': + const: 2 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-gpu-complex.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-gpu-complex.yaml new file mode 100644 index 0000000000000..156751d6dfd94 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-gpu-complex.yaml @@ -0,0 +1,48 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-gpu-complex.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 graphics processor register complex + +maintainers: + - Ryan Murray + +description: | + Graphics processor register complex on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-gpu-complex + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-gpu-complex + - const: apple,gpu-complex + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 2 + maxItems: 2 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 8 + maxItems: 8 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-gpu-coproc.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-gpu-coproc.yaml new file mode 100644 index 0000000000000..291e2e03160a8 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-gpu-coproc.yaml @@ -0,0 +1,48 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-gpu-coproc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 graphics management coprocessor + +maintainers: + - Ryan Murray + +description: | + Graphics management coprocessor on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-gpu-coproc + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-gpu-coproc + - const: apple,gpu-coproc + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 2 + maxItems: 2 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 4 + maxItems: 4 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-i2c-controller.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-i2c-controller.yaml new file mode 100644 index 0000000000000..b25ffa2d7f17f --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-i2c-controller.yaml @@ -0,0 +1,48 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-i2c-controller.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 i2c controller + +maintainers: + - Ryan Murray + +description: | + I2C controller on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-i2c-controller + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-i2c-controller + - const: apple,i2c-controller + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 1 + maxItems: 1 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 1 + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-jpeg-complex.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-jpeg-complex.yaml new file mode 100644 index 0000000000000..5d0103762752c --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-jpeg-complex.yaml @@ -0,0 +1,53 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-jpeg-complex.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 jpeg codec and shared register windows + +maintainers: + - Ryan Murray + +description: | + JPEG codec and shared register windows on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-jpeg-complex + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-jpeg-complex + - const: apple,jpeg-complex + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 1 + maxItems: 1 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 1 + maxItems: 1 + + iommus: + description: DMA translation streams used by this controller. + minItems: 1 + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-pcie-piodma.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-pcie-piodma.yaml new file mode 100644 index 0000000000000..5dc5ab3b7039d --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-pcie-piodma.yaml @@ -0,0 +1,53 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-pcie-piodma.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 pcie programmed i/o dma engine + +maintainers: + - Ryan Murray + +description: | + PCIe programmed I/O DMA engine on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-pcie-piodma + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-pcie-piodma + - const: apple,pcie-piodma + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 3 + maxItems: 3 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 1 + maxItems: 1 + + iommus: + description: DMA translation streams used by this controller. + minItems: 1 + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-pciec-complex.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-pciec-complex.yaml new file mode 100644 index 0000000000000..cc7d86cc0e91f --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-pciec-complex.yaml @@ -0,0 +1,48 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-pciec-complex.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 pcie tunnel controller + +maintainers: + - Ryan Murray + +description: | + PCIe tunnel controller on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-pciec-complex + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-pciec-complex + - const: apple,pciec-complex + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 8 + maxItems: 8 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 6 + maxItems: 6 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-pciec-piodma.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-pciec-piodma.yaml new file mode 100644 index 0000000000000..7172978842d46 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-pciec-piodma.yaml @@ -0,0 +1,53 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-pciec-piodma.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 pcie tunnel programmed i/o dma engine + +maintainers: + - Ryan Murray + +description: | + PCIe tunnel programmed I/O DMA engine on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-pciec-piodma + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-pciec-piodma + - const: apple,pciec-piodma + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 4 + maxItems: 4 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 1 + maxItems: 1 + + iommus: + description: DMA translation streams used by this controller. + minItems: 1 + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-pmp-coproc.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-pmp-coproc.yaml new file mode 100644 index 0000000000000..d569b203e9428 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-pmp-coproc.yaml @@ -0,0 +1,53 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-pmp-coproc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 power management processor + +maintainers: + - Ryan Murray + +description: | + Power management processor on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-pmp-coproc + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-pmp-coproc + - const: apple,pmp-coproc + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 4 + maxItems: 4 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 4 + maxItems: 4 + + iommus: + description: DMA translation streams used by this controller. + minItems: 1 + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-processor-trace.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-processor-trace.yaml new file mode 100644 index 0000000000000..900b313c02400 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-processor-trace.yaml @@ -0,0 +1,43 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-processor-trace.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 cpu processor trace windows + +maintainers: + - Ryan Murray + +description: | + CPU processor trace windows on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-processor-trace + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-processor-trace + - const: apple,processor-trace + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 33 + maxItems: 33 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-prores-complex.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-prores-complex.yaml new file mode 100644 index 0000000000000..a57fda69fcaf5 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-prores-complex.yaml @@ -0,0 +1,53 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-prores-complex.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 prores codec complex + +maintainers: + - Ryan Murray + +description: | + ProRes codec complex on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-prores-complex + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-prores-complex + - const: apple,prores-complex + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 5 + maxItems: 5 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 2 + maxItems: 2 + + iommus: + description: DMA translation streams used by this controller. + minItems: 1 + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-ptd.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-ptd.yaml new file mode 100644 index 0000000000000..6b2e6e58c3461 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-ptd.yaml @@ -0,0 +1,48 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-ptd.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 always-on performance trace distributor + +maintainers: + - Ryan Murray + +description: | + Always-on performance trace distributor on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-ptd + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-ptd + - const: apple,ptd + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 4 + maxItems: 4 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 32 + maxItems: 32 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-rsm.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-rsm.yaml new file mode 100644 index 0000000000000..b6f979d2a8f83 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-rsm.yaml @@ -0,0 +1,53 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-rsm.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 runtime state manager + +maintainers: + - Ryan Murray + +description: | + Runtime state manager on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-rsm + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-rsm + - const: apple,rsm + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 2 + maxItems: 2 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 1 + maxItems: 1 + + iommus: + description: DMA translation streams used by this controller. + minItems: 1 + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-scaler.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-scaler.yaml new file mode 100644 index 0000000000000..6048043913b8c --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-scaler.yaml @@ -0,0 +1,53 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-scaler.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 image scaling accelerator + +maintainers: + - Ryan Murray + +description: | + Image scaling accelerator on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-scaler + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-scaler + - const: apple,scaler + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 10 + maxItems: 10 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 20 + maxItems: 20 + + iommus: + description: DMA translation streams used by this controller. + minItems: 4 + maxItems: 4 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-secure-mailbox.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-secure-mailbox.yaml new file mode 100644 index 0000000000000..706620ef854a0 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-secure-mailbox.yaml @@ -0,0 +1,53 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-secure-mailbox.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 secure processor mailbox proxy + +maintainers: + - Ryan Murray + +description: | + Secure processor mailbox proxy on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-secure-mailbox + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-secure-mailbox + - const: apple,secure-mailbox + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 1 + maxItems: 1 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 2 + maxItems: 2 + + iommus: + description: DMA translation streams used by this controller. + minItems: 1 + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-secure-repair.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-secure-repair.yaml new file mode 100644 index 0000000000000..cb3658982a7a2 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-secure-repair.yaml @@ -0,0 +1,48 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-secure-repair.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 secure repair mailbox + +maintainers: + - Ryan Murray + +description: | + Secure repair mailbox on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-secure-repair + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-secure-repair + - const: apple,secure-repair + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 1 + maxItems: 1 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 7 + maxItems: 7 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-sep-coproc.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-sep-coproc.yaml new file mode 100644 index 0000000000000..2187a077b129e --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-sep-coproc.yaml @@ -0,0 +1,53 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-sep-coproc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 secure enclave processor + +maintainers: + - Ryan Murray + +description: | + Secure enclave processor on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-sep-coproc + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-sep-coproc + - const: apple,sep-coproc + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 2 + maxItems: 2 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 4 + maxItems: 4 + + iommus: + description: DMA translation streams used by this controller. + minItems: 1 + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-sio-coproc.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-sio-coproc.yaml new file mode 100644 index 0000000000000..2c6f47cfeaae4 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-sio-coproc.yaml @@ -0,0 +1,53 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-sio-coproc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 system i/o coprocessor + +maintainers: + - Ryan Murray + +description: | + System I/O coprocessor on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-sio-coproc + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-sio-coproc + - const: apple,sio-coproc + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 2 + maxItems: 2 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 4 + maxItems: 4 + + iommus: + description: DMA translation streams used by this controller. + minItems: 1 + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-spi-controller.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-spi-controller.yaml new file mode 100644 index 0000000000000..08adf05175bd4 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-spi-controller.yaml @@ -0,0 +1,48 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-spi-controller.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 spi controller + +maintainers: + - Ryan Murray + +description: | + SPI controller on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-spi-controller + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-spi-controller + - const: apple,spi-controller + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 1 + maxItems: 1 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 1 + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-spmi-complex.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-spmi-complex.yaml new file mode 100644 index 0000000000000..a63fe61567daa --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-spmi-complex.yaml @@ -0,0 +1,43 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-spmi-complex.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 spmi controller register complex + +maintainers: + - Ryan Murray + +description: | + SPMI controller register complex on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-spmi-complex + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-spmi-complex + - const: apple,spmi-complex + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 3 + maxItems: 3 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-usb-drd-complex.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-usb-drd-complex.yaml new file mode 100644 index 0000000000000..e9713e237f6e3 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-usb-drd-complex.yaml @@ -0,0 +1,53 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-usb-drd-complex.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 usb dual-role controller complex + +maintainers: + - Ryan Murray + +description: | + USB dual-role controller complex on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-usb-drd-complex + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-usb-drd-complex + - const: apple,usb-drd-complex + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 10 + maxItems: 10 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 4 + maxItems: 4 + + iommus: + description: DMA translation streams used by this controller. + minItems: 1 + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-usb4-coproc.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-usb4-coproc.yaml new file mode 100644 index 0000000000000..bb2bae1fae9b8 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-usb4-coproc.yaml @@ -0,0 +1,48 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-usb4-coproc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 usb4 management coprocessor + +maintainers: + - Ryan Murray + +description: | + USB4 management coprocessor on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-usb4-coproc + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-usb4-coproc + - const: apple,usb4-coproc + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 2 + maxItems: 2 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 4 + maxItems: 4 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-usb4-router.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-usb4-router.yaml new file mode 100644 index 0000000000000..a1bc7c3d06c97 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-usb4-router.yaml @@ -0,0 +1,53 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-usb4-router.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 usb4 router + +maintainers: + - Ryan Murray + +description: | + USB4 router on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-usb4-router + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-usb4-router + - const: apple,usb4-router + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 6 + maxItems: 6 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 25 + maxItems: 25 + + iommus: + description: DMA translation streams used by this controller. + minItems: 24 + maxItems: 24 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-video-decoder-complex.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-video-decoder-complex.yaml new file mode 100644 index 0000000000000..290a6ca3456c2 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-video-decoder-complex.yaml @@ -0,0 +1,53 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-video-decoder-complex.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 video decoding accelerator complex + +maintainers: + - Ryan Murray + +description: | + Video decoding accelerator complex on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-video-decoder-complex + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-video-decoder-complex + - const: apple,video-decoder-complex + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 2 + maxItems: 2 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 2 + maxItems: 2 + + iommus: + description: DMA translation streams used by this controller. + minItems: 3 + maxItems: 3 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-video-encoder-complex.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-video-encoder-complex.yaml new file mode 100644 index 0000000000000..32249428f3c0d --- /dev/null +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-video-encoder-complex.yaml @@ -0,0 +1,53 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/apple/apple,t6050-video-encoder-complex.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple T6050 video encoding accelerator complex + +maintainers: + - Ryan Murray + +description: | + Video encoding accelerator complex on T6050. This describes the complete register complex, + including auxiliary control and status apertures shared with firmware. + It does not imply compatibility with an earlier generation's driver. + The node remains disabled until ownership of the register windows and + the firmware handoff have been established. Calibration, firmware and + programming sequences are supplied separately by the boot environment. + +select: + properties: + compatible: + contains: + const: apple,t6050-video-encoder-complex + required: + - compatible + +properties: + compatible: + items: + - const: apple,t6050-video-encoder-complex + - const: apple,video-encoder-complex + + reg: + description: Controller register apertures, in hardware interface order. + minItems: 5 + maxItems: 5 + + interrupts: + description: Interrupt lines wired to the system interrupt controller. + minItems: 5 + maxItems: 5 + + iommus: + description: DMA translation streams used by this controller. + minItems: 1 + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false diff --git a/arch/arm64/boot/dts/apple/Makefile b/arch/arm64/boot/dts/apple/Makefile index e9144783ca301..ca58cd71aa3cc 100644 --- a/arch/arm64/boot/dts/apple/Makefile +++ b/arch/arm64/boot/dts/apple/Makefile @@ -121,9 +121,14 @@ dtb-$(CONFIG_ARCH_APPLE) += t8152-j873g.dtb # Explicit cold-ANE lead test; never select as the production board DTB. + dtb-$(CONFIG_ARCH_APPLE) += t6050-j714c.dtb +dtb-$(CONFIG_ARCH_APPLE) += t6050-j714s.dtb dtb-$(CONFIG_ARCH_APPLE) += t6050-j716c.dtb +dtb-$(CONFIG_ARCH_APPLE) += t6050-j716s.dtb +dtb-$(CONFIG_ARCH_APPLE) += t6050-j775c.dtb dtb-$(CONFIG_ARCH_APPLE) += t6050-j775d.dtb +dtb-$(CONFIG_ARCH_APPLE) += t6050-j873s.dtb dtb-$(CONFIG_ARCH_APPLE) += t6050-k114c.dtb dtb-$(CONFIG_ARCH_APPLE) += t6050-k114s.dtb dtb-$(CONFIG_ARCH_APPLE) += t6050-k116c.dtb diff --git a/arch/arm64/boot/dts/apple/t6050-j714c-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j714c-peripherals.dtsi new file mode 100644 index 0000000000000..3d46dffaf3078 --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-j714c-peripherals.dtsi @@ -0,0 +1,387 @@ +#include "t6050-peripherals.dtsi" + +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* Register and interrupt resources; ownership-sensitive blocks stay disabled. */ + +&die0 { + hw_nub_spmi1: spmi-complex@28a054000 { + compatible = "apple,t6050-spmi-complex", "apple,spmi-complex"; + reg = <0x2 0x8a054000 0x0 0x4000>, + <0x2 0x8a044000 0x0 0x4000>, + <0x2 0x8a040000 0x0 0x4000>; + status = "disabled"; + }; + + hw_nub_spmi4: spmi-complex@28a114000 { + compatible = "apple,t6050-spmi-complex", "apple,spmi-complex"; + reg = <0x2 0x8a114000 0x0 0x4000>, + <0x2 0x8a104000 0x0 0x4000>, + <0x2 0x8a100000 0x0 0x4000>; + status = "disabled"; + }; + + hw_i2c5: i2c-controller@505024000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x5024000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_i2c7: i2c-controller@50502c000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x502c000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_i2c3: i2c-controller@50501c000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x501c000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_i2c4: i2c-controller@505020000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x5020000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_spi2: spi-controller@505108000 { + compatible = "apple,t6050-spi-controller", "apple,spi-controller"; + reg = <0x5 0x5108000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_spi4: spi-controller@505110000 { + compatible = "apple,t6050-spi-controller", "apple,spi-controller"; + reg = <0x5 0x5110000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_nub_spmi_a1: spmi-complex@28a1a8000 { + compatible = "apple,t6050-spmi-complex", "apple,spmi-complex"; + reg = <0x2 0x8a1a8000 0x0 0x4000>, + <0x2 0x8a1a4000 0x0 0x4000>, + <0x2 0x8a1a0000 0x0 0x4000>; + status = "disabled"; + }; + + hw_dart_isp0: dart-complex@5828c0000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x5 0x828c0000 0x0 0xc000>, + <0x5 0x828e0000 0x0 0xc000>, + <0x5 0x82900000 0x0 0xc000>, + <0x5 0x828f4000 0x0 0x4000>, + <0x5 0x82914000 0x0 0x4000>, + <0x5 0x828d0000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_apcie1: dart-complex@411000000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x11000000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_apcie1_piodma: pcie-piodma@411030000 { + compatible = "apple,t6050-pcie-piodma", "apple,pcie-piodma"; + reg = <0x4 0x11030000 0x0 0x4000>, + <0x4 0x11034000 0x0 0x4000>, + <0x4 0x11038000 0x0 0x4000>; + interrupts = ; + iommus = <&hw_dart_apcie1 17>; + status = "disabled"; + }; + + hw_dockchannel_mtp: dockchannel-complex@294b00000 { + compatible = "apple,t6050-dockchannel-complex", "apple,dockchannel-complex"; + reg = <0x2 0x94b00000 0x0 0x1000>, + <0x2 0x94b14000 0x0 0x1000>, + <0x2 0x94b30000 0x0 0x1000>, + <0x2 0x94b34000 0x0 0x1000>, + <0x2 0x94b28000 0x0 0x1000>, + <0x2 0x94b2c000 0x0 0x1000>; + interrupts = ; + status = "disabled"; + }; + + hw_secure_repair: secure-repair@2881e4000 { + compatible = "apple,t6050-secure-repair", "apple,secure-repair"; + reg = <0x2 0x881e4000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + ; + status = "disabled"; + }; + + hw_acio0: usb4-router@2a1f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x2 0xa1f00000 0x0 0x100000>, + <0x2 0xa1ac0000 0x0 0x4000>, + <0x2 0xa1ac4000 0x0 0x4000>, + <0x2 0xa1ac8000 0x0 0x4000>, + <0x2 0xa1e44000 0x0 0x4000>, + <0x2 0xa1c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio0 0>, <&hw_dart_acio0 1>, <&hw_dart_acio0 2>, <&hw_dart_acio0 3>, <&hw_dart_acio0 4>, <&hw_dart_acio0 5>, <&hw_dart_acio0 6>, <&hw_dart_acio0 7>, <&hw_dart_acio0 8>, <&hw_dart_acio0 9>, <&hw_dart_acio0 10>, <&hw_dart_acio0 11>, <&hw_dart_acio0 16>, <&hw_dart_acio0 17>, <&hw_dart_acio0 18>, <&hw_dart_acio0 19>, <&hw_dart_acio0 20>, <&hw_dart_acio0 21>, <&hw_dart_acio0 22>, <&hw_dart_acio0 23>, <&hw_dart_acio0 24>, <&hw_dart_acio0 25>, <&hw_dart_acio0 26>, <&hw_dart_acio0 27>; + status = "disabled"; + }; + + hw_acio1: usb4-router@2a9f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x2 0xa9f00000 0x0 0x100000>, + <0x2 0xa9ac0000 0x0 0x4000>, + <0x2 0xa9ac4000 0x0 0x4000>, + <0x2 0xa9ac8000 0x0 0x4000>, + <0x2 0xa9e44000 0x0 0x4000>, + <0x2 0xa9c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio1 0>, <&hw_dart_acio1 1>, <&hw_dart_acio1 2>, <&hw_dart_acio1 3>, <&hw_dart_acio1 4>, <&hw_dart_acio1 5>, <&hw_dart_acio1 6>, <&hw_dart_acio1 7>, <&hw_dart_acio1 8>, <&hw_dart_acio1 9>, <&hw_dart_acio1 10>, <&hw_dart_acio1 11>, <&hw_dart_acio1 16>, <&hw_dart_acio1 17>, <&hw_dart_acio1 18>, <&hw_dart_acio1 19>, <&hw_dart_acio1 20>, <&hw_dart_acio1 21>, <&hw_dart_acio1 22>, <&hw_dart_acio1 23>, <&hw_dart_acio1 24>, <&hw_dart_acio1 25>, <&hw_dart_acio1 26>, <&hw_dart_acio1 27>; + status = "disabled"; + }; + + hw_acio2: usb4-router@381f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x3 0x81f00000 0x0 0x100000>, + <0x3 0x81ac0000 0x0 0x4000>, + <0x3 0x81ac4000 0x0 0x4000>, + <0x3 0x81ac8000 0x0 0x4000>, + <0x3 0x81e44000 0x0 0x4000>, + <0x3 0x81c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio2 0>, <&hw_dart_acio2 1>, <&hw_dart_acio2 2>, <&hw_dart_acio2 3>, <&hw_dart_acio2 4>, <&hw_dart_acio2 5>, <&hw_dart_acio2 6>, <&hw_dart_acio2 7>, <&hw_dart_acio2 8>, <&hw_dart_acio2 9>, <&hw_dart_acio2 10>, <&hw_dart_acio2 11>, <&hw_dart_acio2 16>, <&hw_dart_acio2 17>, <&hw_dart_acio2 18>, <&hw_dart_acio2 19>, <&hw_dart_acio2 20>, <&hw_dart_acio2 21>, <&hw_dart_acio2 22>, <&hw_dart_acio2 23>, <&hw_dart_acio2 24>, <&hw_dart_acio2 25>, <&hw_dart_acio2 26>, <&hw_dart_acio2 27>; + status = "disabled"; + }; + + hw_atc3_dpxbar: atc-dpxbar@38b24c000 { + compatible = "apple,t6050-atc-dpxbar", "apple,atc-dpxbar"; + reg = <0x3 0x8b24c000 0x0 0x4000>; + status = "disabled"; + }; + + hw_disp0: display-engine@488000000 { + compatible = "apple,t6050-display-engine", "apple,display-engine"; + reg = <0x4 0x88000000 0x0 0x4000000>, + <0x4 0x8a240000 0x0 0x10000>, + <0x4 0x8a3ac000 0x0 0x4000>, + <0x4 0x8a800000 0x0 0x800000>, + <0x2 0x86700000 0x0 0x114000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_disp0 0>, <&hw_dart_disp0 16>; + status = "disabled"; + }; + + hw_dart_disp0: dart-complex@48a300000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a300000 0x0 0xc000>, + <0x4 0x8a314000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dcp0_expert: display-expert@48a3ac058 { + compatible = "apple,t6050-display-expert", "apple,display-expert"; + reg = <0x4 0x8a3ac058 0x0 0x4>, + <0x4 0x8a374000 0x0 0x40>, + <0x4 0x8a370000 0x0 0x40>, + <0x4 0x8a388000 0x0 0x40>, + <0x4 0x8a38c000 0x0 0x40>, + <0x4 0x8a394000 0x0 0x40>, + <0x4 0x8a398000 0x0 0x40>, + <0x4 0x8a39c000 0x0 0x40>, + <0x4 0x8a3a0000 0x0 0x40>, + <0x4 0x88208000 0x0 0x40>, + <0x4 0x8820c000 0x0 0x40>, + <0x4 0x88210000 0x0 0x40>, + <0x4 0x88214000 0x0 0x40>; + interrupts = ; + status = "disabled"; + }; + + hw_dcp: display-coproc@48ae00000 { + compatible = "apple,t6050-display-coproc", "apple,display-coproc"; + reg = <0x4 0x8ae00000 0x0 0x88000>, + <0x4 0x8a850000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + ; + iommus = <&hw_dart_dcp 23>, <&hw_dart_dcp 24>; + status = "disabled"; + }; + + hw_dart_dcp: dart-complex@48a340000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a340000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_disp0_isoc: dart-complex@48a180000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a180000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_disp0: admac-complex@48a140000 { + compatible = "apple,t6050-admac-complex", "apple,admac-complex"; + reg = <0x4 0x8a140000 0x0 0x24000>, + <0x2 0x88328000 0x0 0x8>; + interrupts = ; + iommus = <&hw_dart_disp0_isoc 30>; + status = "disabled"; + }; + + hw_admac_disp0_ced_ssw: admac-control@48a2f4000 { + compatible = "apple,t6050-admac-control", "apple,admac-control"; + reg = <0x4 0x8a2f4000 0x0 0x4000>, + <0x4 0x8a1a0000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_avd0: video-decoder-complex@2308000000 { + compatible = "apple,t6050-video-decoder-complex", "apple,video-decoder-complex"; + reg = <0x23 0x8000000 0x0 0x1404000>, + <0x23 0x88090000 0x0 0x4000>; + interrupts = , + ; + iommus = <&hw_dart_avd0 0>, <&hw_dart_avd0 1>, <&hw_dart_avd0 2>; + status = "disabled"; + }; + + hw_dart_avd0: dart-complex@2309020000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x23 0x9020000 0x0 0x20000>, + <0x2 0x74000000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_leap_s: admac-complex@293200000 { + compatible = "apple,t6050-admac-complex", "apple,admac-complex"; + reg = <0x2 0x93200000 0x0 0x34000>, + <0x2 0x88328000 0x0 0x8>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_hp_mic_ec_proxy: audio-dma-proxy@4d3200000 { + compatible = "apple,t6050-audio-dma-proxy", "apple,audio-dma-proxy"; + reg = <0x4 0xd3200000 0x0 0x34000>; + status = "disabled"; + }; + + hw_admac_sllb_ec_proxy: audio-dma-proxy@4d3200000 { + compatible = "apple,t6050-audio-dma-proxy", "apple,audio-dma-proxy"; + reg = <0x4 0xd3200000 0x0 0x34000>; + status = "disabled"; + }; + + +}; diff --git a/arch/arm64/boot/dts/apple/t6050-j714c.dts b/arch/arm64/boot/dts/apple/t6050-j714c.dts index d3b0a511fe98d..91d8e9204ef0e 100644 --- a/arch/arm64/boot/dts/apple/t6050-j714c.dts +++ b/arch/arm64/boot/dts/apple/t6050-j714c.dts @@ -221,3 +221,5 @@ }; }; }; + +#include "t6050-j714c-peripherals.dtsi" diff --git a/arch/arm64/boot/dts/apple/t6050-j714s-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j714s-peripherals.dtsi new file mode 100644 index 0000000000000..53b17ee980e06 --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-j714s-peripherals.dtsi @@ -0,0 +1,371 @@ +#include "t6050-peripherals.dtsi" + +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* Register and interrupt resources; ownership-sensitive blocks stay disabled. */ + +&die0 { + hw_i2c5: i2c-controller@505024000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x5024000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_i2c7: i2c-controller@50502c000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x502c000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_i2c3: i2c-controller@50501c000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x501c000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_i2c4: i2c-controller@505020000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x5020000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_spi2: spi-controller@505108000 { + compatible = "apple,t6050-spi-controller", "apple,spi-controller"; + reg = <0x5 0x5108000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_spi4: spi-controller@505110000 { + compatible = "apple,t6050-spi-controller", "apple,spi-controller"; + reg = <0x5 0x5110000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_nub_spmi_a1: spmi-complex@28a1a8000 { + compatible = "apple,t6050-spmi-complex", "apple,spmi-complex"; + reg = <0x2 0x8a1a8000 0x0 0x4000>, + <0x2 0x8a1a4000 0x0 0x4000>, + <0x2 0x8a1a0000 0x0 0x4000>; + status = "disabled"; + }; + + hw_dart_isp0: dart-complex@5828c0000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x5 0x828c0000 0x0 0xc000>, + <0x5 0x828e0000 0x0 0xc000>, + <0x5 0x82900000 0x0 0xc000>, + <0x5 0x828f4000 0x0 0x4000>, + <0x5 0x82914000 0x0 0x4000>, + <0x5 0x828d0000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_apcie1: dart-complex@411000000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x11000000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_apcie1_piodma: pcie-piodma@411030000 { + compatible = "apple,t6050-pcie-piodma", "apple,pcie-piodma"; + reg = <0x4 0x11030000 0x0 0x4000>, + <0x4 0x11034000 0x0 0x4000>, + <0x4 0x11038000 0x0 0x4000>; + interrupts = ; + iommus = <&hw_dart_apcie1 17>; + status = "disabled"; + }; + + hw_dockchannel_mtp: dockchannel-complex@294b00000 { + compatible = "apple,t6050-dockchannel-complex", "apple,dockchannel-complex"; + reg = <0x2 0x94b00000 0x0 0x1000>, + <0x2 0x94b14000 0x0 0x1000>, + <0x2 0x94b30000 0x0 0x1000>, + <0x2 0x94b34000 0x0 0x1000>, + <0x2 0x94b28000 0x0 0x1000>, + <0x2 0x94b2c000 0x0 0x1000>; + interrupts = ; + status = "disabled"; + }; + + hw_secure_repair: secure-repair@2881e4000 { + compatible = "apple,t6050-secure-repair", "apple,secure-repair"; + reg = <0x2 0x881e4000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + ; + status = "disabled"; + }; + + hw_acio0: usb4-router@2a1f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x2 0xa1f00000 0x0 0x100000>, + <0x2 0xa1ac0000 0x0 0x4000>, + <0x2 0xa1ac4000 0x0 0x4000>, + <0x2 0xa1ac8000 0x0 0x4000>, + <0x2 0xa1e44000 0x0 0x4000>, + <0x2 0xa1c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio0 0>, <&hw_dart_acio0 1>, <&hw_dart_acio0 2>, <&hw_dart_acio0 3>, <&hw_dart_acio0 4>, <&hw_dart_acio0 5>, <&hw_dart_acio0 6>, <&hw_dart_acio0 7>, <&hw_dart_acio0 8>, <&hw_dart_acio0 9>, <&hw_dart_acio0 10>, <&hw_dart_acio0 11>, <&hw_dart_acio0 16>, <&hw_dart_acio0 17>, <&hw_dart_acio0 18>, <&hw_dart_acio0 19>, <&hw_dart_acio0 20>, <&hw_dart_acio0 21>, <&hw_dart_acio0 22>, <&hw_dart_acio0 23>, <&hw_dart_acio0 24>, <&hw_dart_acio0 25>, <&hw_dart_acio0 26>, <&hw_dart_acio0 27>; + status = "disabled"; + }; + + hw_acio1: usb4-router@2a9f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x2 0xa9f00000 0x0 0x100000>, + <0x2 0xa9ac0000 0x0 0x4000>, + <0x2 0xa9ac4000 0x0 0x4000>, + <0x2 0xa9ac8000 0x0 0x4000>, + <0x2 0xa9e44000 0x0 0x4000>, + <0x2 0xa9c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio1 0>, <&hw_dart_acio1 1>, <&hw_dart_acio1 2>, <&hw_dart_acio1 3>, <&hw_dart_acio1 4>, <&hw_dart_acio1 5>, <&hw_dart_acio1 6>, <&hw_dart_acio1 7>, <&hw_dart_acio1 8>, <&hw_dart_acio1 9>, <&hw_dart_acio1 10>, <&hw_dart_acio1 11>, <&hw_dart_acio1 16>, <&hw_dart_acio1 17>, <&hw_dart_acio1 18>, <&hw_dart_acio1 19>, <&hw_dart_acio1 20>, <&hw_dart_acio1 21>, <&hw_dart_acio1 22>, <&hw_dart_acio1 23>, <&hw_dart_acio1 24>, <&hw_dart_acio1 25>, <&hw_dart_acio1 26>, <&hw_dart_acio1 27>; + status = "disabled"; + }; + + hw_acio2: usb4-router@381f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x3 0x81f00000 0x0 0x100000>, + <0x3 0x81ac0000 0x0 0x4000>, + <0x3 0x81ac4000 0x0 0x4000>, + <0x3 0x81ac8000 0x0 0x4000>, + <0x3 0x81e44000 0x0 0x4000>, + <0x3 0x81c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio2 0>, <&hw_dart_acio2 1>, <&hw_dart_acio2 2>, <&hw_dart_acio2 3>, <&hw_dart_acio2 4>, <&hw_dart_acio2 5>, <&hw_dart_acio2 6>, <&hw_dart_acio2 7>, <&hw_dart_acio2 8>, <&hw_dart_acio2 9>, <&hw_dart_acio2 10>, <&hw_dart_acio2 11>, <&hw_dart_acio2 16>, <&hw_dart_acio2 17>, <&hw_dart_acio2 18>, <&hw_dart_acio2 19>, <&hw_dart_acio2 20>, <&hw_dart_acio2 21>, <&hw_dart_acio2 22>, <&hw_dart_acio2 23>, <&hw_dart_acio2 24>, <&hw_dart_acio2 25>, <&hw_dart_acio2 26>, <&hw_dart_acio2 27>; + status = "disabled"; + }; + + hw_atc3_dpxbar: atc-dpxbar@38b24c000 { + compatible = "apple,t6050-atc-dpxbar", "apple,atc-dpxbar"; + reg = <0x3 0x8b24c000 0x0 0x4000>; + status = "disabled"; + }; + + hw_disp0: display-engine@488000000 { + compatible = "apple,t6050-display-engine", "apple,display-engine"; + reg = <0x4 0x88000000 0x0 0x4000000>, + <0x4 0x8a240000 0x0 0x10000>, + <0x4 0x8a3ac000 0x0 0x4000>, + <0x4 0x8a800000 0x0 0x800000>, + <0x2 0x86700000 0x0 0x114000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_disp0 0>, <&hw_dart_disp0 16>; + status = "disabled"; + }; + + hw_dart_disp0: dart-complex@48a300000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a300000 0x0 0xc000>, + <0x4 0x8a314000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dcp0_expert: display-expert@48a3ac058 { + compatible = "apple,t6050-display-expert", "apple,display-expert"; + reg = <0x4 0x8a3ac058 0x0 0x4>, + <0x4 0x8a374000 0x0 0x40>, + <0x4 0x8a370000 0x0 0x40>, + <0x4 0x8a388000 0x0 0x40>, + <0x4 0x8a38c000 0x0 0x40>, + <0x4 0x8a394000 0x0 0x40>, + <0x4 0x8a398000 0x0 0x40>, + <0x4 0x8a39c000 0x0 0x40>, + <0x4 0x8a3a0000 0x0 0x40>, + <0x4 0x88208000 0x0 0x40>, + <0x4 0x8820c000 0x0 0x40>, + <0x4 0x88210000 0x0 0x40>, + <0x4 0x88214000 0x0 0x40>; + interrupts = ; + status = "disabled"; + }; + + hw_dcp: display-coproc@48ae00000 { + compatible = "apple,t6050-display-coproc", "apple,display-coproc"; + reg = <0x4 0x8ae00000 0x0 0x88000>, + <0x4 0x8a850000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + ; + iommus = <&hw_dart_dcp 23>, <&hw_dart_dcp 24>; + status = "disabled"; + }; + + hw_dart_dcp: dart-complex@48a340000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a340000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_disp0_isoc: dart-complex@48a180000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a180000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_disp0: admac-complex@48a140000 { + compatible = "apple,t6050-admac-complex", "apple,admac-complex"; + reg = <0x4 0x8a140000 0x0 0x24000>, + <0x2 0x88328000 0x0 0x8>; + interrupts = ; + iommus = <&hw_dart_disp0_isoc 30>; + status = "disabled"; + }; + + hw_admac_disp0_ced_ssw: admac-control@48a2f4000 { + compatible = "apple,t6050-admac-control", "apple,admac-control"; + reg = <0x4 0x8a2f4000 0x0 0x4000>, + <0x4 0x8a1a0000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_avd0: video-decoder-complex@2308000000 { + compatible = "apple,t6050-video-decoder-complex", "apple,video-decoder-complex"; + reg = <0x23 0x8000000 0x0 0x1404000>, + <0x23 0x88090000 0x0 0x4000>; + interrupts = , + ; + iommus = <&hw_dart_avd0 0>, <&hw_dart_avd0 1>, <&hw_dart_avd0 2>; + status = "disabled"; + }; + + hw_dart_avd0: dart-complex@2309020000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x23 0x9020000 0x0 0x20000>, + <0x2 0x74000000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_leap_s: admac-complex@293200000 { + compatible = "apple,t6050-admac-complex", "apple,admac-complex"; + reg = <0x2 0x93200000 0x0 0x34000>, + <0x2 0x88328000 0x0 0x8>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_hp_mic_ec_proxy: audio-dma-proxy@4d3200000 { + compatible = "apple,t6050-audio-dma-proxy", "apple,audio-dma-proxy"; + reg = <0x4 0xd3200000 0x0 0x34000>; + status = "disabled"; + }; + + hw_admac_sllb_ec_proxy: audio-dma-proxy@4d3200000 { + compatible = "apple,t6050-audio-dma-proxy", "apple,audio-dma-proxy"; + reg = <0x4 0xd3200000 0x0 0x34000>; + status = "disabled"; + }; + + +}; diff --git a/arch/arm64/boot/dts/apple/t6050-j714s.dts b/arch/arm64/boot/dts/apple/t6050-j714s.dts new file mode 100644 index 0000000000000..7d7eba26b855b --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-j714s.dts @@ -0,0 +1,45 @@ +// SPDX-License-Identifier: GPL-2.0 OR MIT +/dts-v1/; + +#include "t6050-max.dtsi" + +/ { + model = "Apple MacBook Pro (14-inch, M5 Pro)"; + compatible = "apple,j714s", "apple,t6050", "apple,arm-platform"; + chassis-type = "laptop"; + + aliases { + serial0 = &dockchannel; + }; + + chosen { + #address-cells = <2>; + #size-cells = <2>; + ranges; + stdout-path = "serial0:1500000n8"; + + framebuffer0: framebuffer@0 { + compatible = "apple,simple-framebuffer", "simple-framebuffer"; + reg = <0 0 0 0>; + status = "disabled"; + }; + }; +}; + +&dockchannel { + status = "okay"; +}; + +&cpufreq_mc0 { + status = "disabled"; +}; + +&cpufreq_mc1 { + status = "disabled"; +}; + +&cpufreq_pc { + status = "disabled"; +}; + +#include "t6050-j714s-peripherals.dtsi" diff --git a/arch/arm64/boot/dts/apple/t6050-j716c-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j716c-peripherals.dtsi new file mode 100644 index 0000000000000..3d46dffaf3078 --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-j716c-peripherals.dtsi @@ -0,0 +1,387 @@ +#include "t6050-peripherals.dtsi" + +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* Register and interrupt resources; ownership-sensitive blocks stay disabled. */ + +&die0 { + hw_nub_spmi1: spmi-complex@28a054000 { + compatible = "apple,t6050-spmi-complex", "apple,spmi-complex"; + reg = <0x2 0x8a054000 0x0 0x4000>, + <0x2 0x8a044000 0x0 0x4000>, + <0x2 0x8a040000 0x0 0x4000>; + status = "disabled"; + }; + + hw_nub_spmi4: spmi-complex@28a114000 { + compatible = "apple,t6050-spmi-complex", "apple,spmi-complex"; + reg = <0x2 0x8a114000 0x0 0x4000>, + <0x2 0x8a104000 0x0 0x4000>, + <0x2 0x8a100000 0x0 0x4000>; + status = "disabled"; + }; + + hw_i2c5: i2c-controller@505024000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x5024000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_i2c7: i2c-controller@50502c000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x502c000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_i2c3: i2c-controller@50501c000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x501c000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_i2c4: i2c-controller@505020000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x5020000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_spi2: spi-controller@505108000 { + compatible = "apple,t6050-spi-controller", "apple,spi-controller"; + reg = <0x5 0x5108000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_spi4: spi-controller@505110000 { + compatible = "apple,t6050-spi-controller", "apple,spi-controller"; + reg = <0x5 0x5110000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_nub_spmi_a1: spmi-complex@28a1a8000 { + compatible = "apple,t6050-spmi-complex", "apple,spmi-complex"; + reg = <0x2 0x8a1a8000 0x0 0x4000>, + <0x2 0x8a1a4000 0x0 0x4000>, + <0x2 0x8a1a0000 0x0 0x4000>; + status = "disabled"; + }; + + hw_dart_isp0: dart-complex@5828c0000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x5 0x828c0000 0x0 0xc000>, + <0x5 0x828e0000 0x0 0xc000>, + <0x5 0x82900000 0x0 0xc000>, + <0x5 0x828f4000 0x0 0x4000>, + <0x5 0x82914000 0x0 0x4000>, + <0x5 0x828d0000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_apcie1: dart-complex@411000000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x11000000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_apcie1_piodma: pcie-piodma@411030000 { + compatible = "apple,t6050-pcie-piodma", "apple,pcie-piodma"; + reg = <0x4 0x11030000 0x0 0x4000>, + <0x4 0x11034000 0x0 0x4000>, + <0x4 0x11038000 0x0 0x4000>; + interrupts = ; + iommus = <&hw_dart_apcie1 17>; + status = "disabled"; + }; + + hw_dockchannel_mtp: dockchannel-complex@294b00000 { + compatible = "apple,t6050-dockchannel-complex", "apple,dockchannel-complex"; + reg = <0x2 0x94b00000 0x0 0x1000>, + <0x2 0x94b14000 0x0 0x1000>, + <0x2 0x94b30000 0x0 0x1000>, + <0x2 0x94b34000 0x0 0x1000>, + <0x2 0x94b28000 0x0 0x1000>, + <0x2 0x94b2c000 0x0 0x1000>; + interrupts = ; + status = "disabled"; + }; + + hw_secure_repair: secure-repair@2881e4000 { + compatible = "apple,t6050-secure-repair", "apple,secure-repair"; + reg = <0x2 0x881e4000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + ; + status = "disabled"; + }; + + hw_acio0: usb4-router@2a1f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x2 0xa1f00000 0x0 0x100000>, + <0x2 0xa1ac0000 0x0 0x4000>, + <0x2 0xa1ac4000 0x0 0x4000>, + <0x2 0xa1ac8000 0x0 0x4000>, + <0x2 0xa1e44000 0x0 0x4000>, + <0x2 0xa1c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio0 0>, <&hw_dart_acio0 1>, <&hw_dart_acio0 2>, <&hw_dart_acio0 3>, <&hw_dart_acio0 4>, <&hw_dart_acio0 5>, <&hw_dart_acio0 6>, <&hw_dart_acio0 7>, <&hw_dart_acio0 8>, <&hw_dart_acio0 9>, <&hw_dart_acio0 10>, <&hw_dart_acio0 11>, <&hw_dart_acio0 16>, <&hw_dart_acio0 17>, <&hw_dart_acio0 18>, <&hw_dart_acio0 19>, <&hw_dart_acio0 20>, <&hw_dart_acio0 21>, <&hw_dart_acio0 22>, <&hw_dart_acio0 23>, <&hw_dart_acio0 24>, <&hw_dart_acio0 25>, <&hw_dart_acio0 26>, <&hw_dart_acio0 27>; + status = "disabled"; + }; + + hw_acio1: usb4-router@2a9f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x2 0xa9f00000 0x0 0x100000>, + <0x2 0xa9ac0000 0x0 0x4000>, + <0x2 0xa9ac4000 0x0 0x4000>, + <0x2 0xa9ac8000 0x0 0x4000>, + <0x2 0xa9e44000 0x0 0x4000>, + <0x2 0xa9c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio1 0>, <&hw_dart_acio1 1>, <&hw_dart_acio1 2>, <&hw_dart_acio1 3>, <&hw_dart_acio1 4>, <&hw_dart_acio1 5>, <&hw_dart_acio1 6>, <&hw_dart_acio1 7>, <&hw_dart_acio1 8>, <&hw_dart_acio1 9>, <&hw_dart_acio1 10>, <&hw_dart_acio1 11>, <&hw_dart_acio1 16>, <&hw_dart_acio1 17>, <&hw_dart_acio1 18>, <&hw_dart_acio1 19>, <&hw_dart_acio1 20>, <&hw_dart_acio1 21>, <&hw_dart_acio1 22>, <&hw_dart_acio1 23>, <&hw_dart_acio1 24>, <&hw_dart_acio1 25>, <&hw_dart_acio1 26>, <&hw_dart_acio1 27>; + status = "disabled"; + }; + + hw_acio2: usb4-router@381f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x3 0x81f00000 0x0 0x100000>, + <0x3 0x81ac0000 0x0 0x4000>, + <0x3 0x81ac4000 0x0 0x4000>, + <0x3 0x81ac8000 0x0 0x4000>, + <0x3 0x81e44000 0x0 0x4000>, + <0x3 0x81c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio2 0>, <&hw_dart_acio2 1>, <&hw_dart_acio2 2>, <&hw_dart_acio2 3>, <&hw_dart_acio2 4>, <&hw_dart_acio2 5>, <&hw_dart_acio2 6>, <&hw_dart_acio2 7>, <&hw_dart_acio2 8>, <&hw_dart_acio2 9>, <&hw_dart_acio2 10>, <&hw_dart_acio2 11>, <&hw_dart_acio2 16>, <&hw_dart_acio2 17>, <&hw_dart_acio2 18>, <&hw_dart_acio2 19>, <&hw_dart_acio2 20>, <&hw_dart_acio2 21>, <&hw_dart_acio2 22>, <&hw_dart_acio2 23>, <&hw_dart_acio2 24>, <&hw_dart_acio2 25>, <&hw_dart_acio2 26>, <&hw_dart_acio2 27>; + status = "disabled"; + }; + + hw_atc3_dpxbar: atc-dpxbar@38b24c000 { + compatible = "apple,t6050-atc-dpxbar", "apple,atc-dpxbar"; + reg = <0x3 0x8b24c000 0x0 0x4000>; + status = "disabled"; + }; + + hw_disp0: display-engine@488000000 { + compatible = "apple,t6050-display-engine", "apple,display-engine"; + reg = <0x4 0x88000000 0x0 0x4000000>, + <0x4 0x8a240000 0x0 0x10000>, + <0x4 0x8a3ac000 0x0 0x4000>, + <0x4 0x8a800000 0x0 0x800000>, + <0x2 0x86700000 0x0 0x114000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_disp0 0>, <&hw_dart_disp0 16>; + status = "disabled"; + }; + + hw_dart_disp0: dart-complex@48a300000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a300000 0x0 0xc000>, + <0x4 0x8a314000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dcp0_expert: display-expert@48a3ac058 { + compatible = "apple,t6050-display-expert", "apple,display-expert"; + reg = <0x4 0x8a3ac058 0x0 0x4>, + <0x4 0x8a374000 0x0 0x40>, + <0x4 0x8a370000 0x0 0x40>, + <0x4 0x8a388000 0x0 0x40>, + <0x4 0x8a38c000 0x0 0x40>, + <0x4 0x8a394000 0x0 0x40>, + <0x4 0x8a398000 0x0 0x40>, + <0x4 0x8a39c000 0x0 0x40>, + <0x4 0x8a3a0000 0x0 0x40>, + <0x4 0x88208000 0x0 0x40>, + <0x4 0x8820c000 0x0 0x40>, + <0x4 0x88210000 0x0 0x40>, + <0x4 0x88214000 0x0 0x40>; + interrupts = ; + status = "disabled"; + }; + + hw_dcp: display-coproc@48ae00000 { + compatible = "apple,t6050-display-coproc", "apple,display-coproc"; + reg = <0x4 0x8ae00000 0x0 0x88000>, + <0x4 0x8a850000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + ; + iommus = <&hw_dart_dcp 23>, <&hw_dart_dcp 24>; + status = "disabled"; + }; + + hw_dart_dcp: dart-complex@48a340000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a340000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_disp0_isoc: dart-complex@48a180000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a180000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_disp0: admac-complex@48a140000 { + compatible = "apple,t6050-admac-complex", "apple,admac-complex"; + reg = <0x4 0x8a140000 0x0 0x24000>, + <0x2 0x88328000 0x0 0x8>; + interrupts = ; + iommus = <&hw_dart_disp0_isoc 30>; + status = "disabled"; + }; + + hw_admac_disp0_ced_ssw: admac-control@48a2f4000 { + compatible = "apple,t6050-admac-control", "apple,admac-control"; + reg = <0x4 0x8a2f4000 0x0 0x4000>, + <0x4 0x8a1a0000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_avd0: video-decoder-complex@2308000000 { + compatible = "apple,t6050-video-decoder-complex", "apple,video-decoder-complex"; + reg = <0x23 0x8000000 0x0 0x1404000>, + <0x23 0x88090000 0x0 0x4000>; + interrupts = , + ; + iommus = <&hw_dart_avd0 0>, <&hw_dart_avd0 1>, <&hw_dart_avd0 2>; + status = "disabled"; + }; + + hw_dart_avd0: dart-complex@2309020000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x23 0x9020000 0x0 0x20000>, + <0x2 0x74000000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_leap_s: admac-complex@293200000 { + compatible = "apple,t6050-admac-complex", "apple,admac-complex"; + reg = <0x2 0x93200000 0x0 0x34000>, + <0x2 0x88328000 0x0 0x8>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_hp_mic_ec_proxy: audio-dma-proxy@4d3200000 { + compatible = "apple,t6050-audio-dma-proxy", "apple,audio-dma-proxy"; + reg = <0x4 0xd3200000 0x0 0x34000>; + status = "disabled"; + }; + + hw_admac_sllb_ec_proxy: audio-dma-proxy@4d3200000 { + compatible = "apple,t6050-audio-dma-proxy", "apple,audio-dma-proxy"; + reg = <0x4 0xd3200000 0x0 0x34000>; + status = "disabled"; + }; + + +}; diff --git a/arch/arm64/boot/dts/apple/t6050-j716c.dts b/arch/arm64/boot/dts/apple/t6050-j716c.dts index da061edcb7b2f..1b956b6fffc20 100644 --- a/arch/arm64/boot/dts/apple/t6050-j716c.dts +++ b/arch/arm64/boot/dts/apple/t6050-j716c.dts @@ -221,3 +221,5 @@ &smc_pcio { apple,output-commands = /bits/ 64 <0x001a000000000000 0x000f000000800000 0x011c000000010000>; }; + +#include "t6050-j716c-peripherals.dtsi" diff --git a/arch/arm64/boot/dts/apple/t6050-j716s-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j716s-peripherals.dtsi new file mode 100644 index 0000000000000..53b17ee980e06 --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-j716s-peripherals.dtsi @@ -0,0 +1,371 @@ +#include "t6050-peripherals.dtsi" + +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* Register and interrupt resources; ownership-sensitive blocks stay disabled. */ + +&die0 { + hw_i2c5: i2c-controller@505024000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x5024000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_i2c7: i2c-controller@50502c000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x502c000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_i2c3: i2c-controller@50501c000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x501c000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_i2c4: i2c-controller@505020000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x5020000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_spi2: spi-controller@505108000 { + compatible = "apple,t6050-spi-controller", "apple,spi-controller"; + reg = <0x5 0x5108000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_spi4: spi-controller@505110000 { + compatible = "apple,t6050-spi-controller", "apple,spi-controller"; + reg = <0x5 0x5110000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_nub_spmi_a1: spmi-complex@28a1a8000 { + compatible = "apple,t6050-spmi-complex", "apple,spmi-complex"; + reg = <0x2 0x8a1a8000 0x0 0x4000>, + <0x2 0x8a1a4000 0x0 0x4000>, + <0x2 0x8a1a0000 0x0 0x4000>; + status = "disabled"; + }; + + hw_dart_isp0: dart-complex@5828c0000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x5 0x828c0000 0x0 0xc000>, + <0x5 0x828e0000 0x0 0xc000>, + <0x5 0x82900000 0x0 0xc000>, + <0x5 0x828f4000 0x0 0x4000>, + <0x5 0x82914000 0x0 0x4000>, + <0x5 0x828d0000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_apcie1: dart-complex@411000000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x11000000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_apcie1_piodma: pcie-piodma@411030000 { + compatible = "apple,t6050-pcie-piodma", "apple,pcie-piodma"; + reg = <0x4 0x11030000 0x0 0x4000>, + <0x4 0x11034000 0x0 0x4000>, + <0x4 0x11038000 0x0 0x4000>; + interrupts = ; + iommus = <&hw_dart_apcie1 17>; + status = "disabled"; + }; + + hw_dockchannel_mtp: dockchannel-complex@294b00000 { + compatible = "apple,t6050-dockchannel-complex", "apple,dockchannel-complex"; + reg = <0x2 0x94b00000 0x0 0x1000>, + <0x2 0x94b14000 0x0 0x1000>, + <0x2 0x94b30000 0x0 0x1000>, + <0x2 0x94b34000 0x0 0x1000>, + <0x2 0x94b28000 0x0 0x1000>, + <0x2 0x94b2c000 0x0 0x1000>; + interrupts = ; + status = "disabled"; + }; + + hw_secure_repair: secure-repair@2881e4000 { + compatible = "apple,t6050-secure-repair", "apple,secure-repair"; + reg = <0x2 0x881e4000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + ; + status = "disabled"; + }; + + hw_acio0: usb4-router@2a1f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x2 0xa1f00000 0x0 0x100000>, + <0x2 0xa1ac0000 0x0 0x4000>, + <0x2 0xa1ac4000 0x0 0x4000>, + <0x2 0xa1ac8000 0x0 0x4000>, + <0x2 0xa1e44000 0x0 0x4000>, + <0x2 0xa1c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio0 0>, <&hw_dart_acio0 1>, <&hw_dart_acio0 2>, <&hw_dart_acio0 3>, <&hw_dart_acio0 4>, <&hw_dart_acio0 5>, <&hw_dart_acio0 6>, <&hw_dart_acio0 7>, <&hw_dart_acio0 8>, <&hw_dart_acio0 9>, <&hw_dart_acio0 10>, <&hw_dart_acio0 11>, <&hw_dart_acio0 16>, <&hw_dart_acio0 17>, <&hw_dart_acio0 18>, <&hw_dart_acio0 19>, <&hw_dart_acio0 20>, <&hw_dart_acio0 21>, <&hw_dart_acio0 22>, <&hw_dart_acio0 23>, <&hw_dart_acio0 24>, <&hw_dart_acio0 25>, <&hw_dart_acio0 26>, <&hw_dart_acio0 27>; + status = "disabled"; + }; + + hw_acio1: usb4-router@2a9f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x2 0xa9f00000 0x0 0x100000>, + <0x2 0xa9ac0000 0x0 0x4000>, + <0x2 0xa9ac4000 0x0 0x4000>, + <0x2 0xa9ac8000 0x0 0x4000>, + <0x2 0xa9e44000 0x0 0x4000>, + <0x2 0xa9c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio1 0>, <&hw_dart_acio1 1>, <&hw_dart_acio1 2>, <&hw_dart_acio1 3>, <&hw_dart_acio1 4>, <&hw_dart_acio1 5>, <&hw_dart_acio1 6>, <&hw_dart_acio1 7>, <&hw_dart_acio1 8>, <&hw_dart_acio1 9>, <&hw_dart_acio1 10>, <&hw_dart_acio1 11>, <&hw_dart_acio1 16>, <&hw_dart_acio1 17>, <&hw_dart_acio1 18>, <&hw_dart_acio1 19>, <&hw_dart_acio1 20>, <&hw_dart_acio1 21>, <&hw_dart_acio1 22>, <&hw_dart_acio1 23>, <&hw_dart_acio1 24>, <&hw_dart_acio1 25>, <&hw_dart_acio1 26>, <&hw_dart_acio1 27>; + status = "disabled"; + }; + + hw_acio2: usb4-router@381f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x3 0x81f00000 0x0 0x100000>, + <0x3 0x81ac0000 0x0 0x4000>, + <0x3 0x81ac4000 0x0 0x4000>, + <0x3 0x81ac8000 0x0 0x4000>, + <0x3 0x81e44000 0x0 0x4000>, + <0x3 0x81c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio2 0>, <&hw_dart_acio2 1>, <&hw_dart_acio2 2>, <&hw_dart_acio2 3>, <&hw_dart_acio2 4>, <&hw_dart_acio2 5>, <&hw_dart_acio2 6>, <&hw_dart_acio2 7>, <&hw_dart_acio2 8>, <&hw_dart_acio2 9>, <&hw_dart_acio2 10>, <&hw_dart_acio2 11>, <&hw_dart_acio2 16>, <&hw_dart_acio2 17>, <&hw_dart_acio2 18>, <&hw_dart_acio2 19>, <&hw_dart_acio2 20>, <&hw_dart_acio2 21>, <&hw_dart_acio2 22>, <&hw_dart_acio2 23>, <&hw_dart_acio2 24>, <&hw_dart_acio2 25>, <&hw_dart_acio2 26>, <&hw_dart_acio2 27>; + status = "disabled"; + }; + + hw_atc3_dpxbar: atc-dpxbar@38b24c000 { + compatible = "apple,t6050-atc-dpxbar", "apple,atc-dpxbar"; + reg = <0x3 0x8b24c000 0x0 0x4000>; + status = "disabled"; + }; + + hw_disp0: display-engine@488000000 { + compatible = "apple,t6050-display-engine", "apple,display-engine"; + reg = <0x4 0x88000000 0x0 0x4000000>, + <0x4 0x8a240000 0x0 0x10000>, + <0x4 0x8a3ac000 0x0 0x4000>, + <0x4 0x8a800000 0x0 0x800000>, + <0x2 0x86700000 0x0 0x114000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_disp0 0>, <&hw_dart_disp0 16>; + status = "disabled"; + }; + + hw_dart_disp0: dart-complex@48a300000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a300000 0x0 0xc000>, + <0x4 0x8a314000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dcp0_expert: display-expert@48a3ac058 { + compatible = "apple,t6050-display-expert", "apple,display-expert"; + reg = <0x4 0x8a3ac058 0x0 0x4>, + <0x4 0x8a374000 0x0 0x40>, + <0x4 0x8a370000 0x0 0x40>, + <0x4 0x8a388000 0x0 0x40>, + <0x4 0x8a38c000 0x0 0x40>, + <0x4 0x8a394000 0x0 0x40>, + <0x4 0x8a398000 0x0 0x40>, + <0x4 0x8a39c000 0x0 0x40>, + <0x4 0x8a3a0000 0x0 0x40>, + <0x4 0x88208000 0x0 0x40>, + <0x4 0x8820c000 0x0 0x40>, + <0x4 0x88210000 0x0 0x40>, + <0x4 0x88214000 0x0 0x40>; + interrupts = ; + status = "disabled"; + }; + + hw_dcp: display-coproc@48ae00000 { + compatible = "apple,t6050-display-coproc", "apple,display-coproc"; + reg = <0x4 0x8ae00000 0x0 0x88000>, + <0x4 0x8a850000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + ; + iommus = <&hw_dart_dcp 23>, <&hw_dart_dcp 24>; + status = "disabled"; + }; + + hw_dart_dcp: dart-complex@48a340000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a340000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_disp0_isoc: dart-complex@48a180000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a180000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_disp0: admac-complex@48a140000 { + compatible = "apple,t6050-admac-complex", "apple,admac-complex"; + reg = <0x4 0x8a140000 0x0 0x24000>, + <0x2 0x88328000 0x0 0x8>; + interrupts = ; + iommus = <&hw_dart_disp0_isoc 30>; + status = "disabled"; + }; + + hw_admac_disp0_ced_ssw: admac-control@48a2f4000 { + compatible = "apple,t6050-admac-control", "apple,admac-control"; + reg = <0x4 0x8a2f4000 0x0 0x4000>, + <0x4 0x8a1a0000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_avd0: video-decoder-complex@2308000000 { + compatible = "apple,t6050-video-decoder-complex", "apple,video-decoder-complex"; + reg = <0x23 0x8000000 0x0 0x1404000>, + <0x23 0x88090000 0x0 0x4000>; + interrupts = , + ; + iommus = <&hw_dart_avd0 0>, <&hw_dart_avd0 1>, <&hw_dart_avd0 2>; + status = "disabled"; + }; + + hw_dart_avd0: dart-complex@2309020000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x23 0x9020000 0x0 0x20000>, + <0x2 0x74000000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_leap_s: admac-complex@293200000 { + compatible = "apple,t6050-admac-complex", "apple,admac-complex"; + reg = <0x2 0x93200000 0x0 0x34000>, + <0x2 0x88328000 0x0 0x8>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_hp_mic_ec_proxy: audio-dma-proxy@4d3200000 { + compatible = "apple,t6050-audio-dma-proxy", "apple,audio-dma-proxy"; + reg = <0x4 0xd3200000 0x0 0x34000>; + status = "disabled"; + }; + + hw_admac_sllb_ec_proxy: audio-dma-proxy@4d3200000 { + compatible = "apple,t6050-audio-dma-proxy", "apple,audio-dma-proxy"; + reg = <0x4 0xd3200000 0x0 0x34000>; + status = "disabled"; + }; + + +}; diff --git a/arch/arm64/boot/dts/apple/t6050-j716s.dts b/arch/arm64/boot/dts/apple/t6050-j716s.dts new file mode 100644 index 0000000000000..3597b37b0635a --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-j716s.dts @@ -0,0 +1,45 @@ +// SPDX-License-Identifier: GPL-2.0 OR MIT +/dts-v1/; + +#include "t6050-max.dtsi" + +/ { + model = "Apple MacBook Pro (16-inch, M5 Pro)"; + compatible = "apple,j716s", "apple,t6050", "apple,arm-platform"; + chassis-type = "laptop"; + + aliases { + serial0 = &dockchannel; + }; + + chosen { + #address-cells = <2>; + #size-cells = <2>; + ranges; + stdout-path = "serial0:1500000n8"; + + framebuffer0: framebuffer@0 { + compatible = "apple,simple-framebuffer", "simple-framebuffer"; + reg = <0 0 0 0>; + status = "disabled"; + }; + }; +}; + +&dockchannel { + status = "okay"; +}; + +&cpufreq_mc0 { + status = "disabled"; +}; + +&cpufreq_mc1 { + status = "disabled"; +}; + +&cpufreq_pc { + status = "disabled"; +}; + +#include "t6050-j716s-peripherals.dtsi" diff --git a/arch/arm64/boot/dts/apple/t6050-j775c-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j775c-peripherals.dtsi new file mode 100644 index 0000000000000..8a024c1d34e26 --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-j775c-peripherals.dtsi @@ -0,0 +1,431 @@ +#include "t6050-peripherals.dtsi" + +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* Register and interrupt resources; ownership-sensitive blocks stay disabled. */ + +&die0 { + hw_nub_spmi1: spmi-complex@28a054000 { + compatible = "apple,t6050-spmi-complex", "apple,spmi-complex"; + reg = <0x2 0x8a054000 0x0 0x4000>, + <0x2 0x8a044000 0x0 0x4000>, + <0x2 0x8a040000 0x0 0x4000>; + status = "disabled"; + }; + + hw_nub_spmi4: spmi-complex@28a114000 { + compatible = "apple,t6050-spmi-complex", "apple,spmi-complex"; + reg = <0x2 0x8a114000 0x0 0x4000>, + <0x2 0x8a104000 0x0 0x4000>, + <0x2 0x8a100000 0x0 0x4000>; + status = "disabled"; + }; + + hw_i2c4: i2c-controller@505020000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x5020000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_i2c5: i2c-controller@505024000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x5024000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_apcie1: dart-complex@411000000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x11000000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_apcie1_piodma: pcie-piodma@411030000 { + compatible = "apple,t6050-pcie-piodma", "apple,pcie-piodma"; + reg = <0x4 0x11030000 0x0 0x4000>, + <0x4 0x11034000 0x0 0x4000>, + <0x4 0x11038000 0x0 0x4000>; + interrupts = ; + iommus = <&hw_dart_apcie1 17>; + status = "disabled"; + }; + + hw_apcie2_piodma: pcie-piodma@412030000 { + compatible = "apple,t6050-pcie-piodma", "apple,pcie-piodma"; + reg = <0x4 0x12030000 0x0 0x4000>, + <0x4 0x12034000 0x0 0x4000>, + <0x4 0x12038000 0x0 0x4000>; + interrupts = ; + iommus = <&dart_apcie2 17>; + status = "disabled"; + }; + + hw_apcie3_piodma: pcie-piodma@413030000 { + compatible = "apple,t6050-pcie-piodma", "apple,pcie-piodma"; + reg = <0x4 0x13030000 0x0 0x4000>, + <0x4 0x13034000 0x0 0x4000>, + <0x4 0x13038000 0x0 0x4000>; + interrupts = ; + iommus = <&dart_apcie3 17>; + status = "disabled"; + }; + + hw_spi3: spi-controller@50510c000 { + compatible = "apple,t6050-spi-controller", "apple,spi-controller"; + reg = <0x5 0x510c000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_acio0: usb4-router@2a1f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x2 0xa1f00000 0x0 0x100000>, + <0x2 0xa1ac0000 0x0 0x4000>, + <0x2 0xa1ac4000 0x0 0x4000>, + <0x2 0xa1ac8000 0x0 0x4000>, + <0x2 0xa1e44000 0x0 0x4000>, + <0x2 0xa1c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio0 0>, <&hw_dart_acio0 1>, <&hw_dart_acio0 2>, <&hw_dart_acio0 3>, <&hw_dart_acio0 4>, <&hw_dart_acio0 5>, <&hw_dart_acio0 6>, <&hw_dart_acio0 7>, <&hw_dart_acio0 8>, <&hw_dart_acio0 9>, <&hw_dart_acio0 10>, <&hw_dart_acio0 11>, <&hw_dart_acio0 16>, <&hw_dart_acio0 17>, <&hw_dart_acio0 18>, <&hw_dart_acio0 19>, <&hw_dart_acio0 20>, <&hw_dart_acio0 21>, <&hw_dart_acio0 22>, <&hw_dart_acio0 23>, <&hw_dart_acio0 24>, <&hw_dart_acio0 25>, <&hw_dart_acio0 26>, <&hw_dart_acio0 27>; + status = "disabled"; + }; + + hw_acio1: usb4-router@2a9f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x2 0xa9f00000 0x0 0x100000>, + <0x2 0xa9ac0000 0x0 0x4000>, + <0x2 0xa9ac4000 0x0 0x4000>, + <0x2 0xa9ac8000 0x0 0x4000>, + <0x2 0xa9e44000 0x0 0x4000>, + <0x2 0xa9c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio1 0>, <&hw_dart_acio1 1>, <&hw_dart_acio1 2>, <&hw_dart_acio1 3>, <&hw_dart_acio1 4>, <&hw_dart_acio1 5>, <&hw_dart_acio1 6>, <&hw_dart_acio1 7>, <&hw_dart_acio1 8>, <&hw_dart_acio1 9>, <&hw_dart_acio1 10>, <&hw_dart_acio1 11>, <&hw_dart_acio1 16>, <&hw_dart_acio1 17>, <&hw_dart_acio1 18>, <&hw_dart_acio1 19>, <&hw_dart_acio1 20>, <&hw_dart_acio1 21>, <&hw_dart_acio1 22>, <&hw_dart_acio1 23>, <&hw_dart_acio1 24>, <&hw_dart_acio1 25>, <&hw_dart_acio1 26>, <&hw_dart_acio1 27>; + status = "disabled"; + }; + + hw_acio2: usb4-router@381f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x3 0x81f00000 0x0 0x100000>, + <0x3 0x81ac0000 0x0 0x4000>, + <0x3 0x81ac4000 0x0 0x4000>, + <0x3 0x81ac8000 0x0 0x4000>, + <0x3 0x81e44000 0x0 0x4000>, + <0x3 0x81c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio2 0>, <&hw_dart_acio2 1>, <&hw_dart_acio2 2>, <&hw_dart_acio2 3>, <&hw_dart_acio2 4>, <&hw_dart_acio2 5>, <&hw_dart_acio2 6>, <&hw_dart_acio2 7>, <&hw_dart_acio2 8>, <&hw_dart_acio2 9>, <&hw_dart_acio2 10>, <&hw_dart_acio2 11>, <&hw_dart_acio2 16>, <&hw_dart_acio2 17>, <&hw_dart_acio2 18>, <&hw_dart_acio2 19>, <&hw_dart_acio2 20>, <&hw_dart_acio2 21>, <&hw_dart_acio2 22>, <&hw_dart_acio2 23>, <&hw_dart_acio2 24>, <&hw_dart_acio2 25>, <&hw_dart_acio2 26>, <&hw_dart_acio2 27>; + status = "disabled"; + }; + + hw_apciec3: pciec-complex@1c80000000 { + compatible = "apple,t6050-pciec-complex", "apple,pciec-complex"; + reg = <0x1c 0x80000000 0x0 0x10000000>, + <0x3 0x8c034000 0x0 0x4000>, + <0x3 0x8c020000 0x0 0x8000>, + <0x3 0x8c038000 0x0 0x4000>, + <0x3 0x8c060000 0x0 0x4000>, + <0x3 0x88020000 0x0 0x4000>, + <0x3 0x8c02c000 0x0 0x4000>, + <0x3 0x8c028000 0x0 0x4000>; + interrupts = , + , + , + , + , + ; + status = "disabled"; + }; + + hw_dart_apciec3: dart-complex@38c000000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x3 0x8c000000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_apciec3_piodma: pciec-piodma@38c068000 { + compatible = "apple,t6050-pciec-piodma", "apple,pciec-piodma"; + reg = <0x3 0x8c068000 0x0 0x4000>, + <0x3 0x8c06c000 0x0 0x4000>, + <0x3 0x8c070000 0x0 0x4000>, + <0x3 0x8c03c000 0x0 0x4000>; + interrupts = ; + iommus = <&hw_dart_apciec3 254>; + status = "disabled"; + }; + + hw_acio3: usb4-router@389f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x3 0x89f00000 0x0 0x100000>, + <0x3 0x89ac0000 0x0 0x4000>, + <0x3 0x89ac4000 0x0 0x4000>, + <0x3 0x89ac8000 0x0 0x4000>, + <0x3 0x89e44000 0x0 0x4000>, + <0x3 0x89c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio3 0>, <&hw_dart_acio3 1>, <&hw_dart_acio3 2>, <&hw_dart_acio3 3>, <&hw_dart_acio3 4>, <&hw_dart_acio3 5>, <&hw_dart_acio3 6>, <&hw_dart_acio3 7>, <&hw_dart_acio3 8>, <&hw_dart_acio3 9>, <&hw_dart_acio3 10>, <&hw_dart_acio3 11>, <&hw_dart_acio3 16>, <&hw_dart_acio3 17>, <&hw_dart_acio3 18>, <&hw_dart_acio3 19>, <&hw_dart_acio3 20>, <&hw_dart_acio3 21>, <&hw_dart_acio3 22>, <&hw_dart_acio3 23>, <&hw_dart_acio3 24>, <&hw_dart_acio3 25>, <&hw_dart_acio3 26>, <&hw_dart_acio3 27>; + status = "disabled"; + }; + + hw_dart_acio3: dart-complex@389a80000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x3 0x89a80000 0x0 0xc000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_atc3_dpxbar: atc-dpxbar@38b24c000 { + compatible = "apple,t6050-atc-dpxbar", "apple,atc-dpxbar"; + reg = <0x3 0x8b24c000 0x0 0x4000>; + status = "disabled"; + }; + + hw_atc3_dpin0: dp-in@389e50000 { + compatible = "apple,t6050-dp-in", "apple,dp-in"; + reg = <0x3 0x89e50000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_atc3_dpin1: dp-in@389e58000 { + compatible = "apple,t6050-dp-in", "apple,dp-in"; + reg = <0x3 0x89e58000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_atc3_dpin2: dp-in@389e68000 { + compatible = "apple,t6050-dp-in", "apple,dp-in"; + reg = <0x3 0x89e68000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_atc3_dpin3: dp-in@389e70000 { + compatible = "apple,t6050-dp-in", "apple,dp-in"; + reg = <0x3 0x89e70000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_disp0: display-engine@488000000 { + compatible = "apple,t6050-display-engine", "apple,display-engine"; + reg = <0x4 0x88000000 0x0 0x4000000>, + <0x4 0x8a240000 0x0 0x10000>, + <0x4 0x8a3ac000 0x0 0x4000>, + <0x4 0x8a800000 0x0 0x800000>, + <0x2 0x86700000 0x0 0x114000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_disp0 0>, <&hw_dart_disp0 16>; + status = "disabled"; + }; + + hw_dart_disp0: dart-complex@48a300000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a300000 0x0 0xc000>, + <0x4 0x8a314000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dcp0_expert: display-expert@48a3ac058 { + compatible = "apple,t6050-display-expert", "apple,display-expert"; + reg = <0x4 0x8a3ac058 0x0 0x4>, + <0x4 0x8a374000 0x0 0x40>, + <0x4 0x8a370000 0x0 0x40>, + <0x4 0x8a388000 0x0 0x40>, + <0x4 0x8a38c000 0x0 0x40>, + <0x4 0x8a394000 0x0 0x40>, + <0x4 0x8a398000 0x0 0x40>, + <0x4 0x8a39c000 0x0 0x40>, + <0x4 0x8a3a0000 0x0 0x40>, + <0x4 0x88208000 0x0 0x40>, + <0x4 0x8820c000 0x0 0x40>, + <0x4 0x88210000 0x0 0x40>, + <0x4 0x88214000 0x0 0x40>; + interrupts = ; + status = "disabled"; + }; + + hw_dcp: display-coproc@48ae00000 { + compatible = "apple,t6050-display-coproc", "apple,display-coproc"; + reg = <0x4 0x8ae00000 0x0 0x88000>, + <0x4 0x8a850000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + ; + iommus = <&hw_dart_dcp 23>, <&hw_dart_dcp 24>; + status = "disabled"; + }; + + hw_dart_dcp: dart-complex@48a340000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a340000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_disp0_isoc: dart-complex@48a180000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a180000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_disp0: admac-complex@48a140000 { + compatible = "apple,t6050-admac-complex", "apple,admac-complex"; + reg = <0x4 0x8a140000 0x0 0x24000>, + <0x2 0x88328000 0x0 0x8>; + interrupts = ; + iommus = <&hw_dart_disp0_isoc 30>; + status = "disabled"; + }; + + hw_admac_disp0_ced_ssw: admac-control@48a2f4000 { + compatible = "apple,t6050-admac-control", "apple,admac-control"; + reg = <0x4 0x8a2f4000 0x0 0x4000>, + <0x4 0x8a1a0000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_avd0: video-decoder-complex@2308000000 { + compatible = "apple,t6050-video-decoder-complex", "apple,video-decoder-complex"; + reg = <0x23 0x8000000 0x0 0x1404000>, + <0x23 0x88090000 0x0 0x4000>; + interrupts = , + ; + iommus = <&hw_dart_avd0 0>, <&hw_dart_avd0 1>, <&hw_dart_avd0 2>; + status = "disabled"; + }; + + hw_dart_avd0: dart-complex@2309020000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x23 0x9020000 0x0 0x20000>, + <0x2 0x74000000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + +}; diff --git a/arch/arm64/boot/dts/apple/t6050-j775c.dts b/arch/arm64/boot/dts/apple/t6050-j775c.dts new file mode 100644 index 0000000000000..46bbf125e8145 --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-j775c.dts @@ -0,0 +1,45 @@ +// SPDX-License-Identifier: GPL-2.0 OR MIT +/dts-v1/; + +#include "t6050-max.dtsi" + +/ { + model = "Apple Mac Studio (J775c)"; + compatible = "apple,j775c", "apple,t6050", "apple,arm-platform"; + chassis-type = "desktop"; + + aliases { + serial0 = &dockchannel; + }; + + chosen { + #address-cells = <2>; + #size-cells = <2>; + ranges; + stdout-path = "serial0:1500000n8"; + + framebuffer0: framebuffer@0 { + compatible = "apple,simple-framebuffer", "simple-framebuffer"; + reg = <0 0 0 0>; + status = "disabled"; + }; + }; +}; + +&dockchannel { + status = "okay"; +}; + +&cpufreq_mc0 { + status = "disabled"; +}; + +&cpufreq_mc1 { + status = "disabled"; +}; + +&cpufreq_pc { + status = "disabled"; +}; + +#include "t6050-j775c-peripherals.dtsi" diff --git a/arch/arm64/boot/dts/apple/t6050-j775d-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j775d-peripherals.dtsi new file mode 100644 index 0000000000000..cf0aedeba2a3a --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-j775d-peripherals.dtsi @@ -0,0 +1,321 @@ +#include "t6050-peripherals.dtsi" + +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* Register and interrupt resources; ownership-sensitive blocks stay disabled. */ + +&die0 { + hw_i2c7: i2c-controller@50502c000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x502c000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_nub_spmi1: spmi-complex@28a054000 { + compatible = "apple,t6050-spmi-complex", "apple,spmi-complex"; + reg = <0x2 0x8a054000 0x0 0x4000>, + <0x2 0x8a044000 0x0 0x4000>, + <0x2 0x8a040000 0x0 0x4000>; + status = "disabled"; + }; + + hw_nub_spmi4: spmi-complex@28a114000 { + compatible = "apple,t6050-spmi-complex", "apple,spmi-complex"; + reg = <0x2 0x8a114000 0x0 0x4000>, + <0x2 0x8a104000 0x0 0x4000>, + <0x2 0x8a100000 0x0 0x4000>; + status = "disabled"; + }; + + hw_i2c4: i2c-controller@505020000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x5020000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_i2c5: i2c-controller@505024000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x5024000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_apcie1: dart-complex@411000000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x11000000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_apcie1_piodma: pcie-piodma@411030000 { + compatible = "apple,t6050-pcie-piodma", "apple,pcie-piodma"; + reg = <0x4 0x11030000 0x0 0x4000>, + <0x4 0x11034000 0x0 0x4000>, + <0x4 0x11038000 0x0 0x4000>; + interrupts = ; + iommus = <&hw_dart_apcie1 17>; + status = "disabled"; + }; + + hw_apcie2_piodma: pcie-piodma@412030000 { + compatible = "apple,t6050-pcie-piodma", "apple,pcie-piodma"; + reg = <0x4 0x12030000 0x0 0x4000>, + <0x4 0x12034000 0x0 0x4000>, + <0x4 0x12038000 0x0 0x4000>; + interrupts = ; + iommus = <&dart_apcie2 17>; + status = "disabled"; + }; + + hw_apcie3_piodma: pcie-piodma@413030000 { + compatible = "apple,t6050-pcie-piodma", "apple,pcie-piodma"; + reg = <0x4 0x13030000 0x0 0x4000>, + <0x4 0x13034000 0x0 0x4000>, + <0x4 0x13038000 0x0 0x4000>; + interrupts = ; + iommus = <&dart_apcie3 17>; + status = "disabled"; + }; + + hw_acio0: usb4-router@2a1f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x2 0xa1f00000 0x0 0x100000>, + <0x2 0xa1ac0000 0x0 0x4000>, + <0x2 0xa1ac4000 0x0 0x4000>, + <0x2 0xa1ac8000 0x0 0x4000>, + <0x2 0xa1e44000 0x0 0x4000>, + <0x2 0xa1c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio0 0>, <&hw_dart_acio0 1>, <&hw_dart_acio0 2>, <&hw_dart_acio0 3>, <&hw_dart_acio0 4>, <&hw_dart_acio0 5>, <&hw_dart_acio0 6>, <&hw_dart_acio0 7>, <&hw_dart_acio0 8>, <&hw_dart_acio0 9>, <&hw_dart_acio0 10>, <&hw_dart_acio0 11>, <&hw_dart_acio0 16>, <&hw_dart_acio0 17>, <&hw_dart_acio0 18>, <&hw_dart_acio0 19>, <&hw_dart_acio0 20>, <&hw_dart_acio0 21>, <&hw_dart_acio0 22>, <&hw_dart_acio0 23>, <&hw_dart_acio0 24>, <&hw_dart_acio0 25>, <&hw_dart_acio0 26>, <&hw_dart_acio0 27>; + status = "disabled"; + }; + + hw_acio1: usb4-router@2a9f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x2 0xa9f00000 0x0 0x100000>, + <0x2 0xa9ac0000 0x0 0x4000>, + <0x2 0xa9ac4000 0x0 0x4000>, + <0x2 0xa9ac8000 0x0 0x4000>, + <0x2 0xa9e44000 0x0 0x4000>, + <0x2 0xa9c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio1 0>, <&hw_dart_acio1 1>, <&hw_dart_acio1 2>, <&hw_dart_acio1 3>, <&hw_dart_acio1 4>, <&hw_dart_acio1 5>, <&hw_dart_acio1 6>, <&hw_dart_acio1 7>, <&hw_dart_acio1 8>, <&hw_dart_acio1 9>, <&hw_dart_acio1 10>, <&hw_dart_acio1 11>, <&hw_dart_acio1 16>, <&hw_dart_acio1 17>, <&hw_dart_acio1 18>, <&hw_dart_acio1 19>, <&hw_dart_acio1 20>, <&hw_dart_acio1 21>, <&hw_dart_acio1 22>, <&hw_dart_acio1 23>, <&hw_dart_acio1 24>, <&hw_dart_acio1 25>, <&hw_dart_acio1 26>, <&hw_dart_acio1 27>; + status = "disabled"; + }; + + hw_acio2: usb4-router@381f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x3 0x81f00000 0x0 0x100000>, + <0x3 0x81ac0000 0x0 0x4000>, + <0x3 0x81ac4000 0x0 0x4000>, + <0x3 0x81ac8000 0x0 0x4000>, + <0x3 0x81e44000 0x0 0x4000>, + <0x3 0x81c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio2 0>, <&hw_dart_acio2 1>, <&hw_dart_acio2 2>, <&hw_dart_acio2 3>, <&hw_dart_acio2 4>, <&hw_dart_acio2 5>, <&hw_dart_acio2 6>, <&hw_dart_acio2 7>, <&hw_dart_acio2 8>, <&hw_dart_acio2 9>, <&hw_dart_acio2 10>, <&hw_dart_acio2 11>, <&hw_dart_acio2 16>, <&hw_dart_acio2 17>, <&hw_dart_acio2 18>, <&hw_dart_acio2 19>, <&hw_dart_acio2 20>, <&hw_dart_acio2 21>, <&hw_dart_acio2 22>, <&hw_dart_acio2 23>, <&hw_dart_acio2 24>, <&hw_dart_acio2 25>, <&hw_dart_acio2 26>, <&hw_dart_acio2 27>; + status = "disabled"; + }; + + hw_apciec3: pciec-complex@1c80000000 { + compatible = "apple,t6050-pciec-complex", "apple,pciec-complex"; + reg = <0x1c 0x80000000 0x0 0x10000000>, + <0x3 0x8c034000 0x0 0x4000>, + <0x3 0x8c020000 0x0 0x8000>, + <0x3 0x8c038000 0x0 0x4000>, + <0x3 0x8c060000 0x0 0x4000>, + <0x3 0x88020000 0x0 0x4000>, + <0x3 0x8c02c000 0x0 0x4000>, + <0x3 0x8c028000 0x0 0x4000>; + interrupts = , + , + , + , + , + ; + status = "disabled"; + }; + + hw_dart_apciec3: dart-complex@38c000000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x3 0x8c000000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_apciec3_piodma: pciec-piodma@38c068000 { + compatible = "apple,t6050-pciec-piodma", "apple,pciec-piodma"; + reg = <0x3 0x8c068000 0x0 0x4000>, + <0x3 0x8c06c000 0x0 0x4000>, + <0x3 0x8c070000 0x0 0x4000>, + <0x3 0x8c03c000 0x0 0x4000>; + interrupts = ; + iommus = <&hw_dart_apciec3 254>; + status = "disabled"; + }; + + hw_acio3: usb4-router@389f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x3 0x89f00000 0x0 0x100000>, + <0x3 0x89ac0000 0x0 0x4000>, + <0x3 0x89ac4000 0x0 0x4000>, + <0x3 0x89ac8000 0x0 0x4000>, + <0x3 0x89e44000 0x0 0x4000>, + <0x3 0x89c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio3 0>, <&hw_dart_acio3 1>, <&hw_dart_acio3 2>, <&hw_dart_acio3 3>, <&hw_dart_acio3 4>, <&hw_dart_acio3 5>, <&hw_dart_acio3 6>, <&hw_dart_acio3 7>, <&hw_dart_acio3 8>, <&hw_dart_acio3 9>, <&hw_dart_acio3 10>, <&hw_dart_acio3 11>, <&hw_dart_acio3 16>, <&hw_dart_acio3 17>, <&hw_dart_acio3 18>, <&hw_dart_acio3 19>, <&hw_dart_acio3 20>, <&hw_dart_acio3 21>, <&hw_dart_acio3 22>, <&hw_dart_acio3 23>, <&hw_dart_acio3 24>, <&hw_dart_acio3 25>, <&hw_dart_acio3 26>, <&hw_dart_acio3 27>; + status = "disabled"; + }; + + hw_dart_acio3: dart-complex@389a80000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x3 0x89a80000 0x0 0xc000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_atc3_dpxbar: atc-dpxbar@38b24c000 { + compatible = "apple,t6050-atc-dpxbar", "apple,atc-dpxbar"; + reg = <0x3 0x8b24c000 0x0 0x4000>; + status = "disabled"; + }; + + hw_atc3_dpin0: dp-in@389e50000 { + compatible = "apple,t6050-dp-in", "apple,dp-in"; + reg = <0x3 0x89e50000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_atc3_dpin1: dp-in@389e58000 { + compatible = "apple,t6050-dp-in", "apple,dp-in"; + reg = <0x3 0x89e58000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_atc3_dpin2: dp-in@389e68000 { + compatible = "apple,t6050-dp-in", "apple,dp-in"; + reg = <0x3 0x89e68000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_atc3_dpin3: dp-in@389e70000 { + compatible = "apple,t6050-dp-in", "apple,dp-in"; + reg = <0x3 0x89e70000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_avd0: video-decoder-complex@2308000000 { + compatible = "apple,t6050-video-decoder-complex", "apple,video-decoder-complex"; + reg = <0x23 0x8000000 0x0 0x1404000>, + <0x23 0x88090000 0x0 0x4000>; + interrupts = , + ; + iommus = <&avd_dart 0>, <&avd_dart 1>, <&avd_dart 2>; + status = "disabled"; + }; + + +}; diff --git a/arch/arm64/boot/dts/apple/t6050-j775d.dts b/arch/arm64/boot/dts/apple/t6050-j775d.dts index 5c0b238dc096f..5f0878afcc350 100644 --- a/arch/arm64/boot/dts/apple/t6050-j775d.dts +++ b/arch/arm64/boot/dts/apple/t6050-j775d.dts @@ -699,3 +699,5 @@ hdmi-pwren-gpios = <&smc_pcio 0 GPIO_ACTIVE_HIGH>; dp2hdmi-pwren-gpios = <&smc_pcio 1 GPIO_ACTIVE_HIGH>; }; + +#include "t6050-j775d-peripherals.dtsi" diff --git a/arch/arm64/boot/dts/apple/t6050-j873s-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j873s-peripherals.dtsi new file mode 100644 index 0000000000000..f77c856c5f9b0 --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-j873s-peripherals.dtsi @@ -0,0 +1,260 @@ +#include "t6050-peripherals.dtsi" + +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* Register and interrupt resources; ownership-sensitive blocks stay disabled. */ + +&die0 { + + hw_i2c5: i2c-controller@505024000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x5024000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_apcie2_piodma: pcie-piodma@412030000 { + compatible = "apple,t6050-pcie-piodma", "apple,pcie-piodma"; + reg = <0x4 0x12030000 0x0 0x4000>, + <0x4 0x12034000 0x0 0x4000>, + <0x4 0x12038000 0x0 0x4000>; + interrupts = ; + iommus = <&dart_apcie2 17>; + status = "disabled"; + }; + + hw_acio0: usb4-router@2a1f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x2 0xa1f00000 0x0 0x100000>, + <0x2 0xa1ac0000 0x0 0x4000>, + <0x2 0xa1ac4000 0x0 0x4000>, + <0x2 0xa1ac8000 0x0 0x4000>, + <0x2 0xa1e44000 0x0 0x4000>, + <0x2 0xa1c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + status = "disabled"; + }; + + hw_acio1: usb4-router@2a9f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x2 0xa9f00000 0x0 0x100000>, + <0x2 0xa9ac0000 0x0 0x4000>, + <0x2 0xa9ac4000 0x0 0x4000>, + <0x2 0xa9ac8000 0x0 0x4000>, + <0x2 0xa9e44000 0x0 0x4000>, + <0x2 0xa9c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + status = "disabled"; + }; + + hw_acio2: usb4-router@381f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x3 0x81f00000 0x0 0x100000>, + <0x3 0x81ac0000 0x0 0x4000>, + <0x3 0x81ac4000 0x0 0x4000>, + <0x3 0x81ac8000 0x0 0x4000>, + <0x3 0x81e44000 0x0 0x4000>, + <0x3 0x81c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + status = "disabled"; + }; + + hw_spi3: spi-controller@50510c000 { + compatible = "apple,t6050-spi-controller", "apple,spi-controller"; + reg = <0x5 0x510c000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_disp0: display-engine@488000000 { + compatible = "apple,t6050-display-engine", "apple,display-engine"; + reg = <0x4 0x88000000 0x0 0x4000000>, + <0x4 0x8a240000 0x0 0x10000>, + <0x4 0x8a3ac000 0x0 0x4000>, + <0x4 0x8a800000 0x0 0x800000>, + <0x2 0x86700000 0x0 0x114000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_disp0 0>, <&hw_dart_disp0 16>; + status = "disabled"; + }; + + hw_dart_disp0: dart-complex@48a300000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a300000 0x0 0xc000>, + <0x4 0x8a314000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dcp0_expert: display-expert@48a3ac058 { + compatible = "apple,t6050-display-expert", "apple,display-expert"; + reg = <0x4 0x8a3ac058 0x0 0x4>, + <0x4 0x8a374000 0x0 0x40>, + <0x4 0x8a370000 0x0 0x40>, + <0x4 0x8a388000 0x0 0x40>, + <0x4 0x8a38c000 0x0 0x40>, + <0x4 0x8a394000 0x0 0x40>, + <0x4 0x8a398000 0x0 0x40>, + <0x4 0x8a39c000 0x0 0x40>, + <0x4 0x8a3a0000 0x0 0x40>, + <0x4 0x88208000 0x0 0x40>, + <0x4 0x8820c000 0x0 0x40>, + <0x4 0x88210000 0x0 0x40>, + <0x4 0x88214000 0x0 0x40>; + interrupts = ; + status = "disabled"; + }; + + hw_dcp: display-coproc@48ae00000 { + compatible = "apple,t6050-display-coproc", "apple,display-coproc"; + reg = <0x4 0x8ae00000 0x0 0x88000>, + <0x4 0x8a850000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + ; + iommus = <&hw_dart_dcp 23>, <&hw_dart_dcp 24>; + status = "disabled"; + }; + + hw_dart_dcp: dart-complex@48a340000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a340000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_disp0_isoc: dart-complex@48a180000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a180000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_disp0: admac-complex@48a140000 { + compatible = "apple,t6050-admac-complex", "apple,admac-complex"; + reg = <0x4 0x8a140000 0x0 0x24000>, + <0x2 0x88328000 0x0 0x8>; + interrupts = ; + iommus = <&hw_dart_disp0_isoc 30>; + status = "disabled"; + }; + + hw_admac_disp0_ced_ssw: admac-control@48a2f4000 { + compatible = "apple,t6050-admac-control", "apple,admac-control"; + reg = <0x4 0x8a2f4000 0x0 0x4000>, + <0x4 0x8a1a0000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_avd0: video-decoder-complex@2308000000 { + compatible = "apple,t6050-video-decoder-complex", "apple,video-decoder-complex"; + reg = <0x23 0x8000000 0x0 0x1404000>, + <0x23 0x88090000 0x0 0x4000>; + interrupts = , + ; + status = "disabled"; + }; + + hw_dart_avd0: dart-complex@2309020000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x23 0x9020000 0x0 0x20000>, + <0x2 0x74000000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + +}; diff --git a/arch/arm64/boot/dts/apple/t6050-j873s.dts b/arch/arm64/boot/dts/apple/t6050-j873s.dts new file mode 100644 index 0000000000000..b40a835b69b30 --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-j873s.dts @@ -0,0 +1,45 @@ +// SPDX-License-Identifier: GPL-2.0 OR MIT +/dts-v1/; + +#include "t6050-max.dtsi" + +/ { + model = "Apple Mac mini (J873s)"; + compatible = "apple,j873s", "apple,t6050", "apple,arm-platform"; + chassis-type = "desktop"; + + aliases { + serial0 = &dockchannel; + }; + + chosen { + #address-cells = <2>; + #size-cells = <2>; + ranges; + stdout-path = "serial0:1500000n8"; + + framebuffer0: framebuffer@0 { + compatible = "apple,simple-framebuffer", "simple-framebuffer"; + reg = <0 0 0 0>; + status = "disabled"; + }; + }; +}; + +&dockchannel { + status = "okay"; +}; + +&cpufreq_mc0 { + status = "disabled"; +}; + +&cpufreq_mc1 { + status = "disabled"; +}; + +&cpufreq_pc { + status = "disabled"; +}; + +#include "t6050-j873s-peripherals.dtsi" diff --git a/arch/arm64/boot/dts/apple/t6050-k114c-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-k114c-peripherals.dtsi new file mode 100644 index 0000000000000..ef2e45ae80404 --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-k114c-peripherals.dtsi @@ -0,0 +1,373 @@ +#include "t6050-peripherals.dtsi" + +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* Register and interrupt resources; ownership-sensitive blocks stay disabled. */ + +&die0 { + hw_nub_spmi1: spmi-complex@28a054000 { + compatible = "apple,t6050-spmi-complex", "apple,spmi-complex"; + reg = <0x2 0x8a054000 0x0 0x4000>, + <0x2 0x8a044000 0x0 0x4000>, + <0x2 0x8a040000 0x0 0x4000>; + status = "disabled"; + }; + + hw_nub_spmi4: spmi-complex@28a114000 { + compatible = "apple,t6050-spmi-complex", "apple,spmi-complex"; + reg = <0x2 0x8a114000 0x0 0x4000>, + <0x2 0x8a104000 0x0 0x4000>, + <0x2 0x8a100000 0x0 0x4000>; + status = "disabled"; + }; + + hw_i2c3: i2c-controller@50501c000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x501c000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_i2c4: i2c-controller@505020000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x5020000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_spi2: spi-controller@505108000 { + compatible = "apple,t6050-spi-controller", "apple,spi-controller"; + reg = <0x5 0x5108000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_spi4: spi-controller@505110000 { + compatible = "apple,t6050-spi-controller", "apple,spi-controller"; + reg = <0x5 0x5110000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_nub_spmi_a1: spmi-complex@28a1a8000 { + compatible = "apple,t6050-spmi-complex", "apple,spmi-complex"; + reg = <0x2 0x8a1a8000 0x0 0x4000>, + <0x2 0x8a1a4000 0x0 0x4000>, + <0x2 0x8a1a0000 0x0 0x4000>; + status = "disabled"; + }; + + hw_dart_isp0: dart-complex@5828c0000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x5 0x828c0000 0x0 0xc000>, + <0x5 0x828e0000 0x0 0xc000>, + <0x5 0x82900000 0x0 0xc000>, + <0x5 0x828f4000 0x0 0x4000>, + <0x5 0x82914000 0x0 0x4000>, + <0x5 0x828d0000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_apcie1: dart-complex@411000000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x11000000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_apcie1_piodma: pcie-piodma@411030000 { + compatible = "apple,t6050-pcie-piodma", "apple,pcie-piodma"; + reg = <0x4 0x11030000 0x0 0x4000>, + <0x4 0x11034000 0x0 0x4000>, + <0x4 0x11038000 0x0 0x4000>; + interrupts = ; + iommus = <&hw_dart_apcie1 17>; + status = "disabled"; + }; + + hw_dockchannel_mtp: dockchannel-complex@294b00000 { + compatible = "apple,t6050-dockchannel-complex", "apple,dockchannel-complex"; + reg = <0x2 0x94b00000 0x0 0x1000>, + <0x2 0x94b14000 0x0 0x1000>, + <0x2 0x94b30000 0x0 0x1000>, + <0x2 0x94b34000 0x0 0x1000>, + <0x2 0x94b28000 0x0 0x1000>, + <0x2 0x94b2c000 0x0 0x1000>; + interrupts = ; + status = "disabled"; + }; + + hw_secure_repair: secure-repair@2881e4000 { + compatible = "apple,t6050-secure-repair", "apple,secure-repair"; + reg = <0x2 0x881e4000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + ; + status = "disabled"; + }; + + hw_acio0: usb4-router@2a1f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x2 0xa1f00000 0x0 0x100000>, + <0x2 0xa1ac0000 0x0 0x4000>, + <0x2 0xa1ac4000 0x0 0x4000>, + <0x2 0xa1ac8000 0x0 0x4000>, + <0x2 0xa1e44000 0x0 0x4000>, + <0x2 0xa1c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio0 0>, <&hw_dart_acio0 1>, <&hw_dart_acio0 2>, <&hw_dart_acio0 3>, <&hw_dart_acio0 4>, <&hw_dart_acio0 5>, <&hw_dart_acio0 6>, <&hw_dart_acio0 7>, <&hw_dart_acio0 8>, <&hw_dart_acio0 9>, <&hw_dart_acio0 10>, <&hw_dart_acio0 11>, <&hw_dart_acio0 16>, <&hw_dart_acio0 17>, <&hw_dart_acio0 18>, <&hw_dart_acio0 19>, <&hw_dart_acio0 20>, <&hw_dart_acio0 21>, <&hw_dart_acio0 22>, <&hw_dart_acio0 23>, <&hw_dart_acio0 24>, <&hw_dart_acio0 25>, <&hw_dart_acio0 26>, <&hw_dart_acio0 27>; + status = "disabled"; + }; + + hw_acio1: usb4-router@2a9f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x2 0xa9f00000 0x0 0x100000>, + <0x2 0xa9ac0000 0x0 0x4000>, + <0x2 0xa9ac4000 0x0 0x4000>, + <0x2 0xa9ac8000 0x0 0x4000>, + <0x2 0xa9e44000 0x0 0x4000>, + <0x2 0xa9c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio1 0>, <&hw_dart_acio1 1>, <&hw_dart_acio1 2>, <&hw_dart_acio1 3>, <&hw_dart_acio1 4>, <&hw_dart_acio1 5>, <&hw_dart_acio1 6>, <&hw_dart_acio1 7>, <&hw_dart_acio1 8>, <&hw_dart_acio1 9>, <&hw_dart_acio1 10>, <&hw_dart_acio1 11>, <&hw_dart_acio1 16>, <&hw_dart_acio1 17>, <&hw_dart_acio1 18>, <&hw_dart_acio1 19>, <&hw_dart_acio1 20>, <&hw_dart_acio1 21>, <&hw_dart_acio1 22>, <&hw_dart_acio1 23>, <&hw_dart_acio1 24>, <&hw_dart_acio1 25>, <&hw_dart_acio1 26>, <&hw_dart_acio1 27>; + status = "disabled"; + }; + + hw_acio2: usb4-router@381f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x3 0x81f00000 0x0 0x100000>, + <0x3 0x81ac0000 0x0 0x4000>, + <0x3 0x81ac4000 0x0 0x4000>, + <0x3 0x81ac8000 0x0 0x4000>, + <0x3 0x81e44000 0x0 0x4000>, + <0x3 0x81c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio2 0>, <&hw_dart_acio2 1>, <&hw_dart_acio2 2>, <&hw_dart_acio2 3>, <&hw_dart_acio2 4>, <&hw_dart_acio2 5>, <&hw_dart_acio2 6>, <&hw_dart_acio2 7>, <&hw_dart_acio2 8>, <&hw_dart_acio2 9>, <&hw_dart_acio2 10>, <&hw_dart_acio2 11>, <&hw_dart_acio2 16>, <&hw_dart_acio2 17>, <&hw_dart_acio2 18>, <&hw_dart_acio2 19>, <&hw_dart_acio2 20>, <&hw_dart_acio2 21>, <&hw_dart_acio2 22>, <&hw_dart_acio2 23>, <&hw_dart_acio2 24>, <&hw_dart_acio2 25>, <&hw_dart_acio2 26>, <&hw_dart_acio2 27>; + status = "disabled"; + }; + + hw_atc3_dpxbar: atc-dpxbar@38b24c000 { + compatible = "apple,t6050-atc-dpxbar", "apple,atc-dpxbar"; + reg = <0x3 0x8b24c000 0x0 0x4000>; + status = "disabled"; + }; + + hw_disp0: display-engine@488000000 { + compatible = "apple,t6050-display-engine", "apple,display-engine"; + reg = <0x4 0x88000000 0x0 0x4000000>, + <0x4 0x8a240000 0x0 0x10000>, + <0x4 0x8a3ac000 0x0 0x4000>, + <0x4 0x8a800000 0x0 0x800000>, + <0x2 0x86700000 0x0 0x114000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_disp0 0>, <&hw_dart_disp0 16>; + status = "disabled"; + }; + + hw_dart_disp0: dart-complex@48a300000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a300000 0x0 0xc000>, + <0x4 0x8a314000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dcp0_expert: display-expert@48a3ac058 { + compatible = "apple,t6050-display-expert", "apple,display-expert"; + reg = <0x4 0x8a3ac058 0x0 0x4>, + <0x4 0x8a374000 0x0 0x40>, + <0x4 0x8a370000 0x0 0x40>, + <0x4 0x8a388000 0x0 0x40>, + <0x4 0x8a38c000 0x0 0x40>, + <0x4 0x8a394000 0x0 0x40>, + <0x4 0x8a398000 0x0 0x40>, + <0x4 0x8a39c000 0x0 0x40>, + <0x4 0x8a3a0000 0x0 0x40>, + <0x4 0x88208000 0x0 0x40>, + <0x4 0x8820c000 0x0 0x40>, + <0x4 0x88210000 0x0 0x40>, + <0x4 0x88214000 0x0 0x40>; + interrupts = ; + status = "disabled"; + }; + + hw_dcp: display-coproc@48ae00000 { + compatible = "apple,t6050-display-coproc", "apple,display-coproc"; + reg = <0x4 0x8ae00000 0x0 0x88000>, + <0x4 0x8a850000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + ; + iommus = <&hw_dart_dcp 23>, <&hw_dart_dcp 24>; + status = "disabled"; + }; + + hw_dart_dcp: dart-complex@48a340000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a340000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_disp0_isoc: dart-complex@48a180000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a180000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_disp0: admac-complex@48a140000 { + compatible = "apple,t6050-admac-complex", "apple,admac-complex"; + reg = <0x4 0x8a140000 0x0 0x24000>, + <0x2 0x88328000 0x0 0x8>; + interrupts = ; + iommus = <&hw_dart_disp0_isoc 30>; + status = "disabled"; + }; + + hw_admac_disp0_ced_ssw: admac-control@48a2f4000 { + compatible = "apple,t6050-admac-control", "apple,admac-control"; + reg = <0x4 0x8a2f4000 0x0 0x4000>, + <0x4 0x8a1a0000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_avd0: video-decoder-complex@2308000000 { + compatible = "apple,t6050-video-decoder-complex", "apple,video-decoder-complex"; + reg = <0x23 0x8000000 0x0 0x1404000>, + <0x23 0x88090000 0x0 0x4000>; + interrupts = , + ; + iommus = <&hw_dart_avd0 0>, <&hw_dart_avd0 1>, <&hw_dart_avd0 2>; + status = "disabled"; + }; + + hw_dart_avd0: dart-complex@2309020000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x23 0x9020000 0x0 0x20000>, + <0x2 0x74000000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_leap_s: admac-complex@293200000 { + compatible = "apple,t6050-admac-complex", "apple,admac-complex"; + reg = <0x2 0x93200000 0x0 0x34000>, + <0x2 0x88328000 0x0 0x8>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_hp_mic_ec_proxy: audio-dma-proxy@4d3200000 { + compatible = "apple,t6050-audio-dma-proxy", "apple,audio-dma-proxy"; + reg = <0x4 0xd3200000 0x0 0x34000>; + status = "disabled"; + }; + + hw_admac_sllb_ec_proxy: audio-dma-proxy@4d3200000 { + compatible = "apple,t6050-audio-dma-proxy", "apple,audio-dma-proxy"; + reg = <0x4 0xd3200000 0x0 0x34000>; + status = "disabled"; + }; + + +}; diff --git a/arch/arm64/boot/dts/apple/t6050-k114c.dts b/arch/arm64/boot/dts/apple/t6050-k114c.dts index 1acbb53d1aa04..96d241e9b04d2 100644 --- a/arch/arm64/boot/dts/apple/t6050-k114c.dts +++ b/arch/arm64/boot/dts/apple/t6050-k114c.dts @@ -19,3 +19,5 @@ &mtp_multitouch { firmware-name = "apple/tpmtfw-k114c.bin"; }; + +#include "t6050-k114c-peripherals.dtsi" diff --git a/arch/arm64/boot/dts/apple/t6050-k114s-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-k114s-peripherals.dtsi new file mode 100644 index 0000000000000..31492e89c1fbc --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-k114s-peripherals.dtsi @@ -0,0 +1,358 @@ +#include "t6050-peripherals.dtsi" + +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* Register and interrupt resources; ownership-sensitive blocks stay disabled. */ + +&die0 { + + hw_i2c3: i2c-controller@50501c000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x501c000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_i2c4: i2c-controller@505020000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x5020000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_spi2: spi-controller@505108000 { + compatible = "apple,t6050-spi-controller", "apple,spi-controller"; + reg = <0x5 0x5108000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_spi4: spi-controller@505110000 { + compatible = "apple,t6050-spi-controller", "apple,spi-controller"; + reg = <0x5 0x5110000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_nub_spmi_a1: spmi-complex@28a1a8000 { + compatible = "apple,t6050-spmi-complex", "apple,spmi-complex"; + reg = <0x2 0x8a1a8000 0x0 0x4000>, + <0x2 0x8a1a4000 0x0 0x4000>, + <0x2 0x8a1a0000 0x0 0x4000>; + status = "disabled"; + }; + + hw_dart_isp0: dart-complex@5828c0000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x5 0x828c0000 0x0 0xc000>, + <0x5 0x828e0000 0x0 0xc000>, + <0x5 0x82900000 0x0 0xc000>, + <0x5 0x828f4000 0x0 0x4000>, + <0x5 0x82914000 0x0 0x4000>, + <0x5 0x828d0000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_apcie1: dart-complex@411000000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x11000000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_apcie1_piodma: pcie-piodma@411030000 { + compatible = "apple,t6050-pcie-piodma", "apple,pcie-piodma"; + reg = <0x4 0x11030000 0x0 0x4000>, + <0x4 0x11034000 0x0 0x4000>, + <0x4 0x11038000 0x0 0x4000>; + interrupts = ; + iommus = <&hw_dart_apcie1 17>; + status = "disabled"; + }; + + hw_dockchannel_mtp: dockchannel-complex@294b00000 { + compatible = "apple,t6050-dockchannel-complex", "apple,dockchannel-complex"; + reg = <0x2 0x94b00000 0x0 0x1000>, + <0x2 0x94b14000 0x0 0x1000>, + <0x2 0x94b30000 0x0 0x1000>, + <0x2 0x94b34000 0x0 0x1000>, + <0x2 0x94b28000 0x0 0x1000>, + <0x2 0x94b2c000 0x0 0x1000>; + interrupts = ; + status = "disabled"; + }; + + hw_secure_repair: secure-repair@2881e4000 { + compatible = "apple,t6050-secure-repair", "apple,secure-repair"; + reg = <0x2 0x881e4000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + ; + status = "disabled"; + }; + + hw_acio0: usb4-router@2a1f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x2 0xa1f00000 0x0 0x100000>, + <0x2 0xa1ac0000 0x0 0x4000>, + <0x2 0xa1ac4000 0x0 0x4000>, + <0x2 0xa1ac8000 0x0 0x4000>, + <0x2 0xa1e44000 0x0 0x4000>, + <0x2 0xa1c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio0 0>, <&hw_dart_acio0 1>, <&hw_dart_acio0 2>, <&hw_dart_acio0 3>, <&hw_dart_acio0 4>, <&hw_dart_acio0 5>, <&hw_dart_acio0 6>, <&hw_dart_acio0 7>, <&hw_dart_acio0 8>, <&hw_dart_acio0 9>, <&hw_dart_acio0 10>, <&hw_dart_acio0 11>, <&hw_dart_acio0 16>, <&hw_dart_acio0 17>, <&hw_dart_acio0 18>, <&hw_dart_acio0 19>, <&hw_dart_acio0 20>, <&hw_dart_acio0 21>, <&hw_dart_acio0 22>, <&hw_dart_acio0 23>, <&hw_dart_acio0 24>, <&hw_dart_acio0 25>, <&hw_dart_acio0 26>, <&hw_dart_acio0 27>; + status = "disabled"; + }; + + hw_acio1: usb4-router@2a9f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x2 0xa9f00000 0x0 0x100000>, + <0x2 0xa9ac0000 0x0 0x4000>, + <0x2 0xa9ac4000 0x0 0x4000>, + <0x2 0xa9ac8000 0x0 0x4000>, + <0x2 0xa9e44000 0x0 0x4000>, + <0x2 0xa9c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio1 0>, <&hw_dart_acio1 1>, <&hw_dart_acio1 2>, <&hw_dart_acio1 3>, <&hw_dart_acio1 4>, <&hw_dart_acio1 5>, <&hw_dart_acio1 6>, <&hw_dart_acio1 7>, <&hw_dart_acio1 8>, <&hw_dart_acio1 9>, <&hw_dart_acio1 10>, <&hw_dart_acio1 11>, <&hw_dart_acio1 16>, <&hw_dart_acio1 17>, <&hw_dart_acio1 18>, <&hw_dart_acio1 19>, <&hw_dart_acio1 20>, <&hw_dart_acio1 21>, <&hw_dart_acio1 22>, <&hw_dart_acio1 23>, <&hw_dart_acio1 24>, <&hw_dart_acio1 25>, <&hw_dart_acio1 26>, <&hw_dart_acio1 27>; + status = "disabled"; + }; + + hw_acio2: usb4-router@381f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x3 0x81f00000 0x0 0x100000>, + <0x3 0x81ac0000 0x0 0x4000>, + <0x3 0x81ac4000 0x0 0x4000>, + <0x3 0x81ac8000 0x0 0x4000>, + <0x3 0x81e44000 0x0 0x4000>, + <0x3 0x81c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio2 0>, <&hw_dart_acio2 1>, <&hw_dart_acio2 2>, <&hw_dart_acio2 3>, <&hw_dart_acio2 4>, <&hw_dart_acio2 5>, <&hw_dart_acio2 6>, <&hw_dart_acio2 7>, <&hw_dart_acio2 8>, <&hw_dart_acio2 9>, <&hw_dart_acio2 10>, <&hw_dart_acio2 11>, <&hw_dart_acio2 16>, <&hw_dart_acio2 17>, <&hw_dart_acio2 18>, <&hw_dart_acio2 19>, <&hw_dart_acio2 20>, <&hw_dart_acio2 21>, <&hw_dart_acio2 22>, <&hw_dart_acio2 23>, <&hw_dart_acio2 24>, <&hw_dart_acio2 25>, <&hw_dart_acio2 26>, <&hw_dart_acio2 27>; + status = "disabled"; + }; + + hw_atc3_dpxbar: atc-dpxbar@38b24c000 { + compatible = "apple,t6050-atc-dpxbar", "apple,atc-dpxbar"; + reg = <0x3 0x8b24c000 0x0 0x4000>; + status = "disabled"; + }; + + hw_disp0: display-engine@488000000 { + compatible = "apple,t6050-display-engine", "apple,display-engine"; + reg = <0x4 0x88000000 0x0 0x4000000>, + <0x4 0x8a240000 0x0 0x10000>, + <0x4 0x8a3ac000 0x0 0x4000>, + <0x4 0x8a800000 0x0 0x800000>, + <0x2 0x86700000 0x0 0x114000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_disp0 0>, <&hw_dart_disp0 16>; + status = "disabled"; + }; + + hw_dart_disp0: dart-complex@48a300000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a300000 0x0 0xc000>, + <0x4 0x8a314000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dcp0_expert: display-expert@48a3ac058 { + compatible = "apple,t6050-display-expert", "apple,display-expert"; + reg = <0x4 0x8a3ac058 0x0 0x4>, + <0x4 0x8a374000 0x0 0x40>, + <0x4 0x8a370000 0x0 0x40>, + <0x4 0x8a388000 0x0 0x40>, + <0x4 0x8a38c000 0x0 0x40>, + <0x4 0x8a394000 0x0 0x40>, + <0x4 0x8a398000 0x0 0x40>, + <0x4 0x8a39c000 0x0 0x40>, + <0x4 0x8a3a0000 0x0 0x40>, + <0x4 0x88208000 0x0 0x40>, + <0x4 0x8820c000 0x0 0x40>, + <0x4 0x88210000 0x0 0x40>, + <0x4 0x88214000 0x0 0x40>; + interrupts = ; + status = "disabled"; + }; + + hw_dcp: display-coproc@48ae00000 { + compatible = "apple,t6050-display-coproc", "apple,display-coproc"; + reg = <0x4 0x8ae00000 0x0 0x88000>, + <0x4 0x8a850000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + ; + iommus = <&hw_dart_dcp 23>, <&hw_dart_dcp 24>; + status = "disabled"; + }; + + hw_dart_dcp: dart-complex@48a340000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a340000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_disp0_isoc: dart-complex@48a180000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a180000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_disp0: admac-complex@48a140000 { + compatible = "apple,t6050-admac-complex", "apple,admac-complex"; + reg = <0x4 0x8a140000 0x0 0x24000>, + <0x2 0x88328000 0x0 0x8>; + interrupts = ; + iommus = <&hw_dart_disp0_isoc 30>; + status = "disabled"; + }; + + hw_admac_disp0_ced_ssw: admac-control@48a2f4000 { + compatible = "apple,t6050-admac-control", "apple,admac-control"; + reg = <0x4 0x8a2f4000 0x0 0x4000>, + <0x4 0x8a1a0000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_avd0: video-decoder-complex@2308000000 { + compatible = "apple,t6050-video-decoder-complex", "apple,video-decoder-complex"; + reg = <0x23 0x8000000 0x0 0x1404000>, + <0x23 0x88090000 0x0 0x4000>; + interrupts = , + ; + iommus = <&hw_dart_avd0 0>, <&hw_dart_avd0 1>, <&hw_dart_avd0 2>; + status = "disabled"; + }; + + hw_dart_avd0: dart-complex@2309020000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x23 0x9020000 0x0 0x20000>, + <0x2 0x74000000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_leap_s: admac-complex@293200000 { + compatible = "apple,t6050-admac-complex", "apple,admac-complex"; + reg = <0x2 0x93200000 0x0 0x34000>, + <0x2 0x88328000 0x0 0x8>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_hp_mic_ec_proxy: audio-dma-proxy@4d3200000 { + compatible = "apple,t6050-audio-dma-proxy", "apple,audio-dma-proxy"; + reg = <0x4 0xd3200000 0x0 0x34000>; + status = "disabled"; + }; + + hw_admac_sllb_ec_proxy: audio-dma-proxy@4d3200000 { + compatible = "apple,t6050-audio-dma-proxy", "apple,audio-dma-proxy"; + reg = <0x4 0xd3200000 0x0 0x34000>; + status = "disabled"; + }; + + +}; diff --git a/arch/arm64/boot/dts/apple/t6050-k114s.dts b/arch/arm64/boot/dts/apple/t6050-k114s.dts index bb1c9b4998953..986ce6390a0bd 100644 --- a/arch/arm64/boot/dts/apple/t6050-k114s.dts +++ b/arch/arm64/boot/dts/apple/t6050-k114s.dts @@ -19,3 +19,5 @@ &mtp_multitouch { firmware-name = "apple/tpmtfw-k114s.bin"; }; + +#include "t6050-k114s-peripherals.dtsi" diff --git a/arch/arm64/boot/dts/apple/t6050-k116c-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-k116c-peripherals.dtsi new file mode 100644 index 0000000000000..ef2e45ae80404 --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-k116c-peripherals.dtsi @@ -0,0 +1,373 @@ +#include "t6050-peripherals.dtsi" + +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* Register and interrupt resources; ownership-sensitive blocks stay disabled. */ + +&die0 { + hw_nub_spmi1: spmi-complex@28a054000 { + compatible = "apple,t6050-spmi-complex", "apple,spmi-complex"; + reg = <0x2 0x8a054000 0x0 0x4000>, + <0x2 0x8a044000 0x0 0x4000>, + <0x2 0x8a040000 0x0 0x4000>; + status = "disabled"; + }; + + hw_nub_spmi4: spmi-complex@28a114000 { + compatible = "apple,t6050-spmi-complex", "apple,spmi-complex"; + reg = <0x2 0x8a114000 0x0 0x4000>, + <0x2 0x8a104000 0x0 0x4000>, + <0x2 0x8a100000 0x0 0x4000>; + status = "disabled"; + }; + + hw_i2c3: i2c-controller@50501c000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x501c000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_i2c4: i2c-controller@505020000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x5020000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_spi2: spi-controller@505108000 { + compatible = "apple,t6050-spi-controller", "apple,spi-controller"; + reg = <0x5 0x5108000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_spi4: spi-controller@505110000 { + compatible = "apple,t6050-spi-controller", "apple,spi-controller"; + reg = <0x5 0x5110000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_nub_spmi_a1: spmi-complex@28a1a8000 { + compatible = "apple,t6050-spmi-complex", "apple,spmi-complex"; + reg = <0x2 0x8a1a8000 0x0 0x4000>, + <0x2 0x8a1a4000 0x0 0x4000>, + <0x2 0x8a1a0000 0x0 0x4000>; + status = "disabled"; + }; + + hw_dart_isp0: dart-complex@5828c0000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x5 0x828c0000 0x0 0xc000>, + <0x5 0x828e0000 0x0 0xc000>, + <0x5 0x82900000 0x0 0xc000>, + <0x5 0x828f4000 0x0 0x4000>, + <0x5 0x82914000 0x0 0x4000>, + <0x5 0x828d0000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_apcie1: dart-complex@411000000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x11000000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_apcie1_piodma: pcie-piodma@411030000 { + compatible = "apple,t6050-pcie-piodma", "apple,pcie-piodma"; + reg = <0x4 0x11030000 0x0 0x4000>, + <0x4 0x11034000 0x0 0x4000>, + <0x4 0x11038000 0x0 0x4000>; + interrupts = ; + iommus = <&hw_dart_apcie1 17>; + status = "disabled"; + }; + + hw_dockchannel_mtp: dockchannel-complex@294b00000 { + compatible = "apple,t6050-dockchannel-complex", "apple,dockchannel-complex"; + reg = <0x2 0x94b00000 0x0 0x1000>, + <0x2 0x94b14000 0x0 0x1000>, + <0x2 0x94b30000 0x0 0x1000>, + <0x2 0x94b34000 0x0 0x1000>, + <0x2 0x94b28000 0x0 0x1000>, + <0x2 0x94b2c000 0x0 0x1000>; + interrupts = ; + status = "disabled"; + }; + + hw_secure_repair: secure-repair@2881e4000 { + compatible = "apple,t6050-secure-repair", "apple,secure-repair"; + reg = <0x2 0x881e4000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + ; + status = "disabled"; + }; + + hw_acio0: usb4-router@2a1f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x2 0xa1f00000 0x0 0x100000>, + <0x2 0xa1ac0000 0x0 0x4000>, + <0x2 0xa1ac4000 0x0 0x4000>, + <0x2 0xa1ac8000 0x0 0x4000>, + <0x2 0xa1e44000 0x0 0x4000>, + <0x2 0xa1c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio0 0>, <&hw_dart_acio0 1>, <&hw_dart_acio0 2>, <&hw_dart_acio0 3>, <&hw_dart_acio0 4>, <&hw_dart_acio0 5>, <&hw_dart_acio0 6>, <&hw_dart_acio0 7>, <&hw_dart_acio0 8>, <&hw_dart_acio0 9>, <&hw_dart_acio0 10>, <&hw_dart_acio0 11>, <&hw_dart_acio0 16>, <&hw_dart_acio0 17>, <&hw_dart_acio0 18>, <&hw_dart_acio0 19>, <&hw_dart_acio0 20>, <&hw_dart_acio0 21>, <&hw_dart_acio0 22>, <&hw_dart_acio0 23>, <&hw_dart_acio0 24>, <&hw_dart_acio0 25>, <&hw_dart_acio0 26>, <&hw_dart_acio0 27>; + status = "disabled"; + }; + + hw_acio1: usb4-router@2a9f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x2 0xa9f00000 0x0 0x100000>, + <0x2 0xa9ac0000 0x0 0x4000>, + <0x2 0xa9ac4000 0x0 0x4000>, + <0x2 0xa9ac8000 0x0 0x4000>, + <0x2 0xa9e44000 0x0 0x4000>, + <0x2 0xa9c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio1 0>, <&hw_dart_acio1 1>, <&hw_dart_acio1 2>, <&hw_dart_acio1 3>, <&hw_dart_acio1 4>, <&hw_dart_acio1 5>, <&hw_dart_acio1 6>, <&hw_dart_acio1 7>, <&hw_dart_acio1 8>, <&hw_dart_acio1 9>, <&hw_dart_acio1 10>, <&hw_dart_acio1 11>, <&hw_dart_acio1 16>, <&hw_dart_acio1 17>, <&hw_dart_acio1 18>, <&hw_dart_acio1 19>, <&hw_dart_acio1 20>, <&hw_dart_acio1 21>, <&hw_dart_acio1 22>, <&hw_dart_acio1 23>, <&hw_dart_acio1 24>, <&hw_dart_acio1 25>, <&hw_dart_acio1 26>, <&hw_dart_acio1 27>; + status = "disabled"; + }; + + hw_acio2: usb4-router@381f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x3 0x81f00000 0x0 0x100000>, + <0x3 0x81ac0000 0x0 0x4000>, + <0x3 0x81ac4000 0x0 0x4000>, + <0x3 0x81ac8000 0x0 0x4000>, + <0x3 0x81e44000 0x0 0x4000>, + <0x3 0x81c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio2 0>, <&hw_dart_acio2 1>, <&hw_dart_acio2 2>, <&hw_dart_acio2 3>, <&hw_dart_acio2 4>, <&hw_dart_acio2 5>, <&hw_dart_acio2 6>, <&hw_dart_acio2 7>, <&hw_dart_acio2 8>, <&hw_dart_acio2 9>, <&hw_dart_acio2 10>, <&hw_dart_acio2 11>, <&hw_dart_acio2 16>, <&hw_dart_acio2 17>, <&hw_dart_acio2 18>, <&hw_dart_acio2 19>, <&hw_dart_acio2 20>, <&hw_dart_acio2 21>, <&hw_dart_acio2 22>, <&hw_dart_acio2 23>, <&hw_dart_acio2 24>, <&hw_dart_acio2 25>, <&hw_dart_acio2 26>, <&hw_dart_acio2 27>; + status = "disabled"; + }; + + hw_atc3_dpxbar: atc-dpxbar@38b24c000 { + compatible = "apple,t6050-atc-dpxbar", "apple,atc-dpxbar"; + reg = <0x3 0x8b24c000 0x0 0x4000>; + status = "disabled"; + }; + + hw_disp0: display-engine@488000000 { + compatible = "apple,t6050-display-engine", "apple,display-engine"; + reg = <0x4 0x88000000 0x0 0x4000000>, + <0x4 0x8a240000 0x0 0x10000>, + <0x4 0x8a3ac000 0x0 0x4000>, + <0x4 0x8a800000 0x0 0x800000>, + <0x2 0x86700000 0x0 0x114000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_disp0 0>, <&hw_dart_disp0 16>; + status = "disabled"; + }; + + hw_dart_disp0: dart-complex@48a300000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a300000 0x0 0xc000>, + <0x4 0x8a314000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dcp0_expert: display-expert@48a3ac058 { + compatible = "apple,t6050-display-expert", "apple,display-expert"; + reg = <0x4 0x8a3ac058 0x0 0x4>, + <0x4 0x8a374000 0x0 0x40>, + <0x4 0x8a370000 0x0 0x40>, + <0x4 0x8a388000 0x0 0x40>, + <0x4 0x8a38c000 0x0 0x40>, + <0x4 0x8a394000 0x0 0x40>, + <0x4 0x8a398000 0x0 0x40>, + <0x4 0x8a39c000 0x0 0x40>, + <0x4 0x8a3a0000 0x0 0x40>, + <0x4 0x88208000 0x0 0x40>, + <0x4 0x8820c000 0x0 0x40>, + <0x4 0x88210000 0x0 0x40>, + <0x4 0x88214000 0x0 0x40>; + interrupts = ; + status = "disabled"; + }; + + hw_dcp: display-coproc@48ae00000 { + compatible = "apple,t6050-display-coproc", "apple,display-coproc"; + reg = <0x4 0x8ae00000 0x0 0x88000>, + <0x4 0x8a850000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + ; + iommus = <&hw_dart_dcp 23>, <&hw_dart_dcp 24>; + status = "disabled"; + }; + + hw_dart_dcp: dart-complex@48a340000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a340000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_disp0_isoc: dart-complex@48a180000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a180000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_disp0: admac-complex@48a140000 { + compatible = "apple,t6050-admac-complex", "apple,admac-complex"; + reg = <0x4 0x8a140000 0x0 0x24000>, + <0x2 0x88328000 0x0 0x8>; + interrupts = ; + iommus = <&hw_dart_disp0_isoc 30>; + status = "disabled"; + }; + + hw_admac_disp0_ced_ssw: admac-control@48a2f4000 { + compatible = "apple,t6050-admac-control", "apple,admac-control"; + reg = <0x4 0x8a2f4000 0x0 0x4000>, + <0x4 0x8a1a0000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_avd0: video-decoder-complex@2308000000 { + compatible = "apple,t6050-video-decoder-complex", "apple,video-decoder-complex"; + reg = <0x23 0x8000000 0x0 0x1404000>, + <0x23 0x88090000 0x0 0x4000>; + interrupts = , + ; + iommus = <&hw_dart_avd0 0>, <&hw_dart_avd0 1>, <&hw_dart_avd0 2>; + status = "disabled"; + }; + + hw_dart_avd0: dart-complex@2309020000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x23 0x9020000 0x0 0x20000>, + <0x2 0x74000000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_leap_s: admac-complex@293200000 { + compatible = "apple,t6050-admac-complex", "apple,admac-complex"; + reg = <0x2 0x93200000 0x0 0x34000>, + <0x2 0x88328000 0x0 0x8>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_hp_mic_ec_proxy: audio-dma-proxy@4d3200000 { + compatible = "apple,t6050-audio-dma-proxy", "apple,audio-dma-proxy"; + reg = <0x4 0xd3200000 0x0 0x34000>; + status = "disabled"; + }; + + hw_admac_sllb_ec_proxy: audio-dma-proxy@4d3200000 { + compatible = "apple,t6050-audio-dma-proxy", "apple,audio-dma-proxy"; + reg = <0x4 0xd3200000 0x0 0x34000>; + status = "disabled"; + }; + + +}; diff --git a/arch/arm64/boot/dts/apple/t6050-k116c.dts b/arch/arm64/boot/dts/apple/t6050-k116c.dts index 6942c070e7030..f34ae2b5829e9 100644 --- a/arch/arm64/boot/dts/apple/t6050-k116c.dts +++ b/arch/arm64/boot/dts/apple/t6050-k116c.dts @@ -19,3 +19,5 @@ &mtp_multitouch { firmware-name = "apple/tpmtfw-k116c.bin"; }; + +#include "t6050-k116c-peripherals.dtsi" diff --git a/arch/arm64/boot/dts/apple/t6050-k116s-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-k116s-peripherals.dtsi new file mode 100644 index 0000000000000..31492e89c1fbc --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-k116s-peripherals.dtsi @@ -0,0 +1,358 @@ +#include "t6050-peripherals.dtsi" + +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* Register and interrupt resources; ownership-sensitive blocks stay disabled. */ + +&die0 { + + hw_i2c3: i2c-controller@50501c000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x501c000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_i2c4: i2c-controller@505020000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x5020000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_spi2: spi-controller@505108000 { + compatible = "apple,t6050-spi-controller", "apple,spi-controller"; + reg = <0x5 0x5108000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_spi4: spi-controller@505110000 { + compatible = "apple,t6050-spi-controller", "apple,spi-controller"; + reg = <0x5 0x5110000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_nub_spmi_a1: spmi-complex@28a1a8000 { + compatible = "apple,t6050-spmi-complex", "apple,spmi-complex"; + reg = <0x2 0x8a1a8000 0x0 0x4000>, + <0x2 0x8a1a4000 0x0 0x4000>, + <0x2 0x8a1a0000 0x0 0x4000>; + status = "disabled"; + }; + + hw_dart_isp0: dart-complex@5828c0000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x5 0x828c0000 0x0 0xc000>, + <0x5 0x828e0000 0x0 0xc000>, + <0x5 0x82900000 0x0 0xc000>, + <0x5 0x828f4000 0x0 0x4000>, + <0x5 0x82914000 0x0 0x4000>, + <0x5 0x828d0000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_apcie1: dart-complex@411000000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x11000000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_apcie1_piodma: pcie-piodma@411030000 { + compatible = "apple,t6050-pcie-piodma", "apple,pcie-piodma"; + reg = <0x4 0x11030000 0x0 0x4000>, + <0x4 0x11034000 0x0 0x4000>, + <0x4 0x11038000 0x0 0x4000>; + interrupts = ; + iommus = <&hw_dart_apcie1 17>; + status = "disabled"; + }; + + hw_dockchannel_mtp: dockchannel-complex@294b00000 { + compatible = "apple,t6050-dockchannel-complex", "apple,dockchannel-complex"; + reg = <0x2 0x94b00000 0x0 0x1000>, + <0x2 0x94b14000 0x0 0x1000>, + <0x2 0x94b30000 0x0 0x1000>, + <0x2 0x94b34000 0x0 0x1000>, + <0x2 0x94b28000 0x0 0x1000>, + <0x2 0x94b2c000 0x0 0x1000>; + interrupts = ; + status = "disabled"; + }; + + hw_secure_repair: secure-repair@2881e4000 { + compatible = "apple,t6050-secure-repair", "apple,secure-repair"; + reg = <0x2 0x881e4000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + ; + status = "disabled"; + }; + + hw_acio0: usb4-router@2a1f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x2 0xa1f00000 0x0 0x100000>, + <0x2 0xa1ac0000 0x0 0x4000>, + <0x2 0xa1ac4000 0x0 0x4000>, + <0x2 0xa1ac8000 0x0 0x4000>, + <0x2 0xa1e44000 0x0 0x4000>, + <0x2 0xa1c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio0 0>, <&hw_dart_acio0 1>, <&hw_dart_acio0 2>, <&hw_dart_acio0 3>, <&hw_dart_acio0 4>, <&hw_dart_acio0 5>, <&hw_dart_acio0 6>, <&hw_dart_acio0 7>, <&hw_dart_acio0 8>, <&hw_dart_acio0 9>, <&hw_dart_acio0 10>, <&hw_dart_acio0 11>, <&hw_dart_acio0 16>, <&hw_dart_acio0 17>, <&hw_dart_acio0 18>, <&hw_dart_acio0 19>, <&hw_dart_acio0 20>, <&hw_dart_acio0 21>, <&hw_dart_acio0 22>, <&hw_dart_acio0 23>, <&hw_dart_acio0 24>, <&hw_dart_acio0 25>, <&hw_dart_acio0 26>, <&hw_dart_acio0 27>; + status = "disabled"; + }; + + hw_acio1: usb4-router@2a9f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x2 0xa9f00000 0x0 0x100000>, + <0x2 0xa9ac0000 0x0 0x4000>, + <0x2 0xa9ac4000 0x0 0x4000>, + <0x2 0xa9ac8000 0x0 0x4000>, + <0x2 0xa9e44000 0x0 0x4000>, + <0x2 0xa9c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio1 0>, <&hw_dart_acio1 1>, <&hw_dart_acio1 2>, <&hw_dart_acio1 3>, <&hw_dart_acio1 4>, <&hw_dart_acio1 5>, <&hw_dart_acio1 6>, <&hw_dart_acio1 7>, <&hw_dart_acio1 8>, <&hw_dart_acio1 9>, <&hw_dart_acio1 10>, <&hw_dart_acio1 11>, <&hw_dart_acio1 16>, <&hw_dart_acio1 17>, <&hw_dart_acio1 18>, <&hw_dart_acio1 19>, <&hw_dart_acio1 20>, <&hw_dart_acio1 21>, <&hw_dart_acio1 22>, <&hw_dart_acio1 23>, <&hw_dart_acio1 24>, <&hw_dart_acio1 25>, <&hw_dart_acio1 26>, <&hw_dart_acio1 27>; + status = "disabled"; + }; + + hw_acio2: usb4-router@381f00000 { + compatible = "apple,t6050-usb4-router", "apple,usb4-router"; + reg = <0x3 0x81f00000 0x0 0x100000>, + <0x3 0x81ac0000 0x0 0x4000>, + <0x3 0x81ac4000 0x0 0x4000>, + <0x3 0x81ac8000 0x0 0x4000>, + <0x3 0x81e44000 0x0 0x4000>, + <0x3 0x81c80000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_acio2 0>, <&hw_dart_acio2 1>, <&hw_dart_acio2 2>, <&hw_dart_acio2 3>, <&hw_dart_acio2 4>, <&hw_dart_acio2 5>, <&hw_dart_acio2 6>, <&hw_dart_acio2 7>, <&hw_dart_acio2 8>, <&hw_dart_acio2 9>, <&hw_dart_acio2 10>, <&hw_dart_acio2 11>, <&hw_dart_acio2 16>, <&hw_dart_acio2 17>, <&hw_dart_acio2 18>, <&hw_dart_acio2 19>, <&hw_dart_acio2 20>, <&hw_dart_acio2 21>, <&hw_dart_acio2 22>, <&hw_dart_acio2 23>, <&hw_dart_acio2 24>, <&hw_dart_acio2 25>, <&hw_dart_acio2 26>, <&hw_dart_acio2 27>; + status = "disabled"; + }; + + hw_atc3_dpxbar: atc-dpxbar@38b24c000 { + compatible = "apple,t6050-atc-dpxbar", "apple,atc-dpxbar"; + reg = <0x3 0x8b24c000 0x0 0x4000>; + status = "disabled"; + }; + + hw_disp0: display-engine@488000000 { + compatible = "apple,t6050-display-engine", "apple,display-engine"; + reg = <0x4 0x88000000 0x0 0x4000000>, + <0x4 0x8a240000 0x0 0x10000>, + <0x4 0x8a3ac000 0x0 0x4000>, + <0x4 0x8a800000 0x0 0x800000>, + <0x2 0x86700000 0x0 0x114000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_disp0 0>, <&hw_dart_disp0 16>; + status = "disabled"; + }; + + hw_dart_disp0: dart-complex@48a300000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a300000 0x0 0xc000>, + <0x4 0x8a314000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dcp0_expert: display-expert@48a3ac058 { + compatible = "apple,t6050-display-expert", "apple,display-expert"; + reg = <0x4 0x8a3ac058 0x0 0x4>, + <0x4 0x8a374000 0x0 0x40>, + <0x4 0x8a370000 0x0 0x40>, + <0x4 0x8a388000 0x0 0x40>, + <0x4 0x8a38c000 0x0 0x40>, + <0x4 0x8a394000 0x0 0x40>, + <0x4 0x8a398000 0x0 0x40>, + <0x4 0x8a39c000 0x0 0x40>, + <0x4 0x8a3a0000 0x0 0x40>, + <0x4 0x88208000 0x0 0x40>, + <0x4 0x8820c000 0x0 0x40>, + <0x4 0x88210000 0x0 0x40>, + <0x4 0x88214000 0x0 0x40>; + interrupts = ; + status = "disabled"; + }; + + hw_dcp: display-coproc@48ae00000 { + compatible = "apple,t6050-display-coproc", "apple,display-coproc"; + reg = <0x4 0x8ae00000 0x0 0x88000>, + <0x4 0x8a850000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + ; + iommus = <&hw_dart_dcp 23>, <&hw_dart_dcp 24>; + status = "disabled"; + }; + + hw_dart_dcp: dart-complex@48a340000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a340000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_disp0_isoc: dart-complex@48a180000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8a180000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_disp0: admac-complex@48a140000 { + compatible = "apple,t6050-admac-complex", "apple,admac-complex"; + reg = <0x4 0x8a140000 0x0 0x24000>, + <0x2 0x88328000 0x0 0x8>; + interrupts = ; + iommus = <&hw_dart_disp0_isoc 30>; + status = "disabled"; + }; + + hw_admac_disp0_ced_ssw: admac-control@48a2f4000 { + compatible = "apple,t6050-admac-control", "apple,admac-control"; + reg = <0x4 0x8a2f4000 0x0 0x4000>, + <0x4 0x8a1a0000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_avd0: video-decoder-complex@2308000000 { + compatible = "apple,t6050-video-decoder-complex", "apple,video-decoder-complex"; + reg = <0x23 0x8000000 0x0 0x1404000>, + <0x23 0x88090000 0x0 0x4000>; + interrupts = , + ; + iommus = <&hw_dart_avd0 0>, <&hw_dart_avd0 1>, <&hw_dart_avd0 2>; + status = "disabled"; + }; + + hw_dart_avd0: dart-complex@2309020000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x23 0x9020000 0x0 0x20000>, + <0x2 0x74000000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_leap_s: admac-complex@293200000 { + compatible = "apple,t6050-admac-complex", "apple,admac-complex"; + reg = <0x2 0x93200000 0x0 0x34000>, + <0x2 0x88328000 0x0 0x8>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_hp_mic_ec_proxy: audio-dma-proxy@4d3200000 { + compatible = "apple,t6050-audio-dma-proxy", "apple,audio-dma-proxy"; + reg = <0x4 0xd3200000 0x0 0x34000>; + status = "disabled"; + }; + + hw_admac_sllb_ec_proxy: audio-dma-proxy@4d3200000 { + compatible = "apple,t6050-audio-dma-proxy", "apple,audio-dma-proxy"; + reg = <0x4 0xd3200000 0x0 0x34000>; + status = "disabled"; + }; + + +}; diff --git a/arch/arm64/boot/dts/apple/t6050-k116s.dts b/arch/arm64/boot/dts/apple/t6050-k116s.dts index 6461b33a1b830..7a85f5f719dd6 100644 --- a/arch/arm64/boot/dts/apple/t6050-k116s.dts +++ b/arch/arm64/boot/dts/apple/t6050-k116s.dts @@ -19,3 +19,5 @@ &mtp_multitouch { firmware-name = "apple/tpmtfw-k116s.bin"; }; + +#include "t6050-k116s-peripherals.dtsi" diff --git a/arch/arm64/boot/dts/apple/t6050-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-peripherals.dtsi new file mode 100644 index 0000000000000..4c63ad780463c --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-peripherals.dtsi @@ -0,0 +1,1409 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* Shared disabled peripheral resources. */ + +&die0 { + hw_i2c0: i2c-controller@505010000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x5010000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_i2c6: i2c-controller@505028000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x5028000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_i2c8: i2c-controller@505030000 { + compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + reg = <0x5 0x5030000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_apcie0_piodma: pcie-piodma@410030000 { + compatible = "apple,t6050-pcie-piodma", "apple,pcie-piodma"; + reg = <0x4 0x10030000 0x0 0x4000>, + <0x4 0x10034000 0x0 0x4000>, + <0x4 0x10038000 0x0 0x4000>; + interrupts = ; + iommus = <&dart_apcie0 17>; + status = "disabled"; + }; + + hw_apciec0: pciec-complex@1c50000000 { + compatible = "apple,t6050-pciec-complex", "apple,pciec-complex"; + reg = <0x1c 0x50000000 0x0 0x10000000>, + <0x2 0xa4034000 0x0 0x4000>, + <0x2 0xa4020000 0x0 0x8000>, + <0x2 0xa4038000 0x0 0x4000>, + <0x2 0xa4060000 0x0 0x4000>, + <0x2 0xa0020000 0x0 0x4000>, + <0x2 0xa402c000 0x0 0x4000>, + <0x2 0xa4028000 0x0 0x4000>; + interrupts = , + , + , + , + , + ; + status = "disabled"; + }; + + hw_dart_apciec0: dart-complex@2a4000000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x2 0xa4000000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_apciec0_piodma: pciec-piodma@2a4068000 { + compatible = "apple,t6050-pciec-piodma", "apple,pciec-piodma"; + reg = <0x2 0xa4068000 0x0 0x4000>, + <0x2 0xa406c000 0x0 0x4000>, + <0x2 0xa4070000 0x0 0x4000>, + <0x2 0xa403c000 0x0 0x4000>; + interrupts = ; + iommus = <&hw_dart_apciec0 254>; + status = "disabled"; + }; + + hw_dart_acio0: dart-complex@2a1a80000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x2 0xa1a80000 0x0 0xc000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_acio_cpu0: usb4-coproc@2a1108000 { + compatible = "apple,t6050-usb4-coproc", "apple,usb4-coproc"; + reg = <0x2 0xa1108000 0x0 0x4000>, + <0x2 0xa1100000 0x0 0x4000>; + interrupts = , + , + , + ; + status = "disabled"; + }; + + hw_apciec1: pciec-complex@1c60000000 { + compatible = "apple,t6050-pciec-complex", "apple,pciec-complex"; + reg = <0x1c 0x60000000 0x0 0x10000000>, + <0x2 0xac034000 0x0 0x4000>, + <0x2 0xac020000 0x0 0x8000>, + <0x2 0xac038000 0x0 0x4000>, + <0x2 0xac060000 0x0 0x4000>, + <0x2 0xa8020000 0x0 0x4000>, + <0x2 0xac02c000 0x0 0x4000>, + <0x2 0xac028000 0x0 0x4000>; + interrupts = , + , + , + , + , + ; + status = "disabled"; + }; + + hw_dart_apciec1: dart-complex@2ac000000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x2 0xac000000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_apciec1_piodma: pciec-piodma@2ac068000 { + compatible = "apple,t6050-pciec-piodma", "apple,pciec-piodma"; + reg = <0x2 0xac068000 0x0 0x4000>, + <0x2 0xac06c000 0x0 0x4000>, + <0x2 0xac070000 0x0 0x4000>, + <0x2 0xac03c000 0x0 0x4000>; + interrupts = ; + iommus = <&hw_dart_apciec1 254>; + status = "disabled"; + }; + + hw_dart_acio1: dart-complex@2a9a80000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x2 0xa9a80000 0x0 0xc000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_acio_cpu1: usb4-coproc@2a9108000 { + compatible = "apple,t6050-usb4-coproc", "apple,usb4-coproc"; + reg = <0x2 0xa9108000 0x0 0x4000>, + <0x2 0xa9100000 0x0 0x4000>; + interrupts = , + , + , + ; + status = "disabled"; + }; + + hw_apciec2: pciec-complex@1c70000000 { + compatible = "apple,t6050-pciec-complex", "apple,pciec-complex"; + reg = <0x1c 0x70000000 0x0 0x10000000>, + <0x3 0x84034000 0x0 0x4000>, + <0x3 0x84020000 0x0 0x8000>, + <0x3 0x84038000 0x0 0x4000>, + <0x3 0x84060000 0x0 0x4000>, + <0x3 0x80020000 0x0 0x4000>, + <0x3 0x8402c000 0x0 0x4000>, + <0x3 0x84028000 0x0 0x4000>; + interrupts = , + , + , + , + , + ; + status = "disabled"; + }; + + hw_dart_apciec2: dart-complex@384000000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x3 0x84000000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_apciec2_piodma: pciec-piodma@384068000 { + compatible = "apple,t6050-pciec-piodma", "apple,pciec-piodma"; + reg = <0x3 0x84068000 0x0 0x4000>, + <0x3 0x8406c000 0x0 0x4000>, + <0x3 0x84070000 0x0 0x4000>, + <0x3 0x8403c000 0x0 0x4000>; + interrupts = ; + iommus = <&hw_dart_apciec2 254>; + status = "disabled"; + }; + + hw_dart_acio2: dart-complex@381a80000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x3 0x81a80000 0x0 0xc000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_acio_cpu2: usb4-coproc@381108000 { + compatible = "apple,t6050-usb4-coproc", "apple,usb4-coproc"; + reg = <0x3 0x81108000 0x0 0x4000>, + <0x3 0x81100000 0x0 0x4000>; + interrupts = , + , + , + ; + status = "disabled"; + }; + + hw_atc0_dpxbar: atc-dpxbar@2a324c000 { + compatible = "apple,t6050-atc-dpxbar", "apple,atc-dpxbar"; + reg = <0x2 0xa324c000 0x0 0x4000>; + status = "disabled"; + }; + + hw_atc0_dpin0: dp-in@2a1e50000 { + compatible = "apple,t6050-dp-in", "apple,dp-in"; + reg = <0x2 0xa1e50000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_atc0_dpin1: dp-in@2a1e58000 { + compatible = "apple,t6050-dp-in", "apple,dp-in"; + reg = <0x2 0xa1e58000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_atc0_dpin2: dp-in@2a1e68000 { + compatible = "apple,t6050-dp-in", "apple,dp-in"; + reg = <0x2 0xa1e68000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_atc0_dpin3: dp-in@2a1e70000 { + compatible = "apple,t6050-dp-in", "apple,dp-in"; + reg = <0x2 0xa1e70000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_atc1_dpxbar: atc-dpxbar@2ab24c000 { + compatible = "apple,t6050-atc-dpxbar", "apple,atc-dpxbar"; + reg = <0x2 0xab24c000 0x0 0x4000>; + status = "disabled"; + }; + + hw_atc1_dpin0: dp-in@2a9e50000 { + compatible = "apple,t6050-dp-in", "apple,dp-in"; + reg = <0x2 0xa9e50000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_atc1_dpin1: dp-in@2a9e58000 { + compatible = "apple,t6050-dp-in", "apple,dp-in"; + reg = <0x2 0xa9e58000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_atc1_dpin2: dp-in@2a9e68000 { + compatible = "apple,t6050-dp-in", "apple,dp-in"; + reg = <0x2 0xa9e68000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_atc1_dpin3: dp-in@2a9e70000 { + compatible = "apple,t6050-dp-in", "apple,dp-in"; + reg = <0x2 0xa9e70000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_atc2_dpin0: dp-in@381e50000 { + compatible = "apple,t6050-dp-in", "apple,dp-in"; + reg = <0x3 0x81e50000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_atc2_dpin1: dp-in@381e58000 { + compatible = "apple,t6050-dp-in", "apple,dp-in"; + reg = <0x3 0x81e58000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_atc2_dpin2: dp-in@381e68000 { + compatible = "apple,t6050-dp-in", "apple,dp-in"; + reg = <0x3 0x81e68000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_atc2_dpin3: dp-in@381e70000 { + compatible = "apple,t6050-dp-in", "apple,dp-in"; + reg = <0x3 0x81e70000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_aic_timebase: aic-timebase@280580000 { + compatible = "apple,t6050-aic-timebase", "apple,aic-timebase"; + reg = <0x2 0x80580000 0x0 0x1000>; + status = "disabled"; + }; + + hw_aes: aes@50500c000 { + compatible = "apple,t6050-aes", "apple,aes"; + reg = <0x5 0x500c000 0x0 0x4000>, + <0x2 0x88340000 0x0 0x8000>, + <0x2 0x88090000 0x0 0x4000>; + interrupts = ; + iommus = <&hw_dart_sio 1>; + status = "disabled"; + }; + + hw_nub_gpio0: gpio-bank@2881e4000 { + compatible = "apple,t6050-gpio-bank", "apple,gpio-bank"; + reg = <0x2 0x881e4000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + ; + #address-cells = <0>; + gpio-controller; + #gpio-cells = <2>; + interrupt-controller; + #interrupt-cells = <2>; + status = "disabled"; + }; + + hw_aop_exclave_mailbox: secure-mailbox@4d067c000 { + compatible = "apple,t6050-secure-mailbox", "apple,secure-mailbox"; + reg = <0x4 0xd067c000 0x0 0x4000>; + interrupts = , + ; + iommus = <&aop_dart 1>; + status = "disabled"; + }; + + hw_aop2: aop-coproc@291600000 { + compatible = "apple,t6050-aop-coproc", "apple,aop-coproc"; + reg = <0x2 0x91600000 0x0 0x88000>, + <0x2 0x91650000 0x0 0x4000>, + <0x2 0x9162c000 0x0 0x3c008>; + interrupts = , + , + , + ; + iommus = <&aop_dart 16>; + status = "disabled"; + }; + + hw_event_log_handler: event-monitor@280040000 { + compatible = "apple,t6050-event-monitor", "apple,event-monitor"; + reg = <0x2 0x80040000 0x0 0x4000>, + <0x2 0x8004e000 0x0 0x4000>, + <0x23 0x8004c800 0x0 0x4000>, + <0x23 0x80040000 0x0 0x4000>, + <0x2 0x80200000 0x0 0x4000>, + <0x2 0x80000000 0x0 0x14000>, + <0x2 0x8003c000 0x0 0x4000>, + <0x2 0x80020000 0x0 0x10000>, + <0x2 0x806e0000 0x0 0x4000>, + <0x2 0x806d0000 0x0 0x4000>, + <0x2 0x80668000 0x0 0x4000>, + <0x2 0x80680000 0x0 0x1c000>, + <0x2 0x807d0000 0x0 0x4000>, + <0x2 0x806f0000 0x0 0x4000>, + <0x2 0x80928000 0x0 0x4000>, + <0x2 0x80938000 0x0 0x8000>, + <0x2 0x86700000 0x0 0x114000>, + <0x2 0x84380000 0x0 0x20000>, + <0x2 0x85040000 0x0 0x1c000>, + <0x2 0x84360000 0x0 0x4000>, + <0x2 0x84370000 0x0 0x4000>, + <0x23 0x85040000 0x0 0x1c000>, + <0x23 0x84360000 0x0 0x4000>, + <0x23 0x84370000 0x0 0x4000>, + <0x5 0x9878000 0x0 0x4000>, + <0x5 0x9868000 0x0 0x8000>, + <0x23 0x80300000 0x0 0x8000>, + <0x23 0x80308000 0x0 0x8000>, + <0x2 0x80300000 0x0 0x8000>, + <0x23 0x80034000 0x0 0x4000>, + <0x23 0x8003c000 0x0 0x4000>, + <0x23 0x80020000 0x0 0x10000>, + <0x23 0x80038000 0x0 0x4000>, + <0x23 0x80640000 0x0 0x10000>, + <0x23 0x806d0000 0x0 0x4000>, + <0x23 0x80668000 0x0 0x4000>, + <0x23 0x80680000 0x0 0x1c000>, + <0x23 0x806f0000 0x0 0x4000>, + <0x2 0x84000000 0x0 0x4000>, + <0x2 0x84004600 0x0 0x4000>, + <0x2 0x84004000 0x0 0x4000>, + <0x2 0x84004780 0x0 0x4000>, + <0x2 0x84007400 0x0 0x4000>, + <0x2 0x84004e00 0x0 0x4000>, + <0x2 0x84004800 0x0 0x4000>, + <0x2 0x84004f80 0x0 0x4000>, + <0x2 0x84007600 0x0 0x4000>, + <0x2 0x84005600 0x0 0x4000>, + <0x2 0x84005000 0x0 0x4000>, + <0x2 0x84005780 0x0 0x4000>, + <0x2 0x84007800 0x0 0x4000>, + <0x2 0x84005e00 0x0 0x4000>, + <0x2 0x84005800 0x0 0x4000>, + <0x2 0x84005f80 0x0 0x4000>, + <0x2 0x84007a00 0x0 0x4000>, + <0x2 0x84003e00 0x0 0x4000>, + <0x2 0x84003800 0x0 0x4000>, + <0x2 0x84003f80 0x0 0x4000>, + <0x2 0x84007200 0x0 0x4000>, + <0x2 0x84006e00 0x0 0x4000>, + <0x2 0x84006800 0x0 0x4000>, + <0x2 0x84006f80 0x0 0x4000>, + <0x2 0x84007e00 0x0 0x4000>, + <0x2 0x84006600 0x0 0x4000>, + <0x2 0x84006000 0x0 0x4000>, + <0x2 0x84006780 0x0 0x4000>, + <0x2 0x84007c00 0x0 0x4000>, + <0x2 0x84002e00 0x0 0x4000>, + <0x2 0x84002800 0x0 0x4000>, + <0x2 0x84002f80 0x0 0x4000>, + <0x2 0x84007000 0x0 0x4000>, + <0x2 0x84003600 0x0 0x4000>, + <0x2 0x84003000 0x0 0x4000>, + <0x2 0x84003780 0x0 0x4000>, + <0x2 0x84000400 0x0 0x4000>, + <0x2 0x84000400 0x0 0x4000>, + <0x2 0x84000400 0x0 0x4000>, + <0x2 0x84000400 0x0 0x4000>, + <0x2 0x84000400 0x0 0x4000>, + <0x2 0x84000400 0x0 0x4000>, + <0x2 0x84000400 0x0 0x4000>, + <0x2 0x84000400 0x0 0x4000>, + <0x23 0x84000000 0x0 0x4000>, + <0x23 0x84004e00 0x0 0x4000>, + <0x23 0x84004800 0x0 0x4000>, + <0x23 0x84004f80 0x0 0x4000>, + <0x23 0x84007000 0x0 0x4000>, + <0x23 0x84002e00 0x0 0x4000>, + <0x23 0x84002800 0x0 0x4000>, + <0x23 0x84002f80 0x0 0x4000>, + <0x23 0x84006800 0x0 0x4000>, + <0x23 0x84003600 0x0 0x4000>, + <0x23 0x84003000 0x0 0x4000>, + <0x23 0x84003780 0x0 0x4000>, + <0x23 0x84006a00 0x0 0x4000>, + <0x23 0x84005600 0x0 0x4000>, + <0x23 0x84005000 0x0 0x4000>, + <0x23 0x84005780 0x0 0x4000>, + <0x23 0x84007200 0x0 0x4000>, + <0x23 0x84006600 0x0 0x4000>, + <0x23 0x84006000 0x0 0x4000>, + <0x23 0x84006780 0x0 0x4000>, + <0x23 0x84007400 0x0 0x4000>, + <0x23 0x84005e00 0x0 0x4000>, + <0x23 0x84005800 0x0 0x4000>, + <0x23 0x84005f80 0x0 0x4000>, + <0x23 0x84003e00 0x0 0x4000>, + <0x23 0x84003800 0x0 0x4000>, + <0x23 0x84003f80 0x0 0x4000>, + <0x23 0x84006c00 0x0 0x4000>, + <0x23 0x84004600 0x0 0x4000>, + <0x23 0x84004000 0x0 0x4000>, + <0x23 0x84004780 0x0 0x4000>, + <0x23 0x84006e00 0x0 0x4000>, + <0x23 0x84000400 0x0 0x4000>, + <0x23 0x84000400 0x0 0x4000>, + <0x23 0x84000400 0x0 0x4000>, + <0x23 0x84000400 0x0 0x4000>, + <0x23 0x84000400 0x0 0x4000>, + <0x23 0x84000400 0x0 0x4000>, + <0x23 0x84000400 0x0 0x4000>, + <0x23 0x84000400 0x0 0x4000>, + <0x2 0x88f00000 0x0 0x18000>, + <0x2 0x88200000 0x0 0x4000>, + <0x2 0x88204000 0x0 0x4000>, + <0x2 0x8827c000 0x0 0x4000>, + <0x2 0x8832c000 0x0 0x4000>, + <0x2 0x88330000 0x0 0x10000>, + <0x2 0x88360000 0x0 0x4000>, + <0x2 0x88340000 0x0 0x8000>, + <0x2 0x8836c000 0x0 0x4000>, + <0x2 0x88000000 0x0 0x24000>, + <0x23 0x88200000 0x0 0x4000>, + <0x23 0x88204000 0x0 0x4000>, + <0x23 0x8827c000 0x0 0x4000>, + <0x23 0x8832c000 0x0 0x4000>, + <0x23 0x88330000 0x0 0x10000>, + <0x23 0x88360000 0x0 0x4000>, + <0x23 0x88340000 0x0 0x8000>, + <0x23 0x8836c000 0x0 0x4000>, + <0x23 0x88000000 0x0 0x8000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + status = "disabled"; + }; + + hw_sio: sio-coproc@505e00000 { + compatible = "apple,t6050-sio-coproc", "apple,sio-coproc"; + reg = <0x5 0x5e00000 0x0 0x88000>, + <0x5 0x5850000 0x0 0x4000>; + interrupts = , + , + , + ; + iommus = <&hw_dart_sio 0>; + status = "disabled"; + }; + + hw_dart_sio: dart-complex@505060000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x5 0x5060000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_pmp0: pmp-coproc@284e00000 { + compatible = "apple,t6050-pmp-coproc", "apple,pmp-coproc"; + reg = <0x2 0x84e00000 0x0 0x88000>, + <0x2 0x84850000 0x0 0x4000>, + <0x2 0x84500000 0x0 0x100000>, + <0x2 0x84250000 0x0 0x4000>; + interrupts = , + , + , + ; + iommus = <&hw_dart_pmp0 0>; + status = "disabled"; + }; + + hw_dart_pmp0: dart-complex@2841a0000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x2 0x841a0000 0x0 0xc000>, + <0x2 0x841b0000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_sep: sep-coproc@502600000 { + compatible = "apple,t6050-sep-coproc", "apple,sep-coproc"; + reg = <0x5 0x2600000 0x0 0x88000>, + <0x5 0x2050000 0x0 0x4000>; + interrupts = , + , + , + ; + iommus = <&hw_dart_sep 0>; + status = "disabled"; + }; + + hw_dart_sep: dart-complex@500b80000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x5 0xb80000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_aon_ptd: ptd@28cdc0000 { + compatible = "apple,t6050-ptd", "apple,ptd"; + reg = <0x2 0x8cdc0000 0x0 0x4000>, + <0x2 0x8cdd0000 0x0 0x4000>, + <0x2 0x8cdd8000 0x0 0x4000>, + <0x2 0x8cde0000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + status = "disabled"; + }; + + hw_rsm: rsm@288825000 { + compatible = "apple,t6050-rsm", "apple,rsm"; + reg = <0x2 0x88825000 0x0 0x4000>, + <0x2 0x888c0000 0x0 0x4>; + interrupts = ; + iommus = <&hw_dart_rsm 0>; + status = "disabled"; + }; + + hw_dart_rsm: dart-complex@2889a0000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x2 0x889a0000 0x0 0xc000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_atc_phy0: atc-phy-complex@2a2a90000 { + compatible = "apple,t6050-atc-phy-complex", "apple,atc-phy-complex"; + reg = <0x2 0xa2a90000 0x0 0x4000>, + <0x2 0xa2800000 0x0 0x4000>, + <0x2 0xa3000000 0x0 0x4000>, + <0x2 0xa3000400 0x0 0x4000>, + <0x2 0xa3000800 0x0 0x4000>, + <0x2 0xa3000a00 0x0 0x4000>, + <0x2 0xa3001000 0x0 0x4000>, + <0x2 0xa3003000 0x0 0x4000>, + <0x2 0xa3003200 0x0 0x4000>, + <0x2 0xa3003800 0x0 0x4000>, + <0x2 0xa3003a00 0x0 0x4000>, + <0x2 0xa3004000 0x0 0x4000>, + <0x2 0xa3005000 0x0 0x4000>, + <0x2 0xa3006000 0x0 0x4000>, + <0x2 0xa3007000 0x0 0x4000>, + <0x2 0xa3008000 0x0 0x4000>, + <0x2 0xa3009000 0x0 0x4000>, + <0x2 0xa300a000 0x0 0x4000>, + <0x2 0xa300b000 0x0 0x4000>, + <0x2 0xa300c000 0x0 0x4000>, + <0x2 0xa300d000 0x0 0x4000>, + <0x2 0xa300e000 0x0 0x4000>, + <0x2 0xa300f000 0x0 0x4000>, + <0x2 0xa3010000 0x0 0x4000>, + <0x2 0xa3018000 0x0 0x4000>, + <0x2 0xa3019000 0x0 0x4000>, + <0x2 0xa301a000 0x0 0x4000>, + <0x2 0xa301b000 0x0 0x4000>, + <0x2 0xa301c000 0x0 0x4000>, + <0x2 0xa301d000 0x0 0x4000>, + <0x2 0xa301e000 0x0 0x4000>, + <0x2 0xa301f000 0x0 0x4000>, + <0x2 0xa3020000 0x0 0x4000>, + <0x2 0xa3028000 0x0 0x4000>, + <0x2 0xa3028400 0x0 0x4000>, + <0x2 0xa3029000 0x0 0x4000>, + <0x2 0xa3040000 0x0 0x20000>, + <0x2 0xa30c0000 0x0 0x10000>, + <0x2 0xa3140000 0x0 0x1c000>, + <0x2 0xa3200000 0x0 0x4000>, + <0x2 0xa3244000 0x0 0x4000>, + <0x2 0xa0000000 0x0 0x8000>, + <0x2 0xa0020000 0x0 0x4000>, + <0x2 0xa3250000 0x0 0x4000>; + status = "disabled"; + }; + + hw_dart_usb0: dart-complex@2a2f00000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x2 0xa2f00000 0x0 0xc000>, + <0x2 0xa2f80000 0x0 0xc000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_usb_drd0: usb-drd-complex@2a2280000 { + compatible = "apple,t6050-usb-drd-complex", "apple,usb-drd-complex"; + reg = <0x2 0xa2280000 0x0 0x11800>, + <0x2 0xa2200000 0x0 0x4000>, + <0x2 0xa228c000 0x0 0x5800>, + <0x2 0xa2a84000 0x0 0x4000>, + <0x2 0xa2800000 0x0 0x4000>, + <0x2 0xa2a80000 0x0 0x4000>, + <0x2 0xa2080000 0x0 0x4000>, + <0x2 0xa228d000 0x0 0x4000>, + <0x2 0xa2980000 0x0 0x4000>, + <0x2 0x86758000 0x0 0x8>; + interrupts = , + , + , + ; + iommus = <&hw_dart_usb0 1>; + status = "disabled"; + }; + + hw_dart_auss0: dart-complex@395d60000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x3 0x95d60000 0x0 0xc000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_nub_spmi2: spmi-complex@28a094000 { + compatible = "apple,t6050-spmi-complex", "apple,spmi-complex"; + reg = <0x2 0x8a094000 0x0 0x4000>, + <0x2 0x8a084000 0x0 0x4000>, + <0x2 0x8a080000 0x0 0x4000>; + status = "disabled"; + }; + + hw_nub_spmi3: spmi-complex@28a0d4000 { + compatible = "apple,t6050-spmi-complex", "apple,spmi-complex"; + reg = <0x2 0x8a0d4000 0x0 0x4000>, + <0x2 0x8a0c4000 0x0 0x4000>, + <0x2 0x8a0c0000 0x0 0x4000>; + status = "disabled"; + }; + + hw_aop_spmi0: spmi-complex@290914000 { + compatible = "apple,t6050-spmi-complex", "apple,spmi-complex"; + reg = <0x2 0x90914000 0x0 0x4000>, + <0x2 0x90904000 0x0 0x4000>, + <0x2 0x90900000 0x0 0x4000>; + status = "disabled"; + }; + + hw_dptx0_aux: dptx-aux@29c260000 { + compatible = "apple,t6050-dptx-aux", "apple,dptx-aux"; + reg = <0x2 0x9c260000 0x0 0x4000>, + <0x2 0x9c260000 0x0 0x4000>; + status = "disabled"; + }; + + hw_dptx1_aux: dptx-aux@29c264000 { + compatible = "apple,t6050-dptx-aux", "apple,dptx-aux"; + reg = <0x2 0x9c264000 0x0 0x4000>, + <0x2 0x9c264000 0x0 0x4000>; + status = "disabled"; + }; + + hw_dcpext0_expert: display-expert@2b23ac058 { + compatible = "apple,t6050-display-expert", "apple,display-expert"; + reg = <0x2 0xb23ac058 0x0 0x4>, + <0x2 0xb2374000 0x0 0x40>, + <0x2 0xb2370000 0x0 0x40>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_dispext0_isoc: dart-complex@2b2180000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x2 0xb2180000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_dispext0: admac-complex@2b2140000 { + compatible = "apple,t6050-admac-complex", "apple,admac-complex"; + reg = <0x2 0xb2140000 0x0 0x24000>, + <0x2 0x88328000 0x0 0x8>; + interrupts = ; + iommus = <&hw_dart_dispext0_isoc 30>; + status = "disabled"; + }; + + hw_admac_dispext0_ced_ssw: admac-control@2b22f4000 { + compatible = "apple,t6050-admac-control", "apple,admac-control"; + reg = <0x2 0xb22f4000 0x0 0x4000>, + <0x2 0xb21a0000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_dispext1: display-engine@390000000 { + compatible = "apple,t6050-display-engine", "apple,display-engine"; + reg = <0x3 0x90000000 0x0 0x4000000>, + <0x3 0x92240000 0x0 0x10000>, + <0x3 0x923ac000 0x0 0x4000>, + <0x3 0x92800000 0x0 0x800000>, + <0x2 0x86700000 0x0 0x114000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_dispext1 0>, <&hw_dart_dispext1 16>; + status = "disabled"; + }; + + hw_dcpext1_expert: display-expert@3923ac058 { + compatible = "apple,t6050-display-expert", "apple,display-expert"; + reg = <0x3 0x923ac058 0x0 0x4>, + <0x3 0x92374000 0x0 0x40>, + <0x3 0x92370000 0x0 0x40>; + interrupts = ; + status = "disabled"; + }; + + hw_dcpext1: display-coproc@392e00000 { + compatible = "apple,t6050-display-coproc", "apple,display-coproc"; + reg = <0x3 0x92e00000 0x0 0x88000>, + <0x3 0x92850000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + ; + iommus = <&hw_dart_dcpext1 23>, <&hw_dart_dcpext1 24>; + status = "disabled"; + }; + + hw_dart_dcpext1: dart-complex@392340000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x3 0x92340000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_dispext1: dart-complex@392300000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x3 0x92300000 0x0 0xc000>, + <0x3 0x92314000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_dispext1_isoc: dart-complex@392180000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x3 0x92180000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_dispext1: admac-complex@392140000 { + compatible = "apple,t6050-admac-complex", "apple,admac-complex"; + reg = <0x3 0x92140000 0x0 0x24000>, + <0x2 0x88328000 0x0 0x8>; + interrupts = ; + iommus = <&hw_dart_dispext1_isoc 30>; + status = "disabled"; + }; + + hw_admac_dispext1_ced_ssw: admac-control@3922f4000 { + compatible = "apple,t6050-admac-control", "apple,admac-control"; + reg = <0x3 0x922f4000 0x0 0x4000>, + <0x3 0x921a0000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_dispext2: display-engine@300000000 { + compatible = "apple,t6050-display-engine", "apple,display-engine"; + reg = <0x3 0x0 0x0 0x4000000>, + <0x3 0x2240000 0x0 0x10000>, + <0x3 0x23ac000 0x0 0x4000>, + <0x3 0x2800000 0x0 0x800000>, + <0x2 0x86700000 0x0 0x114000>; + interrupts = , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_dispext2 0>, <&hw_dart_dispext2 16>; + status = "disabled"; + }; + + hw_dcpext2_expert: display-expert@3023ac058 { + compatible = "apple,t6050-display-expert", "apple,display-expert"; + reg = <0x3 0x23ac058 0x0 0x4>, + <0x3 0x2374000 0x0 0x40>, + <0x3 0x2370000 0x0 0x40>; + interrupts = ; + status = "disabled"; + }; + + hw_dcpext2: display-coproc@302e00000 { + compatible = "apple,t6050-display-coproc", "apple,display-coproc"; + reg = <0x3 0x2e00000 0x0 0x88000>, + <0x3 0x2850000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + ; + iommus = <&hw_dart_dcpext2 23>, <&hw_dart_dcpext2 24>; + status = "disabled"; + }; + + hw_dart_dcpext2: dart-complex@302340000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x3 0x2340000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_dispext2: dart-complex@302300000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x3 0x2300000 0x0 0xc000>, + <0x3 0x2314000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_dispext2_isoc: dart-complex@302180000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x3 0x2180000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_dispext2: admac-complex@302140000 { + compatible = "apple,t6050-admac-complex", "apple,admac-complex"; + reg = <0x3 0x2140000 0x0 0x24000>, + <0x2 0x88328000 0x0 0x8>; + interrupts = ; + iommus = <&hw_dart_dispext2_isoc 30>; + status = "disabled"; + }; + + hw_admac_dispext2_ced_ssw: admac-control@3022f4000 { + compatible = "apple,t6050-admac-control", "apple,admac-control"; + reg = <0x3 0x22f4000 0x0 0x4000>, + <0x3 0x21a0000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_dispext3: display-engine@304000000 { + compatible = "apple,t6050-display-engine", "apple,display-engine"; + reg = <0x3 0x4000000 0x0 0x4000000>, + <0x3 0x6240000 0x0 0x10000>, + <0x3 0x63ac000 0x0 0x4000>, + <0x3 0x6800000 0x0 0x800000>, + <0x2 0x86700000 0x0 0x114000>; + interrupts = , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_dispext3 0>, <&hw_dart_dispext3 16>; + status = "disabled"; + }; + + hw_dcpext3_expert: display-expert@3063ac058 { + compatible = "apple,t6050-display-expert", "apple,display-expert"; + reg = <0x3 0x63ac058 0x0 0x4>, + <0x3 0x6374000 0x0 0x40>, + <0x3 0x6370000 0x0 0x40>; + interrupts = ; + status = "disabled"; + }; + + hw_dcpext3: display-coproc@306e00000 { + compatible = "apple,t6050-display-coproc", "apple,display-coproc"; + reg = <0x3 0x6e00000 0x0 0x88000>, + <0x3 0x6850000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + ; + iommus = <&hw_dart_dcpext3 23>, <&hw_dart_dcpext3 24>; + status = "disabled"; + }; + + hw_dart_dcpext3: dart-complex@306340000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x3 0x6340000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_dispext3: dart-complex@306300000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x3 0x6300000 0x0 0xc000>, + <0x3 0x6314000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_dispext3_isoc: dart-complex@306180000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x3 0x6180000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_admac_dispext3: admac-complex@306140000 { + compatible = "apple,t6050-admac-complex", "apple,admac-complex"; + reg = <0x3 0x6140000 0x0 0x24000>, + <0x2 0x88328000 0x0 0x8>; + interrupts = ; + iommus = <&hw_dart_dispext3_isoc 30>; + status = "disabled"; + }; + + hw_admac_dispext3_ced_ssw: admac-control@3062f4000 { + compatible = "apple,t6050-admac-control", "apple,admac-control"; + reg = <0x3 0x62f4000 0x0 0x4000>, + <0x3 0x61a0000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_scaler: dart-complex@2285260000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x22 0x85260000 0x0 0x20000>, + <0x23 0xa1260000 0x0 0x20000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_scaler0: scaler@2285000000 { + compatible = "apple,t6050-scaler", "apple,scaler"; + reg = <0x22 0x85000000 0x0 0x14000>, + <0x22 0x85210000 0x0 0x4000>, + <0x22 0x85204000 0x0 0x4000>, + <0x22 0x84000000 0x0 0x8000>, + <0x22 0x852c0000 0x0 0x40000>, + <0x22 0x85340000 0x0 0x14c000>, + <0x22 0x852a0000 0x0 0x4000>, + <0x22 0x85208000 0x0 0x4000>, + <0x22 0x85210000 0x0 0x4000>, + <0x22 0x85220000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_scaler0 0>, <&hw_dart_scaler0 1>, <&hw_dart_scaler 0>, <&hw_dart_scaler 1>; + status = "disabled"; + }; + + hw_dart_scaler0: dart-complex@2285260000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x22 0x85260000 0x0 0x20000>, + <0x2 0x74000000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_scaler1: scaler@23a1000000 { + compatible = "apple,t6050-scaler", "apple,scaler"; + reg = <0x23 0xa1000000 0x0 0x14000>, + <0x23 0xa1210000 0x0 0x4000>, + <0x23 0xa1204000 0x0 0x4000>, + <0x23 0xa0000000 0x0 0x8000>, + <0x23 0xa12c0000 0x0 0x40000>, + <0x23 0xa1340000 0x0 0x14c000>, + <0x23 0xa12a0000 0x0 0x4000>, + <0x23 0xa1208000 0x0 0x4000>, + <0x23 0xa1210000 0x0 0x4000>, + <0x23 0xa1220000 0x0 0x4000>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + iommus = <&hw_dart_scaler1 0>, <&hw_dart_scaler1 1>, <&hw_dart_scaler 0>, <&hw_dart_scaler 1>; + status = "disabled"; + }; + + hw_dart_scaler1: dart-complex@23a1260000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x23 0xa1260000 0x0 0x20000>, + <0x2 0x74000000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_ave0: video-encoder-complex@2283100000 { + compatible = "apple,t6050-video-encoder-complex", "apple,video-encoder-complex"; + reg = <0x22 0x83100000 0x0 0x45c000>, + <0x22 0x83800000 0x0 0x800000>, + <0x22 0x83050000 0x0 0x4000>, + <0x23 0x806001c0 0x0 0x7e64>, + <0x22 0x82000000 0x0 0x8000>; + interrupts = , + , + , + , + ; + iommus = <&hw_dart_ave0 0>; + status = "disabled"; + }; + + hw_dart_ave0: dart-complex@22830a0000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x22 0x830a0000 0x0 0xc000>, + <0x22 0x83080000 0x0 0xc000>, + <0x22 0x83094000 0x0 0x4000>, + <0x22 0x830b0000 0x0 0x4000>, + <0x2 0x74000000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_ave1: video-encoder-complex@23a3100000 { + compatible = "apple,t6050-video-encoder-complex", "apple,video-encoder-complex"; + reg = <0x23 0xa3100000 0x0 0x45c000>, + <0x23 0xa3800000 0x0 0x800000>, + <0x23 0xa3050000 0x0 0x4000>, + <0x23 0x806001f0 0x0 0x7e5c>, + <0x23 0xa2000000 0x0 0x8000>; + interrupts = , + , + , + , + ; + iommus = <&hw_dart_ave1 0>; + status = "disabled"; + }; + + hw_dart_ave1: dart-complex@23a30a0000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x23 0xa30a0000 0x0 0xc000>, + <0x23 0xa3080000 0x0 0xc000>, + <0x23 0xa3094000 0x0 0x4000>, + <0x23 0xa30b0000 0x0 0x4000>, + <0x2 0x74000000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_apr0: prores-complex@48d000000 { + compatible = "apple,t6050-prores-complex", "apple,prores-complex"; + reg = <0x4 0x8d000000 0x0 0x4000>, + <0x4 0x8c000000 0x0 0x1000000>, + <0x4 0x8d0c0000 0x0 0x4000>, + <0x4 0x8d070000 0x0 0x4000>, + <0x4 0x8d071000 0x0 0x4000>; + interrupts = , + ; + iommus = <&hw_dart_apr0 1>; + status = "disabled"; + }; + + hw_dart_apr0: dart-complex@48d020000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x4 0x8d020000 0x0 0xc000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_dart_apr1: dart-complex@230b020000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x23 0xb020000 0x0 0xc000>, + <0x2 0x74000000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_jpeg0: jpeg-complex@2281000000 { + compatible = "apple,t6050-jpeg-complex", "apple,jpeg-complex"; + reg = <0x22 0x81000000 0x0 0x20000>; + interrupts = ; + iommus = <&hw_dart_jpeg0 0>; + status = "disabled"; + }; + + hw_jpeg1: jpeg-complex@2281060000 { + compatible = "apple,t6050-jpeg-complex", "apple,jpeg-complex"; + reg = <0x22 0x81060000 0x0 0x44000>; + interrupts = ; + iommus = <&hw_dart_jpeg0 1>; + status = "disabled"; + }; + + hw_dart_jpeg0: dart-complex@2281020000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x22 0x81020000 0x0 0xc000>, + <0x2 0x74000000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_ane0: ane-complex@508000000 { + compatible = "apple,t6050-ane-complex", "apple,ane-complex"; + reg = <0x5 0x8000000 0x0 0x2000000>, + <0x2 0x80900000 0x0 0x18000>, + <0x2 0x80920000 0x0 0x4000>, + <0x2 0x84240000 0x0 0x40000>, + <0x2 0x12000000 0x0 0xff4000>, + <0x5 0x84000000 0x0 0x2000000>, + <0x2 0x88374000 0x0 0x4000>; + interrupts = , + ; + iommus = <&hw_dart_ane0 0>, <&hw_dart_ane0 11>; + status = "disabled"; + }; + + hw_dart_ane0: dart-complex@509800000 { + compatible = "apple,t6050-dart-complex", "apple,dart-complex"; + reg = <0x5 0x9800000 0x0 0xc000>, + <0x5 0x9820000 0x0 0xc000>, + <0x5 0x9840000 0x0 0xc000>, + <0x5 0x9810000 0x0 0x4000>; + #iommu-cells = <1>; + interrupts = ; + status = "disabled"; + }; + + hw_sgx: gpu-complex@2300000000 { + compatible = "apple,t6050-gpu-complex", "apple,gpu-complex"; + reg = <0x23 0x0 0x0 0x3fdc000>, + <0x23 0xd00000 0x0 0x177000>; + interrupts = , + , + , + , + , + , + , + ; + status = "disabled"; + }; + + hw_gfx_asc: gpu-coproc@2302600000 { + compatible = "apple,t6050-gpu-coproc", "apple,gpu-coproc"; + reg = <0x23 0x2600000 0x0 0x88000>, + <0x23 0x2050000 0x0 0x8>; + interrupts = , + , + , + ; + status = "disabled"; + }; + + hw_gfx1_asc: gpu-coproc@2302e00000 { + compatible = "apple,t6050-gpu-coproc", "apple,gpu-coproc"; + reg = <0x23 0x2e00000 0x0 0x88000>, + <0x23 0x2850000 0x0 0x60000>; + interrupts = , + , + , + ; + status = "disabled"; + }; + + hw_admac_leap_ns: admac-complex@293300000 { + compatible = "apple,t6050-admac-complex", "apple,admac-complex"; + reg = <0x2 0x93300000 0x0 0x34000>, + <0x2 0x88328000 0x0 0x8>; + interrupts = ; + iommus = <&aop_dart 10>; + status = "disabled"; + }; + + hw_admac_aop_ced_ssw: admac-control@293c80000 { + compatible = "apple,t6050-admac-control", "apple,admac-control"; + reg = <0x2 0x93c80000 0x0 0x4000>, + <0x2 0x93c84000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_dbgCPU: cpu-debug@288b00000 { + compatible = "apple,t6050-cpu-debug", "apple,cpu-debug"; + reg = <0x2 0x88b00000 0x0 0x28000>, + <0x2 0x889c0000 0x0 0x4000>; + interrupts = ; + status = "disabled"; + }; + + hw_apple_processor_trace: processor-trace@2100f0000 { + compatible = "apple,t6050-processor-trace", "apple,processor-trace"; + reg = <0x2 0x100f0000 0x0 0x10000>, + <0x2 0x101f0000 0x0 0x10000>, + <0x2 0x102f0000 0x0 0x10000>, + <0x2 0x103f0000 0x0 0x10000>, + <0x2 0x104f0000 0x0 0x10000>, + <0x2 0x105f0000 0x0 0x10000>, + <0x2 0x110f0000 0x0 0x10000>, + <0x2 0x111f0000 0x0 0x10000>, + <0x2 0x112f0000 0x0 0x10000>, + <0x2 0x113f0000 0x0 0x10000>, + <0x2 0x114f0000 0x0 0x10000>, + <0x2 0x115f0000 0x0 0x10000>, + <0x2 0x120f0000 0x0 0x10000>, + <0x2 0x121f0000 0x0 0x10000>, + <0x2 0x122f0000 0x0 0x10000>, + <0x2 0x123f0000 0x0 0x10000>, + <0x2 0x124f0000 0x0 0x10000>, + <0x2 0x125f0000 0x0 0x10000>, + <0x2 0x10ff0000 0x0 0x10000>, + <0x2 0x11ff0000 0x0 0x10000>, + <0x2 0x12ff0000 0x0 0x10000>, + <0x2 0x10e40000 0x0 0x10000>, + <0x2 0x11e40000 0x0 0x10000>, + <0x2 0x12e40000 0x0 0x10000>, + <0x2 0x10e50000 0x0 0x10000>, + <0x2 0x11e50000 0x0 0x10000>, + <0x2 0x12e50000 0x0 0x10000>, + <0x2 0x10e90000 0x0 0x10000>, + <0x2 0x11e90000 0x0 0x10000>, + <0x2 0x12e90000 0x0 0x10000>, + <0x2 0x10eb0000 0x0 0x10000>, + <0x2 0x11eb0000 0x0 0x10000>, + <0x2 0x12eb0000 0x0 0x10000>; + status = "disabled"; + }; +}; diff --git a/docs/devicetree/DT-GAPS-j714c.md b/docs/devicetree/DT-GAPS-j714c.md new file mode 100644 index 0000000000000..d49507d6853c1 --- /dev/null +++ b/docs/devicetree/DT-GAPS-j714c.md @@ -0,0 +1,265 @@ +# J714C device-tree audit + +SoC: T6050. Source: board-specific static ADT. Audited 1071 ADT node records. +The table covers the devices directly attached to the SoC bus. Firmware +service containers, mapper children and transport endpoints are distinguished +from independent MMIO controllers. This is a resource-description draft, +not a claim that all of this board's devices can be driven on Linux. + +New register complexes remain disabled. Their bindings retain the complete +aperture list and AIC interrupt wiring where translation is unambiguous; +DMA mapper references are translated to IOMMU phandles and stream IDs. +No firmware, calibration or register programming values are included. + +## Remaining work + +- Qualify firmware handoff, reset, clocks and power ownership before enabling + a new block. Composite descriptions require review against the eventual + IP-specific driver interface, including shared windows. +- Complete the transport children and firmware-service bindings, pinmux, + port graphs and board wiring. Listing a controller does not cover its + attached peripherals. +- Resolve every provider/routing gap called out below. No guessed + address, interrupt parent or power-domain relationship was substituted. +- Validate on this board; no boot or peripheral test was performed. + +Existing SoC and board support comes from linux#935, linux#945 and +linux#1025; these dependencies are extended, not replaced. The static ADTs +contain template CPU records for absent dies/cores. CPU harvesting and +release addresses must be supplied by the boot loader. + +## SoC-bus coverage + +| ADT device | Description | Location or unresolved detail | +| --- | --- | --- | +| dynamic-pil | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| displaymanager | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| i2c1 | existing description | `&i2c1`; auxiliary apertures still require a driver-specific audit. | +| i2c2 | existing description | `&i2c2`; auxiliary apertures still require a driver-specific audit. | +| iop-voicetrigger-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| isp0 | unresolved binding | An IP-specific binding is still required. | +| isp-exclave-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pwm0 | existing description | `&fpwm0`; auxiliary apertures still require a driver-specific audit. | +| apcie0 | existing description | `&pcie0`; auxiliary apertures still require a driver-specific audit. | +| dart-apcie0 | existing description | `&dart_apcie0`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu0 | unresolved binding | An IP-specific binding is still required. | +| acio-phy-cpu1 | existing description | `&atc1_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu2 | existing description | `&atc2_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu3 | existing description | `&atc3_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| mtp | existing description | `&mtp`; auxiliary apertures still require a driver-specific audit. | +| dart-mtp | existing description | `&mtp_dart`; auxiliary apertures still require a driver-specific audit. | +| mtp-aop-mux | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| eic | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| aod2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| bluetooth | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| centauri | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| display-crossbar0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc0-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc1-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc2-dpxbar | existing description | `&atc2_xbar`; auxiliary apertures still require a driver-specific audit. | +| atc2-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc3-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| mcc | existing description | `&cio_reconfig0`; auxiliary apertures still require a driver-specific audit. | +| aic | existing description | `&aic`; auxiliary apertures still require a driver-specific audit. | +| wdt | existing description | `&wdt`; auxiliary apertures still require a driver-specific audit. | +| error-handler | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| auss-cpu0 | unresolved binding | An IP-specific binding is still required. | +| gpio0 | existing description | `&pinctrl_ap`; auxiliary apertures still require a driver-specific audit. | +| aop-gpio0 | existing description | `&pinctrl_aop`; auxiliary apertures still require a driver-specific audit. | +| aop | existing description | `&aop`; auxiliary apertures still require a driver-specific audit. | +| dart-aop | existing description | `&aop_dart`; auxiliary apertures still require a driver-specific audit. | +| aop-exclave-ioreporting | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pmgr | existing description | `&pmgr0`; auxiliary apertures still require a driver-specific audit. | +| pmp1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-pmp1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| esm | unresolved address translation | No covering parent range; do not guess a physical address. | +| ans | existing description | `&nvme`; auxiliary apertures still require a driver-specific audit. | +| sart-ans | existing description | `&ans_sart`; auxiliary apertures still require a driver-specific audit. | +| smc | existing description | `&smc`; auxiliary apertures still require a driver-specific audit. | +| uart0 | unresolved binding | An IP-specific binding is still required. | +| dockchannel-uart | existing description | `&dockchannel`; auxiliary apertures still require a driver-specific audit. | +| qspi | existing description | `&qspi`; auxiliary apertures still require a driver-specific audit. | +| dp2hdmi-gpio0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc-phy1 | existing description | `&atc1_phy`; auxiliary apertures still require a driver-specific audit. | +| dart-usb1 | existing description | `&usb_drd1_dart_0`; auxiliary apertures still require a driver-specific audit. | +| usb-drd1 | existing description | `&usb_drd1`; auxiliary apertures still require a driver-specific audit. | +| atc-phy2 | existing description | `&atc2_phy`; auxiliary apertures still require a driver-specific audit. | +| dart-usb2 | existing description | `&usb_drd2_dart_0`; auxiliary apertures still require a driver-specific audit. | +| usb-drd2 | existing description | `&usb_drd2`; auxiliary apertures still require a driver-specific audit. | +| atc-phy3 | existing description | `&atc3_phy`; auxiliary apertures still require a driver-specific audit. | +| usb-auss0 | unresolved binding | An IP-specific binding is still required. | +| nub-spmi0 | existing description | `&nub_spmi0`; auxiliary apertures still require a driver-specific audit. | +| nub-spmi-a0 | existing description | `&nub_spmi_a0`; auxiliary apertures still require a driver-specific audit. | +| dcp0-sac-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dispext0 | existing description | `&dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dcpext0 | existing description | `&dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dart-dcpext0 | existing description | `&dart_dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dart-dispext0 | existing description | `&dart_dispext0`; auxiliary apertures still require a driver-specific audit. | +| dp-audio1 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio3 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio4 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17cr1_42 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17cr2_42 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17c_48 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_97 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| mapper-gfx-asc | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| sapt | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| iop-audio-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| admac-base-ns | existing description | `&admac_base_ns`; auxiliary apertures still require a driver-specific audit. | +| audio-shared-dart-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| audio-hp-mic-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| audio-sllb-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| smctempsensor0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| cpu-debug-interface | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| nub-swd0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pwm1 | existing description | `&fpwm0`; auxiliary apertures still require a driver-specific audit. | +| timesync | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| fillmore | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| isp-exclave-s-proxy | unresolved address translation | No covering parent range; do not guess a physical address. | +| msg | unresolved binding | An IP-specific binding is still required. | +| msghub | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_5 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_6 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| device-supports-gf2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| nub-spmi1 | disabled resource description | `&hw_nub_spmi1`; mixed/non-AIC interrupt routing needs decoding | +| nub-spmi4 | disabled resource description | `&hw_nub_spmi4`; mixed/non-AIC interrupt routing needs decoding | +| i2c5 | disabled resource description | `&hw_i2c5`; power/clock gate needs a verified provider | +| i2c7 | disabled resource description | `&hw_i2c7`; power/clock gate needs a verified provider | +| i2c0 | disabled resource description | `&hw_i2c0`; power/clock gate needs a verified provider | +| i2c3 | disabled resource description | `&hw_i2c3`; power/clock gate needs a verified provider | +| i2c4 | disabled resource description | `&hw_i2c4`; power/clock gate needs a verified provider | +| i2c6 | disabled resource description | `&hw_i2c6`; power/clock gate needs a verified provider | +| i2c8 | disabled resource description | `&hw_i2c8`; power/clock gate needs a verified provider | +| spi2 | disabled resource description | `&hw_spi2`; power/clock gate needs a verified provider | +| spi4 | disabled resource description | `&hw_spi4`; power/clock gate needs a verified provider | +| nub-spmi-a1 | disabled resource description | `&hw_nub_spmi_a1`; mixed/non-AIC interrupt routing needs decoding | +| dart-isp0 | disabled resource description | `&hw_dart_isp0`; power/clock gate needs a verified provider | +| apcie0-piodma | disabled resource description | `&hw_apcie0_piodma` | +| dart-apcie1 | disabled resource description | `&hw_dart_apcie1` | +| apcie1-piodma | disabled resource description | `&hw_apcie1_piodma` | +| dockchannel-mtp | disabled resource description | `&hw_dockchannel_mtp` | +| secure-repair | disabled resource description | `&hw_secure_repair` | +| apciec0 | disabled resource description | `&hw_apciec0`; power/clock gate needs a verified provider | +| dart-apciec0 | disabled resource description | `&hw_dart_apciec0` | +| apciec0-piodma | disabled resource description | `&hw_apciec0_piodma` | +| acio0 | disabled resource description | `&hw_acio0`; power/clock gate needs a verified provider | +| dart-acio0 | disabled resource description | `&hw_dart_acio0` | +| acio-cpu0 | disabled resource description | `&hw_acio_cpu0`; power/clock gate needs a verified provider | +| apciec1 | disabled resource description | `&hw_apciec1`; power/clock gate needs a verified provider | +| dart-apciec1 | disabled resource description | `&hw_dart_apciec1` | +| apciec1-piodma | disabled resource description | `&hw_apciec1_piodma` | +| acio1 | disabled resource description | `&hw_acio1`; power/clock gate needs a verified provider | +| dart-acio1 | disabled resource description | `&hw_dart_acio1` | +| acio-cpu1 | disabled resource description | `&hw_acio_cpu1`; power/clock gate needs a verified provider | +| apciec2 | disabled resource description | `&hw_apciec2`; power/clock gate needs a verified provider | +| dart-apciec2 | disabled resource description | `&hw_dart_apciec2` | +| apciec2-piodma | disabled resource description | `&hw_apciec2_piodma` | +| acio2 | disabled resource description | `&hw_acio2`; power/clock gate needs a verified provider | +| dart-acio2 | disabled resource description | `&hw_dart_acio2` | +| acio-cpu2 | disabled resource description | `&hw_acio_cpu2`; power/clock gate needs a verified provider | +| atc0-dpxbar | disabled resource description | `&hw_atc0_dpxbar` | +| atc0-dpin0 | disabled resource description | `&hw_atc0_dpin0` | +| atc0-dpin1 | disabled resource description | `&hw_atc0_dpin1` | +| atc0-dpin2 | disabled resource description | `&hw_atc0_dpin2` | +| atc0-dpin3 | disabled resource description | `&hw_atc0_dpin3` | +| atc1-dpxbar | disabled resource description | `&hw_atc1_dpxbar` | +| atc1-dpin0 | disabled resource description | `&hw_atc1_dpin0` | +| atc1-dpin1 | disabled resource description | `&hw_atc1_dpin1` | +| atc1-dpin2 | disabled resource description | `&hw_atc1_dpin2` | +| atc1-dpin3 | disabled resource description | `&hw_atc1_dpin3` | +| atc2-dpin0 | disabled resource description | `&hw_atc2_dpin0` | +| atc2-dpin1 | disabled resource description | `&hw_atc2_dpin1` | +| atc2-dpin2 | disabled resource description | `&hw_atc2_dpin2` | +| atc2-dpin3 | disabled resource description | `&hw_atc2_dpin3` | +| atc3-dpxbar | disabled resource description | `&hw_atc3_dpxbar` | +| aic-timebase | disabled resource description | `&hw_aic_timebase` | +| aes | disabled resource description | `&hw_aes`; power/clock gate needs a verified provider | +| nub-gpio0 | disabled resource description | `&hw_nub_gpio0` | +| aop-exclave-mailbox | disabled resource description | `&hw_aop_exclave_mailbox` | +| aop2 | disabled resource description | `&hw_aop2` | +| event-log-handler | disabled resource description | `&hw_event_log_handler` | +| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider | +| dart-sio | disabled resource description | `&hw_dart_sio`; power/clock gate needs a verified provider | +| pmp0 | disabled resource description | `&hw_pmp0`; power/clock gate needs a verified provider | +| dart-pmp0 | disabled resource description | `&hw_dart_pmp0` | +| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider | +| dart-sep | disabled resource description | `&hw_dart_sep` | +| aon-ptd | disabled resource description | `&hw_aon_ptd` | +| rsm | disabled resource description | `&hw_rsm`; power/clock gate needs a verified provider | +| dart-rsm | disabled resource description | `&hw_dart_rsm` | +| atc-phy0 | disabled resource description | `&hw_atc_phy0`; power/clock gate needs a verified provider | +| dart-usb0 | disabled resource description | `&hw_dart_usb0`; power/clock gate needs a verified provider | +| usb-drd0 | disabled resource description | `&hw_usb_drd0`; power/clock gate needs a verified provider | +| dart-auss0 | disabled resource description | `&hw_dart_auss0` | +| nub-spmi2 | disabled resource description | `&hw_nub_spmi2`; mixed/non-AIC interrupt routing needs decoding | +| nub-spmi3 | disabled resource description | `&hw_nub_spmi3`; mixed/non-AIC interrupt routing needs decoding | +| aop-spmi0 | disabled resource description | `&hw_aop_spmi0`; mixed/non-AIC interrupt routing needs decoding | +| dptx0-aux | disabled resource description | `&hw_dptx0_aux`; power/clock gate needs a verified provider | +| dptx1-aux | disabled resource description | `&hw_dptx1_aux`; power/clock gate needs a verified provider | +| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider | +| dart-disp0 | disabled resource description | `&hw_dart_disp0` | +| dcp0-expert | disabled resource description | `&hw_dcp0_expert` | +| dcp | disabled resource description | `&hw_dcp`; power/clock gate needs a verified provider | +| dart-dcp | disabled resource description | `&hw_dart_dcp` | +| dart-disp0-isoc | disabled resource description | `&hw_dart_disp0_isoc` | +| admac-disp0 | disabled resource description | `&hw_admac_disp0` | +| admac-disp0-ced-ssw | disabled resource description | `&hw_admac_disp0_ced_ssw` | +| dcpext0-expert | disabled resource description | `&hw_dcpext0_expert` | +| dart-dispext0-isoc | disabled resource description | `&hw_dart_dispext0_isoc` | +| admac-dispext0 | disabled resource description | `&hw_admac_dispext0` | +| admac-dispext0-ced-ssw | disabled resource description | `&hw_admac_dispext0_ced_ssw` | +| dispext1 | disabled resource description | `&hw_dispext1` | +| dcpext1-expert | disabled resource description | `&hw_dcpext1_expert` | +| dcpext1 | disabled resource description | `&hw_dcpext1`; power/clock gate needs a verified provider | +| dart-dcpext1 | disabled resource description | `&hw_dart_dcpext1` | +| dart-dispext1 | disabled resource description | `&hw_dart_dispext1` | +| dart-dispext1-isoc | disabled resource description | `&hw_dart_dispext1_isoc` | +| admac-dispext1 | disabled resource description | `&hw_admac_dispext1` | +| admac-dispext1-ced-ssw | disabled resource description | `&hw_admac_dispext1_ced_ssw` | +| dispext2 | disabled resource description | `&hw_dispext2` | +| dcpext2-expert | disabled resource description | `&hw_dcpext2_expert` | +| dcpext2 | disabled resource description | `&hw_dcpext2`; power/clock gate needs a verified provider | +| dart-dcpext2 | disabled resource description | `&hw_dart_dcpext2` | +| dart-dispext2 | disabled resource description | `&hw_dart_dispext2` | +| dart-dispext2-isoc | disabled resource description | `&hw_dart_dispext2_isoc` | +| admac-dispext2 | disabled resource description | `&hw_admac_dispext2` | +| admac-dispext2-ced-ssw | disabled resource description | `&hw_admac_dispext2_ced_ssw` | +| dispext3 | disabled resource description | `&hw_dispext3` | +| dcpext3-expert | disabled resource description | `&hw_dcpext3_expert` | +| dcpext3 | disabled resource description | `&hw_dcpext3`; power/clock gate needs a verified provider | +| dart-dcpext3 | disabled resource description | `&hw_dart_dcpext3` | +| dart-dispext3 | disabled resource description | `&hw_dart_dispext3` | +| dart-dispext3-isoc | disabled resource description | `&hw_dart_dispext3_isoc` | +| admac-dispext3 | disabled resource description | `&hw_admac_dispext3` | +| admac-dispext3-ced-ssw | disabled resource description | `&hw_admac_dispext3_ced_ssw` | +| dart-scaler | disabled resource description | `&hw_dart_scaler`; power/clock gate needs a verified provider | +| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider | +| dart-scaler0 | disabled resource description | `&hw_dart_scaler0`; power/clock gate needs a verified provider | +| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider | +| dart-scaler1 | disabled resource description | `&hw_dart_scaler1`; power/clock gate needs a verified provider | +| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider | +| dart-ave0 | disabled resource description | `&hw_dart_ave0`; power/clock gate needs a verified provider | +| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider | +| dart-ave1 | disabled resource description | `&hw_dart_ave1`; power/clock gate needs a verified provider | +| apr0 | disabled resource description | `&hw_apr0`; power/clock gate needs a verified provider | +| dart-apr0 | disabled resource description | `&hw_dart_apr0`; power/clock gate needs a verified provider | +| dart-apr1 | disabled resource description | `&hw_dart_apr1`; power/clock gate needs a verified provider | +| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider | +| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider | +| dart-jpeg0 | disabled resource description | `&hw_dart_jpeg0`; power/clock gate needs a verified provider | +| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider | +| dart-ane0 | disabled resource description | `&hw_dart_ane0`; power/clock gate needs a verified provider | +| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider | +| dart-avd0 | disabled resource description | `&hw_dart_avd0`; power/clock gate needs a verified provider | +| sgx | disabled resource description | `&hw_sgx`; power/clock gate needs a verified provider | +| gfx-asc | disabled resource description | `&hw_gfx_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | +| gfx1-asc | disabled resource description | `&hw_gfx1_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | +| admac-leap-ns | disabled resource description | `&hw_admac_leap_ns` | +| admac-aop-ced-ssw | disabled resource description | `&hw_admac_aop_ced_ssw` | +| admac-leap-s | disabled resource description | `&hw_admac_leap_s` | +| admac-hp-mic-ec-proxy | disabled resource description | `&hw_admac_hp_mic_ec_proxy` | +| admac-sllb-ec-proxy | disabled resource description | `&hw_admac_sllb_ec_proxy` | +| dbgCPU | disabled resource description | `&hw_dbgCPU` | +| apple-processor-trace | disabled resource description | `&hw_apple_processor_trace` | diff --git a/docs/devicetree/DT-GAPS-j714s.md b/docs/devicetree/DT-GAPS-j714s.md new file mode 100644 index 0000000000000..7edba310b5ebb --- /dev/null +++ b/docs/devicetree/DT-GAPS-j714s.md @@ -0,0 +1,263 @@ +# J714S device-tree audit + +SoC: T6050. Source: board-specific static ADT. Audited 1066 ADT node records. +The table covers the devices directly attached to the SoC bus. Firmware +service containers, mapper children and transport endpoints are distinguished +from independent MMIO controllers. This is a resource-description draft, +not a claim that all of this board's devices can be driven on Linux. + +New register complexes remain disabled. Their bindings retain the complete +aperture list and AIC interrupt wiring where translation is unambiguous; +DMA mapper references are translated to IOMMU phandles and stream IDs. +No firmware, calibration or register programming values are included. + +## Remaining work + +- Qualify firmware handoff, reset, clocks and power ownership before enabling + a new block. Composite descriptions require review against the eventual + IP-specific driver interface, including shared windows. +- Complete the transport children and firmware-service bindings, pinmux, + port graphs and board wiring. Listing a controller does not cover its + attached peripherals. +- Resolve every provider/routing gap called out below. No guessed + address, interrupt parent or power-domain relationship was substituted. +- Validate on this board; no boot or peripheral test was performed. + +Existing SoC and board support comes from linux#935, linux#945 and +linux#1025; these dependencies are extended, not replaced. The static ADTs +contain template CPU records for absent dies/cores. CPU harvesting and +release addresses must be supplied by the boot loader. + +## SoC-bus coverage + +| ADT device | Description | Location or unresolved detail | +| --- | --- | --- | +| dynamic-pil | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| displaymanager | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| i2c1 | existing description | `&i2c1`; auxiliary apertures still require a driver-specific audit. | +| i2c2 | existing description | `&i2c2`; auxiliary apertures still require a driver-specific audit. | +| iop-voicetrigger-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| isp0 | unresolved binding | An IP-specific binding is still required. | +| isp-exclave-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pwm0 | existing description | `&fpwm0`; auxiliary apertures still require a driver-specific audit. | +| apcie0 | existing description | `&pcie0`; auxiliary apertures still require a driver-specific audit. | +| dart-apcie0 | existing description | `&dart_apcie0`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu0 | unresolved binding | An IP-specific binding is still required. | +| acio-phy-cpu1 | existing description | `&atc1_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu2 | existing description | `&atc2_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu3 | existing description | `&atc3_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| mtp | existing description | `&mtp`; auxiliary apertures still require a driver-specific audit. | +| dart-mtp | existing description | `&mtp_dart`; auxiliary apertures still require a driver-specific audit. | +| mtp-aop-mux | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| eic | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| aod2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| bluetooth | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| centauri | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| display-crossbar0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc0-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc1-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc2-dpxbar | existing description | `&atc2_xbar`; auxiliary apertures still require a driver-specific audit. | +| atc2-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc3-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| mcc | existing description | `&cio_reconfig0`; auxiliary apertures still require a driver-specific audit. | +| aic | existing description | `&aic`; auxiliary apertures still require a driver-specific audit. | +| wdt | existing description | `&wdt`; auxiliary apertures still require a driver-specific audit. | +| error-handler | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| auss-cpu0 | unresolved binding | An IP-specific binding is still required. | +| gpio0 | existing description | `&pinctrl_ap`; auxiliary apertures still require a driver-specific audit. | +| aop-gpio0 | existing description | `&pinctrl_aop`; auxiliary apertures still require a driver-specific audit. | +| aop | existing description | `&aop`; auxiliary apertures still require a driver-specific audit. | +| dart-aop | existing description | `&aop_dart`; auxiliary apertures still require a driver-specific audit. | +| aop-exclave-ioreporting | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pmgr | existing description | `&pmgr0`; auxiliary apertures still require a driver-specific audit. | +| pmp1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-pmp1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| esm | unresolved address translation | No covering parent range; do not guess a physical address. | +| ans | existing description | `&nvme`; auxiliary apertures still require a driver-specific audit. | +| sart-ans | existing description | `&ans_sart`; auxiliary apertures still require a driver-specific audit. | +| smc | existing description | `&smc`; auxiliary apertures still require a driver-specific audit. | +| uart0 | unresolved binding | An IP-specific binding is still required. | +| dockchannel-uart | existing description | `&dockchannel`; auxiliary apertures still require a driver-specific audit. | +| qspi | existing description | `&qspi`; auxiliary apertures still require a driver-specific audit. | +| dp2hdmi-gpio0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc-phy1 | existing description | `&atc1_phy`; auxiliary apertures still require a driver-specific audit. | +| dart-usb1 | existing description | `&usb_drd1_dart_0`; auxiliary apertures still require a driver-specific audit. | +| usb-drd1 | existing description | `&usb_drd1`; auxiliary apertures still require a driver-specific audit. | +| atc-phy2 | existing description | `&atc2_phy`; auxiliary apertures still require a driver-specific audit. | +| dart-usb2 | existing description | `&usb_drd2_dart_0`; auxiliary apertures still require a driver-specific audit. | +| usb-drd2 | existing description | `&usb_drd2`; auxiliary apertures still require a driver-specific audit. | +| atc-phy3 | existing description | `&atc3_phy`; auxiliary apertures still require a driver-specific audit. | +| usb-auss0 | unresolved binding | An IP-specific binding is still required. | +| nub-spmi0 | existing description | `&nub_spmi0`; auxiliary apertures still require a driver-specific audit. | +| nub-spmi-a0 | existing description | `&nub_spmi_a0`; auxiliary apertures still require a driver-specific audit. | +| dcp0-sac-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dispext0 | existing description | `&dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dcpext0 | existing description | `&dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dart-dcpext0 | existing description | `&dart_dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dart-dispext0 | existing description | `&dart_dispext0`; auxiliary apertures still require a driver-specific audit. | +| dp-audio1 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio3 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio4 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17cr1_42 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17cr2_42 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17c_48 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_97 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| mapper-gfx-asc | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| sapt | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| iop-audio-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| admac-base-ns | existing description | `&admac_base_ns`; auxiliary apertures still require a driver-specific audit. | +| audio-shared-dart-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| audio-hp-mic-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| audio-sllb-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| smctempsensor0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| cpu-debug-interface | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| nub-swd0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pwm1 | existing description | `&fpwm0`; auxiliary apertures still require a driver-specific audit. | +| timesync | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| fillmore | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| isp-exclave-s-proxy | unresolved address translation | No covering parent range; do not guess a physical address. | +| msg | unresolved binding | An IP-specific binding is still required. | +| msghub | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_5 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_6 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| device-supports-gf2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| i2c5 | disabled resource description | `&hw_i2c5`; power/clock gate needs a verified provider | +| i2c7 | disabled resource description | `&hw_i2c7`; power/clock gate needs a verified provider | +| i2c0 | disabled resource description | `&hw_i2c0`; power/clock gate needs a verified provider | +| i2c3 | disabled resource description | `&hw_i2c3`; power/clock gate needs a verified provider | +| i2c4 | disabled resource description | `&hw_i2c4`; power/clock gate needs a verified provider | +| i2c6 | disabled resource description | `&hw_i2c6`; power/clock gate needs a verified provider | +| i2c8 | disabled resource description | `&hw_i2c8`; power/clock gate needs a verified provider | +| spi2 | disabled resource description | `&hw_spi2`; power/clock gate needs a verified provider | +| spi4 | disabled resource description | `&hw_spi4`; power/clock gate needs a verified provider | +| nub-spmi-a1 | disabled resource description | `&hw_nub_spmi_a1`; mixed/non-AIC interrupt routing needs decoding | +| dart-isp0 | disabled resource description | `&hw_dart_isp0`; power/clock gate needs a verified provider | +| apcie0-piodma | disabled resource description | `&hw_apcie0_piodma` | +| dart-apcie1 | disabled resource description | `&hw_dart_apcie1` | +| apcie1-piodma | disabled resource description | `&hw_apcie1_piodma` | +| dockchannel-mtp | disabled resource description | `&hw_dockchannel_mtp` | +| secure-repair | disabled resource description | `&hw_secure_repair` | +| apciec0 | disabled resource description | `&hw_apciec0`; power/clock gate needs a verified provider | +| dart-apciec0 | disabled resource description | `&hw_dart_apciec0` | +| apciec0-piodma | disabled resource description | `&hw_apciec0_piodma` | +| acio0 | disabled resource description | `&hw_acio0`; power/clock gate needs a verified provider | +| dart-acio0 | disabled resource description | `&hw_dart_acio0` | +| acio-cpu0 | disabled resource description | `&hw_acio_cpu0`; power/clock gate needs a verified provider | +| apciec1 | disabled resource description | `&hw_apciec1`; power/clock gate needs a verified provider | +| dart-apciec1 | disabled resource description | `&hw_dart_apciec1` | +| apciec1-piodma | disabled resource description | `&hw_apciec1_piodma` | +| acio1 | disabled resource description | `&hw_acio1`; power/clock gate needs a verified provider | +| dart-acio1 | disabled resource description | `&hw_dart_acio1` | +| acio-cpu1 | disabled resource description | `&hw_acio_cpu1`; power/clock gate needs a verified provider | +| apciec2 | disabled resource description | `&hw_apciec2`; power/clock gate needs a verified provider | +| dart-apciec2 | disabled resource description | `&hw_dart_apciec2` | +| apciec2-piodma | disabled resource description | `&hw_apciec2_piodma` | +| acio2 | disabled resource description | `&hw_acio2`; power/clock gate needs a verified provider | +| dart-acio2 | disabled resource description | `&hw_dart_acio2` | +| acio-cpu2 | disabled resource description | `&hw_acio_cpu2`; power/clock gate needs a verified provider | +| atc0-dpxbar | disabled resource description | `&hw_atc0_dpxbar` | +| atc0-dpin0 | disabled resource description | `&hw_atc0_dpin0` | +| atc0-dpin1 | disabled resource description | `&hw_atc0_dpin1` | +| atc0-dpin2 | disabled resource description | `&hw_atc0_dpin2` | +| atc0-dpin3 | disabled resource description | `&hw_atc0_dpin3` | +| atc1-dpxbar | disabled resource description | `&hw_atc1_dpxbar` | +| atc1-dpin0 | disabled resource description | `&hw_atc1_dpin0` | +| atc1-dpin1 | disabled resource description | `&hw_atc1_dpin1` | +| atc1-dpin2 | disabled resource description | `&hw_atc1_dpin2` | +| atc1-dpin3 | disabled resource description | `&hw_atc1_dpin3` | +| atc2-dpin0 | disabled resource description | `&hw_atc2_dpin0` | +| atc2-dpin1 | disabled resource description | `&hw_atc2_dpin1` | +| atc2-dpin2 | disabled resource description | `&hw_atc2_dpin2` | +| atc2-dpin3 | disabled resource description | `&hw_atc2_dpin3` | +| atc3-dpxbar | disabled resource description | `&hw_atc3_dpxbar` | +| aic-timebase | disabled resource description | `&hw_aic_timebase` | +| aes | disabled resource description | `&hw_aes`; power/clock gate needs a verified provider | +| nub-gpio0 | disabled resource description | `&hw_nub_gpio0` | +| aop-exclave-mailbox | disabled resource description | `&hw_aop_exclave_mailbox` | +| aop2 | disabled resource description | `&hw_aop2` | +| event-log-handler | disabled resource description | `&hw_event_log_handler` | +| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider | +| dart-sio | disabled resource description | `&hw_dart_sio`; power/clock gate needs a verified provider | +| pmp0 | disabled resource description | `&hw_pmp0`; power/clock gate needs a verified provider | +| dart-pmp0 | disabled resource description | `&hw_dart_pmp0` | +| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider | +| dart-sep | disabled resource description | `&hw_dart_sep` | +| aon-ptd | disabled resource description | `&hw_aon_ptd` | +| rsm | disabled resource description | `&hw_rsm`; power/clock gate needs a verified provider | +| dart-rsm | disabled resource description | `&hw_dart_rsm` | +| atc-phy0 | disabled resource description | `&hw_atc_phy0`; power/clock gate needs a verified provider | +| dart-usb0 | disabled resource description | `&hw_dart_usb0`; power/clock gate needs a verified provider | +| usb-drd0 | disabled resource description | `&hw_usb_drd0`; power/clock gate needs a verified provider | +| dart-auss0 | disabled resource description | `&hw_dart_auss0` | +| nub-spmi2 | disabled resource description | `&hw_nub_spmi2`; mixed/non-AIC interrupt routing needs decoding | +| nub-spmi3 | disabled resource description | `&hw_nub_spmi3`; mixed/non-AIC interrupt routing needs decoding | +| aop-spmi0 | disabled resource description | `&hw_aop_spmi0`; mixed/non-AIC interrupt routing needs decoding | +| dptx0-aux | disabled resource description | `&hw_dptx0_aux`; power/clock gate needs a verified provider | +| dptx1-aux | disabled resource description | `&hw_dptx1_aux`; power/clock gate needs a verified provider | +| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider | +| dart-disp0 | disabled resource description | `&hw_dart_disp0` | +| dcp0-expert | disabled resource description | `&hw_dcp0_expert` | +| dcp | disabled resource description | `&hw_dcp`; power/clock gate needs a verified provider | +| dart-dcp | disabled resource description | `&hw_dart_dcp` | +| dart-disp0-isoc | disabled resource description | `&hw_dart_disp0_isoc` | +| admac-disp0 | disabled resource description | `&hw_admac_disp0` | +| admac-disp0-ced-ssw | disabled resource description | `&hw_admac_disp0_ced_ssw` | +| dcpext0-expert | disabled resource description | `&hw_dcpext0_expert` | +| dart-dispext0-isoc | disabled resource description | `&hw_dart_dispext0_isoc` | +| admac-dispext0 | disabled resource description | `&hw_admac_dispext0` | +| admac-dispext0-ced-ssw | disabled resource description | `&hw_admac_dispext0_ced_ssw` | +| dispext1 | disabled resource description | `&hw_dispext1` | +| dcpext1-expert | disabled resource description | `&hw_dcpext1_expert` | +| dcpext1 | disabled resource description | `&hw_dcpext1`; power/clock gate needs a verified provider | +| dart-dcpext1 | disabled resource description | `&hw_dart_dcpext1` | +| dart-dispext1 | disabled resource description | `&hw_dart_dispext1` | +| dart-dispext1-isoc | disabled resource description | `&hw_dart_dispext1_isoc` | +| admac-dispext1 | disabled resource description | `&hw_admac_dispext1` | +| admac-dispext1-ced-ssw | disabled resource description | `&hw_admac_dispext1_ced_ssw` | +| dispext2 | disabled resource description | `&hw_dispext2` | +| dcpext2-expert | disabled resource description | `&hw_dcpext2_expert` | +| dcpext2 | disabled resource description | `&hw_dcpext2`; power/clock gate needs a verified provider | +| dart-dcpext2 | disabled resource description | `&hw_dart_dcpext2` | +| dart-dispext2 | disabled resource description | `&hw_dart_dispext2` | +| dart-dispext2-isoc | disabled resource description | `&hw_dart_dispext2_isoc` | +| admac-dispext2 | disabled resource description | `&hw_admac_dispext2` | +| admac-dispext2-ced-ssw | disabled resource description | `&hw_admac_dispext2_ced_ssw` | +| dispext3 | disabled resource description | `&hw_dispext3` | +| dcpext3-expert | disabled resource description | `&hw_dcpext3_expert` | +| dcpext3 | disabled resource description | `&hw_dcpext3`; power/clock gate needs a verified provider | +| dart-dcpext3 | disabled resource description | `&hw_dart_dcpext3` | +| dart-dispext3 | disabled resource description | `&hw_dart_dispext3` | +| dart-dispext3-isoc | disabled resource description | `&hw_dart_dispext3_isoc` | +| admac-dispext3 | disabled resource description | `&hw_admac_dispext3` | +| admac-dispext3-ced-ssw | disabled resource description | `&hw_admac_dispext3_ced_ssw` | +| dart-scaler | disabled resource description | `&hw_dart_scaler`; power/clock gate needs a verified provider | +| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider | +| dart-scaler0 | disabled resource description | `&hw_dart_scaler0`; power/clock gate needs a verified provider | +| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider | +| dart-scaler1 | disabled resource description | `&hw_dart_scaler1`; power/clock gate needs a verified provider | +| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider | +| dart-ave0 | disabled resource description | `&hw_dart_ave0`; power/clock gate needs a verified provider | +| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider | +| dart-ave1 | disabled resource description | `&hw_dart_ave1`; power/clock gate needs a verified provider | +| apr0 | disabled resource description | `&hw_apr0`; power/clock gate needs a verified provider | +| dart-apr0 | disabled resource description | `&hw_dart_apr0`; power/clock gate needs a verified provider | +| dart-apr1 | disabled resource description | `&hw_dart_apr1`; power/clock gate needs a verified provider | +| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider | +| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider | +| dart-jpeg0 | disabled resource description | `&hw_dart_jpeg0`; power/clock gate needs a verified provider | +| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider | +| dart-ane0 | disabled resource description | `&hw_dart_ane0`; power/clock gate needs a verified provider | +| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider | +| dart-avd0 | disabled resource description | `&hw_dart_avd0`; power/clock gate needs a verified provider | +| sgx | disabled resource description | `&hw_sgx`; power/clock gate needs a verified provider | +| gfx-asc | disabled resource description | `&hw_gfx_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | +| gfx1-asc | disabled resource description | `&hw_gfx1_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | +| admac-leap-ns | disabled resource description | `&hw_admac_leap_ns` | +| admac-aop-ced-ssw | disabled resource description | `&hw_admac_aop_ced_ssw` | +| admac-leap-s | disabled resource description | `&hw_admac_leap_s` | +| admac-hp-mic-ec-proxy | disabled resource description | `&hw_admac_hp_mic_ec_proxy` | +| admac-sllb-ec-proxy | disabled resource description | `&hw_admac_sllb_ec_proxy` | +| dbgCPU | disabled resource description | `&hw_dbgCPU` | +| apple-processor-trace | disabled resource description | `&hw_apple_processor_trace` | diff --git a/docs/devicetree/DT-GAPS-j716c.md b/docs/devicetree/DT-GAPS-j716c.md new file mode 100644 index 0000000000000..6e6335f8fc218 --- /dev/null +++ b/docs/devicetree/DT-GAPS-j716c.md @@ -0,0 +1,265 @@ +# J716C device-tree audit + +SoC: T6050. Source: board-specific static ADT. Audited 1071 ADT node records. +The table covers the devices directly attached to the SoC bus. Firmware +service containers, mapper children and transport endpoints are distinguished +from independent MMIO controllers. This is a resource-description draft, +not a claim that all of this board's devices can be driven on Linux. + +New register complexes remain disabled. Their bindings retain the complete +aperture list and AIC interrupt wiring where translation is unambiguous; +DMA mapper references are translated to IOMMU phandles and stream IDs. +No firmware, calibration or register programming values are included. + +## Remaining work + +- Qualify firmware handoff, reset, clocks and power ownership before enabling + a new block. Composite descriptions require review against the eventual + IP-specific driver interface, including shared windows. +- Complete the transport children and firmware-service bindings, pinmux, + port graphs and board wiring. Listing a controller does not cover its + attached peripherals. +- Resolve every provider/routing gap called out below. No guessed + address, interrupt parent or power-domain relationship was substituted. +- Validate on this board; no boot or peripheral test was performed. + +Existing SoC and board support comes from linux#935, linux#945 and +linux#1025; these dependencies are extended, not replaced. The static ADTs +contain template CPU records for absent dies/cores. CPU harvesting and +release addresses must be supplied by the boot loader. + +## SoC-bus coverage + +| ADT device | Description | Location or unresolved detail | +| --- | --- | --- | +| dynamic-pil | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| displaymanager | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| i2c1 | existing description | `&i2c1`; auxiliary apertures still require a driver-specific audit. | +| i2c2 | existing description | `&i2c2`; auxiliary apertures still require a driver-specific audit. | +| iop-voicetrigger-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| isp0 | unresolved binding | An IP-specific binding is still required. | +| isp-exclave-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pwm0 | existing description | `&fpwm0`; auxiliary apertures still require a driver-specific audit. | +| apcie0 | existing description | `&pcie0`; auxiliary apertures still require a driver-specific audit. | +| dart-apcie0 | existing description | `&dart_apcie0`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu0 | unresolved binding | An IP-specific binding is still required. | +| acio-phy-cpu1 | existing description | `&atc1_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu2 | existing description | `&atc2_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu3 | existing description | `&atc3_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| mtp | existing description | `&mtp`; auxiliary apertures still require a driver-specific audit. | +| dart-mtp | existing description | `&mtp_dart`; auxiliary apertures still require a driver-specific audit. | +| mtp-aop-mux | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| eic | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| aod2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| bluetooth | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| centauri | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| display-crossbar0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc0-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc1-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc2-dpxbar | existing description | `&atc2_xbar`; auxiliary apertures still require a driver-specific audit. | +| atc2-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc3-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| mcc | existing description | `&cio_reconfig0`; auxiliary apertures still require a driver-specific audit. | +| aic | existing description | `&aic`; auxiliary apertures still require a driver-specific audit. | +| wdt | existing description | `&wdt`; auxiliary apertures still require a driver-specific audit. | +| error-handler | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| auss-cpu0 | unresolved binding | An IP-specific binding is still required. | +| gpio0 | existing description | `&pinctrl_ap`; auxiliary apertures still require a driver-specific audit. | +| aop-gpio0 | existing description | `&pinctrl_aop`; auxiliary apertures still require a driver-specific audit. | +| aop | existing description | `&aop`; auxiliary apertures still require a driver-specific audit. | +| dart-aop | existing description | `&aop_dart`; auxiliary apertures still require a driver-specific audit. | +| aop-exclave-ioreporting | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pmgr | existing description | `&pmgr0`; auxiliary apertures still require a driver-specific audit. | +| pmp1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-pmp1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| esm | unresolved address translation | No covering parent range; do not guess a physical address. | +| ans | existing description | `&nvme`; auxiliary apertures still require a driver-specific audit. | +| sart-ans | existing description | `&ans_sart`; auxiliary apertures still require a driver-specific audit. | +| smc | existing description | `&smc`; auxiliary apertures still require a driver-specific audit. | +| uart0 | unresolved binding | An IP-specific binding is still required. | +| dockchannel-uart | existing description | `&dockchannel`; auxiliary apertures still require a driver-specific audit. | +| qspi | existing description | `&qspi`; auxiliary apertures still require a driver-specific audit. | +| dp2hdmi-gpio0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc-phy1 | existing description | `&atc1_phy`; auxiliary apertures still require a driver-specific audit. | +| dart-usb1 | existing description | `&usb_drd1_dart_0`; auxiliary apertures still require a driver-specific audit. | +| usb-drd1 | existing description | `&usb_drd1`; auxiliary apertures still require a driver-specific audit. | +| atc-phy2 | existing description | `&atc2_phy`; auxiliary apertures still require a driver-specific audit. | +| dart-usb2 | existing description | `&usb_drd2_dart_0`; auxiliary apertures still require a driver-specific audit. | +| usb-drd2 | existing description | `&usb_drd2`; auxiliary apertures still require a driver-specific audit. | +| atc-phy3 | existing description | `&atc3_phy`; auxiliary apertures still require a driver-specific audit. | +| usb-auss0 | unresolved binding | An IP-specific binding is still required. | +| nub-spmi0 | existing description | `&nub_spmi0`; auxiliary apertures still require a driver-specific audit. | +| nub-spmi-a0 | existing description | `&nub_spmi_a0`; auxiliary apertures still require a driver-specific audit. | +| dcp0-sac-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dispext0 | existing description | `&dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dcpext0 | existing description | `&dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dart-dcpext0 | existing description | `&dart_dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dart-dispext0 | existing description | `&dart_dispext0`; auxiliary apertures still require a driver-specific audit. | +| dp-audio1 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio3 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio4 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17cr1_42 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17cr2_42 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17c_48 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_97 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| mapper-gfx-asc | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| sapt | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| iop-audio-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| admac-base-ns | existing description | `&admac_base_ns`; auxiliary apertures still require a driver-specific audit. | +| audio-shared-dart-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| audio-hp-mic-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| audio-sllb-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| smctempsensor0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| cpu-debug-interface | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| nub-swd0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pwm1 | existing description | `&fpwm0`; auxiliary apertures still require a driver-specific audit. | +| timesync | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| fillmore | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| isp-exclave-s-proxy | unresolved address translation | No covering parent range; do not guess a physical address. | +| msg | unresolved binding | An IP-specific binding is still required. | +| msghub | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_5 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_6 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| device-supports-gf2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| nub-spmi1 | disabled resource description | `&hw_nub_spmi1`; mixed/non-AIC interrupt routing needs decoding | +| nub-spmi4 | disabled resource description | `&hw_nub_spmi4`; mixed/non-AIC interrupt routing needs decoding | +| i2c5 | disabled resource description | `&hw_i2c5`; power/clock gate needs a verified provider | +| i2c7 | disabled resource description | `&hw_i2c7`; power/clock gate needs a verified provider | +| i2c0 | disabled resource description | `&hw_i2c0`; power/clock gate needs a verified provider | +| i2c3 | disabled resource description | `&hw_i2c3`; power/clock gate needs a verified provider | +| i2c4 | disabled resource description | `&hw_i2c4`; power/clock gate needs a verified provider | +| i2c6 | disabled resource description | `&hw_i2c6`; power/clock gate needs a verified provider | +| i2c8 | disabled resource description | `&hw_i2c8`; power/clock gate needs a verified provider | +| spi2 | disabled resource description | `&hw_spi2`; power/clock gate needs a verified provider | +| spi4 | disabled resource description | `&hw_spi4`; power/clock gate needs a verified provider | +| nub-spmi-a1 | disabled resource description | `&hw_nub_spmi_a1`; mixed/non-AIC interrupt routing needs decoding | +| dart-isp0 | disabled resource description | `&hw_dart_isp0`; power/clock gate needs a verified provider | +| apcie0-piodma | disabled resource description | `&hw_apcie0_piodma` | +| dart-apcie1 | disabled resource description | `&hw_dart_apcie1` | +| apcie1-piodma | disabled resource description | `&hw_apcie1_piodma` | +| dockchannel-mtp | disabled resource description | `&hw_dockchannel_mtp` | +| secure-repair | disabled resource description | `&hw_secure_repair` | +| apciec0 | disabled resource description | `&hw_apciec0`; power/clock gate needs a verified provider | +| dart-apciec0 | disabled resource description | `&hw_dart_apciec0` | +| apciec0-piodma | disabled resource description | `&hw_apciec0_piodma` | +| acio0 | disabled resource description | `&hw_acio0`; power/clock gate needs a verified provider | +| dart-acio0 | disabled resource description | `&hw_dart_acio0` | +| acio-cpu0 | disabled resource description | `&hw_acio_cpu0`; power/clock gate needs a verified provider | +| apciec1 | disabled resource description | `&hw_apciec1`; power/clock gate needs a verified provider | +| dart-apciec1 | disabled resource description | `&hw_dart_apciec1` | +| apciec1-piodma | disabled resource description | `&hw_apciec1_piodma` | +| acio1 | disabled resource description | `&hw_acio1`; power/clock gate needs a verified provider | +| dart-acio1 | disabled resource description | `&hw_dart_acio1` | +| acio-cpu1 | disabled resource description | `&hw_acio_cpu1`; power/clock gate needs a verified provider | +| apciec2 | disabled resource description | `&hw_apciec2`; power/clock gate needs a verified provider | +| dart-apciec2 | disabled resource description | `&hw_dart_apciec2` | +| apciec2-piodma | disabled resource description | `&hw_apciec2_piodma` | +| acio2 | disabled resource description | `&hw_acio2`; power/clock gate needs a verified provider | +| dart-acio2 | disabled resource description | `&hw_dart_acio2` | +| acio-cpu2 | disabled resource description | `&hw_acio_cpu2`; power/clock gate needs a verified provider | +| atc0-dpxbar | disabled resource description | `&hw_atc0_dpxbar` | +| atc0-dpin0 | disabled resource description | `&hw_atc0_dpin0` | +| atc0-dpin1 | disabled resource description | `&hw_atc0_dpin1` | +| atc0-dpin2 | disabled resource description | `&hw_atc0_dpin2` | +| atc0-dpin3 | disabled resource description | `&hw_atc0_dpin3` | +| atc1-dpxbar | disabled resource description | `&hw_atc1_dpxbar` | +| atc1-dpin0 | disabled resource description | `&hw_atc1_dpin0` | +| atc1-dpin1 | disabled resource description | `&hw_atc1_dpin1` | +| atc1-dpin2 | disabled resource description | `&hw_atc1_dpin2` | +| atc1-dpin3 | disabled resource description | `&hw_atc1_dpin3` | +| atc2-dpin0 | disabled resource description | `&hw_atc2_dpin0` | +| atc2-dpin1 | disabled resource description | `&hw_atc2_dpin1` | +| atc2-dpin2 | disabled resource description | `&hw_atc2_dpin2` | +| atc2-dpin3 | disabled resource description | `&hw_atc2_dpin3` | +| atc3-dpxbar | disabled resource description | `&hw_atc3_dpxbar` | +| aic-timebase | disabled resource description | `&hw_aic_timebase` | +| aes | disabled resource description | `&hw_aes`; power/clock gate needs a verified provider | +| nub-gpio0 | disabled resource description | `&hw_nub_gpio0` | +| aop-exclave-mailbox | disabled resource description | `&hw_aop_exclave_mailbox` | +| aop2 | disabled resource description | `&hw_aop2` | +| event-log-handler | disabled resource description | `&hw_event_log_handler` | +| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider | +| dart-sio | disabled resource description | `&hw_dart_sio`; power/clock gate needs a verified provider | +| pmp0 | disabled resource description | `&hw_pmp0`; power/clock gate needs a verified provider | +| dart-pmp0 | disabled resource description | `&hw_dart_pmp0` | +| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider | +| dart-sep | disabled resource description | `&hw_dart_sep` | +| aon-ptd | disabled resource description | `&hw_aon_ptd` | +| rsm | disabled resource description | `&hw_rsm`; power/clock gate needs a verified provider | +| dart-rsm | disabled resource description | `&hw_dart_rsm` | +| atc-phy0 | disabled resource description | `&hw_atc_phy0`; power/clock gate needs a verified provider | +| dart-usb0 | disabled resource description | `&hw_dart_usb0`; power/clock gate needs a verified provider | +| usb-drd0 | disabled resource description | `&hw_usb_drd0`; power/clock gate needs a verified provider | +| dart-auss0 | disabled resource description | `&hw_dart_auss0` | +| nub-spmi2 | disabled resource description | `&hw_nub_spmi2`; mixed/non-AIC interrupt routing needs decoding | +| nub-spmi3 | disabled resource description | `&hw_nub_spmi3`; mixed/non-AIC interrupt routing needs decoding | +| aop-spmi0 | disabled resource description | `&hw_aop_spmi0`; mixed/non-AIC interrupt routing needs decoding | +| dptx0-aux | disabled resource description | `&hw_dptx0_aux`; power/clock gate needs a verified provider | +| dptx1-aux | disabled resource description | `&hw_dptx1_aux`; power/clock gate needs a verified provider | +| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider | +| dart-disp0 | disabled resource description | `&hw_dart_disp0` | +| dcp0-expert | disabled resource description | `&hw_dcp0_expert` | +| dcp | disabled resource description | `&hw_dcp`; power/clock gate needs a verified provider | +| dart-dcp | disabled resource description | `&hw_dart_dcp` | +| dart-disp0-isoc | disabled resource description | `&hw_dart_disp0_isoc` | +| admac-disp0 | disabled resource description | `&hw_admac_disp0` | +| admac-disp0-ced-ssw | disabled resource description | `&hw_admac_disp0_ced_ssw` | +| dcpext0-expert | disabled resource description | `&hw_dcpext0_expert` | +| dart-dispext0-isoc | disabled resource description | `&hw_dart_dispext0_isoc` | +| admac-dispext0 | disabled resource description | `&hw_admac_dispext0` | +| admac-dispext0-ced-ssw | disabled resource description | `&hw_admac_dispext0_ced_ssw` | +| dispext1 | disabled resource description | `&hw_dispext1` | +| dcpext1-expert | disabled resource description | `&hw_dcpext1_expert` | +| dcpext1 | disabled resource description | `&hw_dcpext1`; power/clock gate needs a verified provider | +| dart-dcpext1 | disabled resource description | `&hw_dart_dcpext1` | +| dart-dispext1 | disabled resource description | `&hw_dart_dispext1` | +| dart-dispext1-isoc | disabled resource description | `&hw_dart_dispext1_isoc` | +| admac-dispext1 | disabled resource description | `&hw_admac_dispext1` | +| admac-dispext1-ced-ssw | disabled resource description | `&hw_admac_dispext1_ced_ssw` | +| dispext2 | disabled resource description | `&hw_dispext2` | +| dcpext2-expert | disabled resource description | `&hw_dcpext2_expert` | +| dcpext2 | disabled resource description | `&hw_dcpext2`; power/clock gate needs a verified provider | +| dart-dcpext2 | disabled resource description | `&hw_dart_dcpext2` | +| dart-dispext2 | disabled resource description | `&hw_dart_dispext2` | +| dart-dispext2-isoc | disabled resource description | `&hw_dart_dispext2_isoc` | +| admac-dispext2 | disabled resource description | `&hw_admac_dispext2` | +| admac-dispext2-ced-ssw | disabled resource description | `&hw_admac_dispext2_ced_ssw` | +| dispext3 | disabled resource description | `&hw_dispext3` | +| dcpext3-expert | disabled resource description | `&hw_dcpext3_expert` | +| dcpext3 | disabled resource description | `&hw_dcpext3`; power/clock gate needs a verified provider | +| dart-dcpext3 | disabled resource description | `&hw_dart_dcpext3` | +| dart-dispext3 | disabled resource description | `&hw_dart_dispext3` | +| dart-dispext3-isoc | disabled resource description | `&hw_dart_dispext3_isoc` | +| admac-dispext3 | disabled resource description | `&hw_admac_dispext3` | +| admac-dispext3-ced-ssw | disabled resource description | `&hw_admac_dispext3_ced_ssw` | +| dart-scaler | disabled resource description | `&hw_dart_scaler`; power/clock gate needs a verified provider | +| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider | +| dart-scaler0 | disabled resource description | `&hw_dart_scaler0`; power/clock gate needs a verified provider | +| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider | +| dart-scaler1 | disabled resource description | `&hw_dart_scaler1`; power/clock gate needs a verified provider | +| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider | +| dart-ave0 | disabled resource description | `&hw_dart_ave0`; power/clock gate needs a verified provider | +| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider | +| dart-ave1 | disabled resource description | `&hw_dart_ave1`; power/clock gate needs a verified provider | +| apr0 | disabled resource description | `&hw_apr0`; power/clock gate needs a verified provider | +| dart-apr0 | disabled resource description | `&hw_dart_apr0`; power/clock gate needs a verified provider | +| dart-apr1 | disabled resource description | `&hw_dart_apr1`; power/clock gate needs a verified provider | +| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider | +| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider | +| dart-jpeg0 | disabled resource description | `&hw_dart_jpeg0`; power/clock gate needs a verified provider | +| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider | +| dart-ane0 | disabled resource description | `&hw_dart_ane0`; power/clock gate needs a verified provider | +| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider | +| dart-avd0 | disabled resource description | `&hw_dart_avd0`; power/clock gate needs a verified provider | +| sgx | disabled resource description | `&hw_sgx`; power/clock gate needs a verified provider | +| gfx-asc | disabled resource description | `&hw_gfx_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | +| gfx1-asc | disabled resource description | `&hw_gfx1_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | +| admac-leap-ns | disabled resource description | `&hw_admac_leap_ns` | +| admac-aop-ced-ssw | disabled resource description | `&hw_admac_aop_ced_ssw` | +| admac-leap-s | disabled resource description | `&hw_admac_leap_s` | +| admac-hp-mic-ec-proxy | disabled resource description | `&hw_admac_hp_mic_ec_proxy` | +| admac-sllb-ec-proxy | disabled resource description | `&hw_admac_sllb_ec_proxy` | +| dbgCPU | disabled resource description | `&hw_dbgCPU` | +| apple-processor-trace | disabled resource description | `&hw_apple_processor_trace` | diff --git a/docs/devicetree/DT-GAPS-j716s.md b/docs/devicetree/DT-GAPS-j716s.md new file mode 100644 index 0000000000000..0376ade940a6b --- /dev/null +++ b/docs/devicetree/DT-GAPS-j716s.md @@ -0,0 +1,263 @@ +# J716S device-tree audit + +SoC: T6050. Source: board-specific static ADT. Audited 1066 ADT node records. +The table covers the devices directly attached to the SoC bus. Firmware +service containers, mapper children and transport endpoints are distinguished +from independent MMIO controllers. This is a resource-description draft, +not a claim that all of this board's devices can be driven on Linux. + +New register complexes remain disabled. Their bindings retain the complete +aperture list and AIC interrupt wiring where translation is unambiguous; +DMA mapper references are translated to IOMMU phandles and stream IDs. +No firmware, calibration or register programming values are included. + +## Remaining work + +- Qualify firmware handoff, reset, clocks and power ownership before enabling + a new block. Composite descriptions require review against the eventual + IP-specific driver interface, including shared windows. +- Complete the transport children and firmware-service bindings, pinmux, + port graphs and board wiring. Listing a controller does not cover its + attached peripherals. +- Resolve every provider/routing gap called out below. No guessed + address, interrupt parent or power-domain relationship was substituted. +- Validate on this board; no boot or peripheral test was performed. + +Existing SoC and board support comes from linux#935, linux#945 and +linux#1025; these dependencies are extended, not replaced. The static ADTs +contain template CPU records for absent dies/cores. CPU harvesting and +release addresses must be supplied by the boot loader. + +## SoC-bus coverage + +| ADT device | Description | Location or unresolved detail | +| --- | --- | --- | +| dynamic-pil | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| displaymanager | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| i2c1 | existing description | `&i2c1`; auxiliary apertures still require a driver-specific audit. | +| i2c2 | existing description | `&i2c2`; auxiliary apertures still require a driver-specific audit. | +| iop-voicetrigger-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| isp0 | unresolved binding | An IP-specific binding is still required. | +| isp-exclave-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pwm0 | existing description | `&fpwm0`; auxiliary apertures still require a driver-specific audit. | +| apcie0 | existing description | `&pcie0`; auxiliary apertures still require a driver-specific audit. | +| dart-apcie0 | existing description | `&dart_apcie0`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu0 | unresolved binding | An IP-specific binding is still required. | +| acio-phy-cpu1 | existing description | `&atc1_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu2 | existing description | `&atc2_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu3 | existing description | `&atc3_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| mtp | existing description | `&mtp`; auxiliary apertures still require a driver-specific audit. | +| dart-mtp | existing description | `&mtp_dart`; auxiliary apertures still require a driver-specific audit. | +| mtp-aop-mux | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| eic | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| aod2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| bluetooth | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| centauri | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| display-crossbar0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc0-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc1-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc2-dpxbar | existing description | `&atc2_xbar`; auxiliary apertures still require a driver-specific audit. | +| atc2-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc3-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| mcc | existing description | `&cio_reconfig0`; auxiliary apertures still require a driver-specific audit. | +| aic | existing description | `&aic`; auxiliary apertures still require a driver-specific audit. | +| wdt | existing description | `&wdt`; auxiliary apertures still require a driver-specific audit. | +| error-handler | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| auss-cpu0 | unresolved binding | An IP-specific binding is still required. | +| gpio0 | existing description | `&pinctrl_ap`; auxiliary apertures still require a driver-specific audit. | +| aop-gpio0 | existing description | `&pinctrl_aop`; auxiliary apertures still require a driver-specific audit. | +| aop | existing description | `&aop`; auxiliary apertures still require a driver-specific audit. | +| dart-aop | existing description | `&aop_dart`; auxiliary apertures still require a driver-specific audit. | +| aop-exclave-ioreporting | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pmgr | existing description | `&pmgr0`; auxiliary apertures still require a driver-specific audit. | +| pmp1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-pmp1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| esm | unresolved address translation | No covering parent range; do not guess a physical address. | +| ans | existing description | `&nvme`; auxiliary apertures still require a driver-specific audit. | +| sart-ans | existing description | `&ans_sart`; auxiliary apertures still require a driver-specific audit. | +| smc | existing description | `&smc`; auxiliary apertures still require a driver-specific audit. | +| uart0 | unresolved binding | An IP-specific binding is still required. | +| dockchannel-uart | existing description | `&dockchannel`; auxiliary apertures still require a driver-specific audit. | +| qspi | existing description | `&qspi`; auxiliary apertures still require a driver-specific audit. | +| dp2hdmi-gpio0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc-phy1 | existing description | `&atc1_phy`; auxiliary apertures still require a driver-specific audit. | +| dart-usb1 | existing description | `&usb_drd1_dart_0`; auxiliary apertures still require a driver-specific audit. | +| usb-drd1 | existing description | `&usb_drd1`; auxiliary apertures still require a driver-specific audit. | +| atc-phy2 | existing description | `&atc2_phy`; auxiliary apertures still require a driver-specific audit. | +| dart-usb2 | existing description | `&usb_drd2_dart_0`; auxiliary apertures still require a driver-specific audit. | +| usb-drd2 | existing description | `&usb_drd2`; auxiliary apertures still require a driver-specific audit. | +| atc-phy3 | existing description | `&atc3_phy`; auxiliary apertures still require a driver-specific audit. | +| usb-auss0 | unresolved binding | An IP-specific binding is still required. | +| nub-spmi0 | existing description | `&nub_spmi0`; auxiliary apertures still require a driver-specific audit. | +| nub-spmi-a0 | existing description | `&nub_spmi_a0`; auxiliary apertures still require a driver-specific audit. | +| dcp0-sac-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dispext0 | existing description | `&dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dcpext0 | existing description | `&dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dart-dcpext0 | existing description | `&dart_dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dart-dispext0 | existing description | `&dart_dispext0`; auxiliary apertures still require a driver-specific audit. | +| dp-audio1 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio3 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio4 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17cr1_42 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17cr2_42 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17c_48 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_97 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| mapper-gfx-asc | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| sapt | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| iop-audio-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| admac-base-ns | existing description | `&admac_base_ns`; auxiliary apertures still require a driver-specific audit. | +| audio-shared-dart-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| audio-hp-mic-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| audio-sllb-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| smctempsensor0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| cpu-debug-interface | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| nub-swd0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pwm1 | existing description | `&fpwm0`; auxiliary apertures still require a driver-specific audit. | +| timesync | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| fillmore | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| isp-exclave-s-proxy | unresolved address translation | No covering parent range; do not guess a physical address. | +| msg | unresolved binding | An IP-specific binding is still required. | +| msghub | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_5 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_6 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| device-supports-gf2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| i2c5 | disabled resource description | `&hw_i2c5`; power/clock gate needs a verified provider | +| i2c7 | disabled resource description | `&hw_i2c7`; power/clock gate needs a verified provider | +| i2c0 | disabled resource description | `&hw_i2c0`; power/clock gate needs a verified provider | +| i2c3 | disabled resource description | `&hw_i2c3`; power/clock gate needs a verified provider | +| i2c4 | disabled resource description | `&hw_i2c4`; power/clock gate needs a verified provider | +| i2c6 | disabled resource description | `&hw_i2c6`; power/clock gate needs a verified provider | +| i2c8 | disabled resource description | `&hw_i2c8`; power/clock gate needs a verified provider | +| spi2 | disabled resource description | `&hw_spi2`; power/clock gate needs a verified provider | +| spi4 | disabled resource description | `&hw_spi4`; power/clock gate needs a verified provider | +| nub-spmi-a1 | disabled resource description | `&hw_nub_spmi_a1`; mixed/non-AIC interrupt routing needs decoding | +| dart-isp0 | disabled resource description | `&hw_dart_isp0`; power/clock gate needs a verified provider | +| apcie0-piodma | disabled resource description | `&hw_apcie0_piodma` | +| dart-apcie1 | disabled resource description | `&hw_dart_apcie1` | +| apcie1-piodma | disabled resource description | `&hw_apcie1_piodma` | +| dockchannel-mtp | disabled resource description | `&hw_dockchannel_mtp` | +| secure-repair | disabled resource description | `&hw_secure_repair` | +| apciec0 | disabled resource description | `&hw_apciec0`; power/clock gate needs a verified provider | +| dart-apciec0 | disabled resource description | `&hw_dart_apciec0` | +| apciec0-piodma | disabled resource description | `&hw_apciec0_piodma` | +| acio0 | disabled resource description | `&hw_acio0`; power/clock gate needs a verified provider | +| dart-acio0 | disabled resource description | `&hw_dart_acio0` | +| acio-cpu0 | disabled resource description | `&hw_acio_cpu0`; power/clock gate needs a verified provider | +| apciec1 | disabled resource description | `&hw_apciec1`; power/clock gate needs a verified provider | +| dart-apciec1 | disabled resource description | `&hw_dart_apciec1` | +| apciec1-piodma | disabled resource description | `&hw_apciec1_piodma` | +| acio1 | disabled resource description | `&hw_acio1`; power/clock gate needs a verified provider | +| dart-acio1 | disabled resource description | `&hw_dart_acio1` | +| acio-cpu1 | disabled resource description | `&hw_acio_cpu1`; power/clock gate needs a verified provider | +| apciec2 | disabled resource description | `&hw_apciec2`; power/clock gate needs a verified provider | +| dart-apciec2 | disabled resource description | `&hw_dart_apciec2` | +| apciec2-piodma | disabled resource description | `&hw_apciec2_piodma` | +| acio2 | disabled resource description | `&hw_acio2`; power/clock gate needs a verified provider | +| dart-acio2 | disabled resource description | `&hw_dart_acio2` | +| acio-cpu2 | disabled resource description | `&hw_acio_cpu2`; power/clock gate needs a verified provider | +| atc0-dpxbar | disabled resource description | `&hw_atc0_dpxbar` | +| atc0-dpin0 | disabled resource description | `&hw_atc0_dpin0` | +| atc0-dpin1 | disabled resource description | `&hw_atc0_dpin1` | +| atc0-dpin2 | disabled resource description | `&hw_atc0_dpin2` | +| atc0-dpin3 | disabled resource description | `&hw_atc0_dpin3` | +| atc1-dpxbar | disabled resource description | `&hw_atc1_dpxbar` | +| atc1-dpin0 | disabled resource description | `&hw_atc1_dpin0` | +| atc1-dpin1 | disabled resource description | `&hw_atc1_dpin1` | +| atc1-dpin2 | disabled resource description | `&hw_atc1_dpin2` | +| atc1-dpin3 | disabled resource description | `&hw_atc1_dpin3` | +| atc2-dpin0 | disabled resource description | `&hw_atc2_dpin0` | +| atc2-dpin1 | disabled resource description | `&hw_atc2_dpin1` | +| atc2-dpin2 | disabled resource description | `&hw_atc2_dpin2` | +| atc2-dpin3 | disabled resource description | `&hw_atc2_dpin3` | +| atc3-dpxbar | disabled resource description | `&hw_atc3_dpxbar` | +| aic-timebase | disabled resource description | `&hw_aic_timebase` | +| aes | disabled resource description | `&hw_aes`; power/clock gate needs a verified provider | +| nub-gpio0 | disabled resource description | `&hw_nub_gpio0` | +| aop-exclave-mailbox | disabled resource description | `&hw_aop_exclave_mailbox` | +| aop2 | disabled resource description | `&hw_aop2` | +| event-log-handler | disabled resource description | `&hw_event_log_handler` | +| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider | +| dart-sio | disabled resource description | `&hw_dart_sio`; power/clock gate needs a verified provider | +| pmp0 | disabled resource description | `&hw_pmp0`; power/clock gate needs a verified provider | +| dart-pmp0 | disabled resource description | `&hw_dart_pmp0` | +| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider | +| dart-sep | disabled resource description | `&hw_dart_sep` | +| aon-ptd | disabled resource description | `&hw_aon_ptd` | +| rsm | disabled resource description | `&hw_rsm`; power/clock gate needs a verified provider | +| dart-rsm | disabled resource description | `&hw_dart_rsm` | +| atc-phy0 | disabled resource description | `&hw_atc_phy0`; power/clock gate needs a verified provider | +| dart-usb0 | disabled resource description | `&hw_dart_usb0`; power/clock gate needs a verified provider | +| usb-drd0 | disabled resource description | `&hw_usb_drd0`; power/clock gate needs a verified provider | +| dart-auss0 | disabled resource description | `&hw_dart_auss0` | +| nub-spmi2 | disabled resource description | `&hw_nub_spmi2`; mixed/non-AIC interrupt routing needs decoding | +| nub-spmi3 | disabled resource description | `&hw_nub_spmi3`; mixed/non-AIC interrupt routing needs decoding | +| aop-spmi0 | disabled resource description | `&hw_aop_spmi0`; mixed/non-AIC interrupt routing needs decoding | +| dptx0-aux | disabled resource description | `&hw_dptx0_aux`; power/clock gate needs a verified provider | +| dptx1-aux | disabled resource description | `&hw_dptx1_aux`; power/clock gate needs a verified provider | +| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider | +| dart-disp0 | disabled resource description | `&hw_dart_disp0` | +| dcp0-expert | disabled resource description | `&hw_dcp0_expert` | +| dcp | disabled resource description | `&hw_dcp`; power/clock gate needs a verified provider | +| dart-dcp | disabled resource description | `&hw_dart_dcp` | +| dart-disp0-isoc | disabled resource description | `&hw_dart_disp0_isoc` | +| admac-disp0 | disabled resource description | `&hw_admac_disp0` | +| admac-disp0-ced-ssw | disabled resource description | `&hw_admac_disp0_ced_ssw` | +| dcpext0-expert | disabled resource description | `&hw_dcpext0_expert` | +| dart-dispext0-isoc | disabled resource description | `&hw_dart_dispext0_isoc` | +| admac-dispext0 | disabled resource description | `&hw_admac_dispext0` | +| admac-dispext0-ced-ssw | disabled resource description | `&hw_admac_dispext0_ced_ssw` | +| dispext1 | disabled resource description | `&hw_dispext1` | +| dcpext1-expert | disabled resource description | `&hw_dcpext1_expert` | +| dcpext1 | disabled resource description | `&hw_dcpext1`; power/clock gate needs a verified provider | +| dart-dcpext1 | disabled resource description | `&hw_dart_dcpext1` | +| dart-dispext1 | disabled resource description | `&hw_dart_dispext1` | +| dart-dispext1-isoc | disabled resource description | `&hw_dart_dispext1_isoc` | +| admac-dispext1 | disabled resource description | `&hw_admac_dispext1` | +| admac-dispext1-ced-ssw | disabled resource description | `&hw_admac_dispext1_ced_ssw` | +| dispext2 | disabled resource description | `&hw_dispext2` | +| dcpext2-expert | disabled resource description | `&hw_dcpext2_expert` | +| dcpext2 | disabled resource description | `&hw_dcpext2`; power/clock gate needs a verified provider | +| dart-dcpext2 | disabled resource description | `&hw_dart_dcpext2` | +| dart-dispext2 | disabled resource description | `&hw_dart_dispext2` | +| dart-dispext2-isoc | disabled resource description | `&hw_dart_dispext2_isoc` | +| admac-dispext2 | disabled resource description | `&hw_admac_dispext2` | +| admac-dispext2-ced-ssw | disabled resource description | `&hw_admac_dispext2_ced_ssw` | +| dispext3 | disabled resource description | `&hw_dispext3` | +| dcpext3-expert | disabled resource description | `&hw_dcpext3_expert` | +| dcpext3 | disabled resource description | `&hw_dcpext3`; power/clock gate needs a verified provider | +| dart-dcpext3 | disabled resource description | `&hw_dart_dcpext3` | +| dart-dispext3 | disabled resource description | `&hw_dart_dispext3` | +| dart-dispext3-isoc | disabled resource description | `&hw_dart_dispext3_isoc` | +| admac-dispext3 | disabled resource description | `&hw_admac_dispext3` | +| admac-dispext3-ced-ssw | disabled resource description | `&hw_admac_dispext3_ced_ssw` | +| dart-scaler | disabled resource description | `&hw_dart_scaler`; power/clock gate needs a verified provider | +| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider | +| dart-scaler0 | disabled resource description | `&hw_dart_scaler0`; power/clock gate needs a verified provider | +| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider | +| dart-scaler1 | disabled resource description | `&hw_dart_scaler1`; power/clock gate needs a verified provider | +| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider | +| dart-ave0 | disabled resource description | `&hw_dart_ave0`; power/clock gate needs a verified provider | +| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider | +| dart-ave1 | disabled resource description | `&hw_dart_ave1`; power/clock gate needs a verified provider | +| apr0 | disabled resource description | `&hw_apr0`; power/clock gate needs a verified provider | +| dart-apr0 | disabled resource description | `&hw_dart_apr0`; power/clock gate needs a verified provider | +| dart-apr1 | disabled resource description | `&hw_dart_apr1`; power/clock gate needs a verified provider | +| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider | +| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider | +| dart-jpeg0 | disabled resource description | `&hw_dart_jpeg0`; power/clock gate needs a verified provider | +| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider | +| dart-ane0 | disabled resource description | `&hw_dart_ane0`; power/clock gate needs a verified provider | +| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider | +| dart-avd0 | disabled resource description | `&hw_dart_avd0`; power/clock gate needs a verified provider | +| sgx | disabled resource description | `&hw_sgx`; power/clock gate needs a verified provider | +| gfx-asc | disabled resource description | `&hw_gfx_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | +| gfx1-asc | disabled resource description | `&hw_gfx1_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | +| admac-leap-ns | disabled resource description | `&hw_admac_leap_ns` | +| admac-aop-ced-ssw | disabled resource description | `&hw_admac_aop_ced_ssw` | +| admac-leap-s | disabled resource description | `&hw_admac_leap_s` | +| admac-hp-mic-ec-proxy | disabled resource description | `&hw_admac_hp_mic_ec_proxy` | +| admac-sllb-ec-proxy | disabled resource description | `&hw_admac_sllb_ec_proxy` | +| dbgCPU | disabled resource description | `&hw_dbgCPU` | +| apple-processor-trace | disabled resource description | `&hw_apple_processor_trace` | diff --git a/docs/devicetree/DT-GAPS-j775c.md b/docs/devicetree/DT-GAPS-j775c.md new file mode 100644 index 0000000000000..2c31cd524ccd5 --- /dev/null +++ b/docs/devicetree/DT-GAPS-j775c.md @@ -0,0 +1,261 @@ +# J775C device-tree audit + +SoC: T6050. Source: board-specific static ADT. Audited 1045 ADT node records. +The table covers the devices directly attached to the SoC bus. Firmware +service containers, mapper children and transport endpoints are distinguished +from independent MMIO controllers. This is a resource-description draft, +not a claim that all of this board's devices can be driven on Linux. + +New register complexes remain disabled. Their bindings retain the complete +aperture list and AIC interrupt wiring where translation is unambiguous; +DMA mapper references are translated to IOMMU phandles and stream IDs. +No firmware, calibration or register programming values are included. + +## Remaining work + +- Qualify firmware handoff, reset, clocks and power ownership before enabling + a new block. Composite descriptions require review against the eventual + IP-specific driver interface, including shared windows. +- Complete the transport children and firmware-service bindings, pinmux, + port graphs and board wiring. Listing a controller does not cover its + attached peripherals. +- Resolve every provider/routing gap called out below. No guessed + address, interrupt parent or power-domain relationship was substituted. +- Validate on this board; no boot or peripheral test was performed. + +Existing SoC and board support comes from linux#935, linux#945 and +linux#1025; these dependencies are extended, not replaced. The static ADTs +contain template CPU records for absent dies/cores. CPU harvesting and +release addresses must be supplied by the boot loader. + +## SoC-bus coverage + +| ADT device | Description | Location or unresolved detail | +| --- | --- | --- | +| displaymanager | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| i2c1 | existing description | `&i2c1`; auxiliary apertures still require a driver-specific audit. | +| i2c2 | existing description | `&i2c2`; auxiliary apertures still require a driver-specific audit. | +| apcie0 | existing description | `&pcie0`; auxiliary apertures still require a driver-specific audit. | +| dart-apcie0 | existing description | `&dart_apcie0`; auxiliary apertures still require a driver-specific audit. | +| dart-apcie2 | existing description | `&dart_apcie2`; auxiliary apertures still require a driver-specific audit. | +| lan0-sync | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dart-apcie3 | existing description | `&dart_apcie3`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu0 | unresolved binding | An IP-specific binding is still required. | +| acio-phy-cpu1 | existing description | `&atc1_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu2 | existing description | `&atc2_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu3 | existing description | `&atc3_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| aod2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| acio-cpu3 | existing description | `&usb4_3_mbox`; auxiliary apertures still require a driver-specific audit. | +| bluetooth | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| centauri | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| display-crossbar0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc0-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc1-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc2-dpxbar | existing description | `&atc2_xbar`; auxiliary apertures still require a driver-specific audit. | +| atc2-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc3-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| mcc | existing description | `&cio_reconfig0`; auxiliary apertures still require a driver-specific audit. | +| aic | existing description | `&aic`; auxiliary apertures still require a driver-specific audit. | +| wdt | existing description | `&wdt`; auxiliary apertures still require a driver-specific audit. | +| error-handler | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| auss-cpu0 | unresolved binding | An IP-specific binding is still required. | +| gpio0 | existing description | `&pinctrl_ap`; auxiliary apertures still require a driver-specific audit. | +| aop-gpio0 | existing description | `&pinctrl_aop`; auxiliary apertures still require a driver-specific audit. | +| aop | existing description | `&aop`; auxiliary apertures still require a driver-specific audit. | +| dart-aop | existing description | `&aop_dart`; auxiliary apertures still require a driver-specific audit. | +| aop-exclave-ioreporting | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pmgr | existing description | `&pmgr0`; auxiliary apertures still require a driver-specific audit. | +| pmp1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-pmp1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| esm | unresolved address translation | No covering parent range; do not guess a physical address. | +| ans | existing description | `&nvme`; auxiliary apertures still require a driver-specific audit. | +| sart-ans | existing description | `&ans_sart`; auxiliary apertures still require a driver-specific audit. | +| smc | existing description | `&smc`; auxiliary apertures still require a driver-specific audit. | +| uart0 | unresolved binding | An IP-specific binding is still required. | +| dockchannel-uart | existing description | `&dockchannel`; auxiliary apertures still require a driver-specific audit. | +| qspi | existing description | `&qspi`; auxiliary apertures still require a driver-specific audit. | +| dp2hdmi-gpio0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| lpdptx-phy0 | unresolved binding | An IP-specific binding is still required. | +| atc-phy1 | existing description | `&atc1_phy`; auxiliary apertures still require a driver-specific audit. | +| dart-usb1 | existing description | `&usb_drd1_dart_0`; auxiliary apertures still require a driver-specific audit. | +| usb-drd1 | existing description | `&usb_drd1`; auxiliary apertures still require a driver-specific audit. | +| atc-phy2 | existing description | `&atc2_phy`; auxiliary apertures still require a driver-specific audit. | +| dart-usb2 | existing description | `&usb_drd2_dart_0`; auxiliary apertures still require a driver-specific audit. | +| usb-drd2 | existing description | `&usb_drd2`; auxiliary apertures still require a driver-specific audit. | +| atc-phy3 | existing description | `&atc3_phy`; auxiliary apertures still require a driver-specific audit. | +| dart-usb3 | existing description | `&usb_drd3_dart_0`; auxiliary apertures still require a driver-specific audit. | +| usb-drd3 | existing description | `&usb_drd3`; auxiliary apertures still require a driver-specific audit. | +| usb-auss0 | unresolved binding | An IP-specific binding is still required. | +| nub-spmi0 | existing description | `&nub_spmi0`; auxiliary apertures still require a driver-specific audit. | +| nub-spmi-a0 | existing description | `&nub_spmi_a0`; auxiliary apertures still require a driver-specific audit. | +| dcp0-sac-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dispext0 | existing description | `&dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dcpext0 | existing description | `&dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dart-dcpext0 | existing description | `&dart_dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dart-dispext0 | existing description | `&dart_dispext0`; auxiliary apertures still require a driver-specific audit. | +| dp-audio1 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio3 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio4 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17cr1_42 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17cr2_42 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17c_48 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_97 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| mapper-gfx-asc | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| sapt | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| iop-audio-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| admac-base-ns | existing description | `&admac_base_ns`; auxiliary apertures still require a driver-specific audit. | +| smctempsensor0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| cpu-debug-interface | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| nub-swd0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pwm1 | existing description | `&fpwm0`; auxiliary apertures still require a driver-specific audit. | +| timesync | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| fillmore | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| isp-exclave-s-proxy | unresolved address translation | No covering parent range; do not guess a physical address. | +| msg | unresolved binding | An IP-specific binding is still required. | +| msghub | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_5 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_6 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| device-supports-gf2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| nub-spmi1 | disabled resource description | `&hw_nub_spmi1`; mixed/non-AIC interrupt routing needs decoding | +| nub-spmi4 | disabled resource description | `&hw_nub_spmi4`; mixed/non-AIC interrupt routing needs decoding | +| i2c0 | disabled resource description | `&hw_i2c0`; power/clock gate needs a verified provider | +| i2c4 | disabled resource description | `&hw_i2c4`; power/clock gate needs a verified provider | +| i2c5 | disabled resource description | `&hw_i2c5`; power/clock gate needs a verified provider | +| i2c6 | disabled resource description | `&hw_i2c6`; power/clock gate needs a verified provider | +| i2c8 | disabled resource description | `&hw_i2c8`; power/clock gate needs a verified provider | +| apcie0-piodma | disabled resource description | `&hw_apcie0_piodma` | +| dart-apcie1 | disabled resource description | `&hw_dart_apcie1` | +| apcie1-piodma | disabled resource description | `&hw_apcie1_piodma` | +| apcie2-piodma | disabled resource description | `&hw_apcie2_piodma` | +| apcie3-piodma | disabled resource description | `&hw_apcie3_piodma` | +| spi3 | disabled resource description | `&hw_spi3`; power/clock gate needs a verified provider | +| apciec0 | disabled resource description | `&hw_apciec0`; power/clock gate needs a verified provider | +| dart-apciec0 | disabled resource description | `&hw_dart_apciec0` | +| apciec0-piodma | disabled resource description | `&hw_apciec0_piodma` | +| acio0 | disabled resource description | `&hw_acio0`; power/clock gate needs a verified provider | +| dart-acio0 | disabled resource description | `&hw_dart_acio0` | +| acio-cpu0 | disabled resource description | `&hw_acio_cpu0`; power/clock gate needs a verified provider | +| apciec1 | disabled resource description | `&hw_apciec1`; power/clock gate needs a verified provider | +| dart-apciec1 | disabled resource description | `&hw_dart_apciec1` | +| apciec1-piodma | disabled resource description | `&hw_apciec1_piodma` | +| acio1 | disabled resource description | `&hw_acio1`; power/clock gate needs a verified provider | +| dart-acio1 | disabled resource description | `&hw_dart_acio1` | +| acio-cpu1 | disabled resource description | `&hw_acio_cpu1`; power/clock gate needs a verified provider | +| apciec2 | disabled resource description | `&hw_apciec2`; power/clock gate needs a verified provider | +| dart-apciec2 | disabled resource description | `&hw_dart_apciec2` | +| apciec2-piodma | disabled resource description | `&hw_apciec2_piodma` | +| acio2 | disabled resource description | `&hw_acio2`; power/clock gate needs a verified provider | +| dart-acio2 | disabled resource description | `&hw_dart_acio2` | +| acio-cpu2 | disabled resource description | `&hw_acio_cpu2`; power/clock gate needs a verified provider | +| apciec3 | disabled resource description | `&hw_apciec3`; power/clock gate needs a verified provider | +| dart-apciec3 | disabled resource description | `&hw_dart_apciec3` | +| apciec3-piodma | disabled resource description | `&hw_apciec3_piodma` | +| acio3 | disabled resource description | `&hw_acio3`; power/clock gate needs a verified provider | +| dart-acio3 | disabled resource description | `&hw_dart_acio3` | +| atc0-dpxbar | disabled resource description | `&hw_atc0_dpxbar` | +| atc0-dpin0 | disabled resource description | `&hw_atc0_dpin0` | +| atc0-dpin1 | disabled resource description | `&hw_atc0_dpin1` | +| atc0-dpin2 | disabled resource description | `&hw_atc0_dpin2` | +| atc0-dpin3 | disabled resource description | `&hw_atc0_dpin3` | +| atc1-dpxbar | disabled resource description | `&hw_atc1_dpxbar` | +| atc1-dpin0 | disabled resource description | `&hw_atc1_dpin0` | +| atc1-dpin1 | disabled resource description | `&hw_atc1_dpin1` | +| atc1-dpin2 | disabled resource description | `&hw_atc1_dpin2` | +| atc1-dpin3 | disabled resource description | `&hw_atc1_dpin3` | +| atc2-dpin0 | disabled resource description | `&hw_atc2_dpin0` | +| atc2-dpin1 | disabled resource description | `&hw_atc2_dpin1` | +| atc2-dpin2 | disabled resource description | `&hw_atc2_dpin2` | +| atc2-dpin3 | disabled resource description | `&hw_atc2_dpin3` | +| atc3-dpxbar | disabled resource description | `&hw_atc3_dpxbar` | +| atc3-dpin0 | disabled resource description | `&hw_atc3_dpin0` | +| atc3-dpin1 | disabled resource description | `&hw_atc3_dpin1` | +| atc3-dpin2 | disabled resource description | `&hw_atc3_dpin2` | +| atc3-dpin3 | disabled resource description | `&hw_atc3_dpin3` | +| aic-timebase | disabled resource description | `&hw_aic_timebase` | +| aes | disabled resource description | `&hw_aes`; power/clock gate needs a verified provider | +| nub-gpio0 | disabled resource description | `&hw_nub_gpio0` | +| aop-exclave-mailbox | disabled resource description | `&hw_aop_exclave_mailbox` | +| aop2 | disabled resource description | `&hw_aop2` | +| event-log-handler | disabled resource description | `&hw_event_log_handler` | +| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider | +| dart-sio | disabled resource description | `&hw_dart_sio`; power/clock gate needs a verified provider | +| pmp0 | disabled resource description | `&hw_pmp0`; power/clock gate needs a verified provider | +| dart-pmp0 | disabled resource description | `&hw_dart_pmp0` | +| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider | +| dart-sep | disabled resource description | `&hw_dart_sep` | +| aon-ptd | disabled resource description | `&hw_aon_ptd` | +| rsm | disabled resource description | `&hw_rsm`; power/clock gate needs a verified provider | +| dart-rsm | disabled resource description | `&hw_dart_rsm` | +| atc-phy0 | disabled resource description | `&hw_atc_phy0`; power/clock gate needs a verified provider | +| dart-usb0 | disabled resource description | `&hw_dart_usb0`; power/clock gate needs a verified provider | +| usb-drd0 | disabled resource description | `&hw_usb_drd0`; power/clock gate needs a verified provider | +| dart-auss0 | disabled resource description | `&hw_dart_auss0` | +| nub-spmi2 | disabled resource description | `&hw_nub_spmi2`; mixed/non-AIC interrupt routing needs decoding | +| nub-spmi3 | disabled resource description | `&hw_nub_spmi3`; mixed/non-AIC interrupt routing needs decoding | +| aop-spmi0 | disabled resource description | `&hw_aop_spmi0`; mixed/non-AIC interrupt routing needs decoding | +| dptx0-aux | disabled resource description | `&hw_dptx0_aux`; power/clock gate needs a verified provider | +| dptx1-aux | disabled resource description | `&hw_dptx1_aux`; power/clock gate needs a verified provider | +| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider | +| dart-disp0 | disabled resource description | `&hw_dart_disp0` | +| dcp0-expert | disabled resource description | `&hw_dcp0_expert` | +| dcp | disabled resource description | `&hw_dcp`; power/clock gate needs a verified provider | +| dart-dcp | disabled resource description | `&hw_dart_dcp` | +| dart-disp0-isoc | disabled resource description | `&hw_dart_disp0_isoc` | +| admac-disp0 | disabled resource description | `&hw_admac_disp0` | +| admac-disp0-ced-ssw | disabled resource description | `&hw_admac_disp0_ced_ssw` | +| dcpext0-expert | disabled resource description | `&hw_dcpext0_expert` | +| dart-dispext0-isoc | disabled resource description | `&hw_dart_dispext0_isoc` | +| admac-dispext0 | disabled resource description | `&hw_admac_dispext0` | +| admac-dispext0-ced-ssw | disabled resource description | `&hw_admac_dispext0_ced_ssw` | +| dispext1 | disabled resource description | `&hw_dispext1` | +| dcpext1-expert | disabled resource description | `&hw_dcpext1_expert` | +| dcpext1 | disabled resource description | `&hw_dcpext1`; power/clock gate needs a verified provider | +| dart-dcpext1 | disabled resource description | `&hw_dart_dcpext1` | +| dart-dispext1 | disabled resource description | `&hw_dart_dispext1` | +| dart-dispext1-isoc | disabled resource description | `&hw_dart_dispext1_isoc` | +| admac-dispext1 | disabled resource description | `&hw_admac_dispext1` | +| admac-dispext1-ced-ssw | disabled resource description | `&hw_admac_dispext1_ced_ssw` | +| dispext2 | disabled resource description | `&hw_dispext2` | +| dcpext2-expert | disabled resource description | `&hw_dcpext2_expert` | +| dcpext2 | disabled resource description | `&hw_dcpext2`; power/clock gate needs a verified provider | +| dart-dcpext2 | disabled resource description | `&hw_dart_dcpext2` | +| dart-dispext2 | disabled resource description | `&hw_dart_dispext2` | +| dart-dispext2-isoc | disabled resource description | `&hw_dart_dispext2_isoc` | +| admac-dispext2 | disabled resource description | `&hw_admac_dispext2` | +| admac-dispext2-ced-ssw | disabled resource description | `&hw_admac_dispext2_ced_ssw` | +| dispext3 | disabled resource description | `&hw_dispext3` | +| dcpext3-expert | disabled resource description | `&hw_dcpext3_expert` | +| dcpext3 | disabled resource description | `&hw_dcpext3`; power/clock gate needs a verified provider | +| dart-dcpext3 | disabled resource description | `&hw_dart_dcpext3` | +| dart-dispext3 | disabled resource description | `&hw_dart_dispext3` | +| dart-dispext3-isoc | disabled resource description | `&hw_dart_dispext3_isoc` | +| admac-dispext3 | disabled resource description | `&hw_admac_dispext3` | +| admac-dispext3-ced-ssw | disabled resource description | `&hw_admac_dispext3_ced_ssw` | +| dart-scaler | disabled resource description | `&hw_dart_scaler`; power/clock gate needs a verified provider | +| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider | +| dart-scaler0 | disabled resource description | `&hw_dart_scaler0`; power/clock gate needs a verified provider | +| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider | +| dart-scaler1 | disabled resource description | `&hw_dart_scaler1`; power/clock gate needs a verified provider | +| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider | +| dart-ave0 | disabled resource description | `&hw_dart_ave0`; power/clock gate needs a verified provider | +| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider | +| dart-ave1 | disabled resource description | `&hw_dart_ave1`; power/clock gate needs a verified provider | +| apr0 | disabled resource description | `&hw_apr0`; power/clock gate needs a verified provider | +| dart-apr0 | disabled resource description | `&hw_dart_apr0`; power/clock gate needs a verified provider | +| dart-apr1 | disabled resource description | `&hw_dart_apr1`; power/clock gate needs a verified provider | +| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider | +| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider | +| dart-jpeg0 | disabled resource description | `&hw_dart_jpeg0`; power/clock gate needs a verified provider | +| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider | +| dart-ane0 | disabled resource description | `&hw_dart_ane0`; power/clock gate needs a verified provider | +| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider | +| dart-avd0 | disabled resource description | `&hw_dart_avd0`; power/clock gate needs a verified provider | +| sgx | disabled resource description | `&hw_sgx`; power/clock gate needs a verified provider | +| gfx-asc | disabled resource description | `&hw_gfx_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | +| gfx1-asc | disabled resource description | `&hw_gfx1_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | +| admac-leap-ns | disabled resource description | `&hw_admac_leap_ns` | +| admac-aop-ced-ssw | disabled resource description | `&hw_admac_aop_ced_ssw` | +| dbgCPU | disabled resource description | `&hw_dbgCPU` | +| apple-processor-trace | disabled resource description | `&hw_apple_processor_trace` | diff --git a/docs/devicetree/DT-GAPS-j775d.md b/docs/devicetree/DT-GAPS-j775d.md new file mode 100644 index 0000000000000..c9848a4fc5989 --- /dev/null +++ b/docs/devicetree/DT-GAPS-j775d.md @@ -0,0 +1,353 @@ +# J775D device-tree audit + +SoC: T6050. Source: board-specific static ADT. Audited 1255 ADT node records. +The table covers the devices directly attached to the SoC bus. Firmware +service containers, mapper children and transport endpoints are distinguished +from independent MMIO controllers. This is a resource-description draft, +not a claim that all of this board's devices can be driven on Linux. + +New register complexes remain disabled. Their bindings retain the complete +aperture list and AIC interrupt wiring where translation is unambiguous; +DMA mapper references are translated to IOMMU phandles and stream IDs. +No firmware, calibration or register programming values are included. + +## Remaining work + +- Qualify firmware handoff, reset, clocks and power ownership before enabling + a new block. Composite descriptions require review against the eventual + IP-specific driver interface, including shared windows. +- Complete the transport children and firmware-service bindings, pinmux, + port graphs and board wiring. Listing a controller does not cover its + attached peripherals. +- Resolve every provider/routing gap called out below. No guessed + address, interrupt parent or power-domain relationship was substituted. +- Validate on this board; no boot or peripheral test was performed. + +Existing SoC and board support comes from linux#935, linux#945 and +linux#1025; these dependencies are extended, not replaced. The static ADTs +contain template CPU records for absent dies/cores. CPU harvesting and +release addresses must be supplied by the boot loader. + +## SoC-bus coverage + +| ADT device | Description | Location or unresolved detail | +| --- | --- | --- | +| gpio1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| aop-gpio1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| nub-gpio1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| scaler2 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-scaler2 | unresolved address translation | No covering parent range; do not guess a physical address. | +| scaler3 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-scaler3 | unresolved address translation | No covering parent range; do not guess a physical address. | +| ave2 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-ave2 | unresolved address translation | No covering parent range; do not guess a physical address. | +| ave3 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-ave3 | unresolved address translation | No covering parent range; do not guess a physical address. | +| apr2 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-apr2 | unresolved address translation | No covering parent range; do not guess a physical address. | +| apr3 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-apr3 | unresolved address translation | No covering parent range; do not guess a physical address. | +| avd1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-avd1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| jpeg2 | unresolved address translation | No covering parent range; do not guess a physical address. | +| jpeg3 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-jpeg1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| displaymanager | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| nub-spmi-a2 | existing description | `&nub_spmi_a2`; auxiliary apertures still require a driver-specific audit. | +| die1-nub-spmi0 | unresolved address translation | No covering parent range; do not guess a physical address. | +| die1-nub-spmi1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| die1-nub-spmi2 | unresolved address translation | No covering parent range; do not guess a physical address. | +| die1-nub-spmi3 | unresolved address translation | No covering parent range; do not guess a physical address. | +| die1-nub-spmi4 | unresolved address translation | No covering parent range; do not guess a physical address. | +| acio-phy-cpu4 | unresolved address translation | No covering parent range; do not guess a physical address. | +| acio-phy-cpu5 | unresolved address translation | No covering parent range; do not guess a physical address. | +| ane1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-ane1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| msg1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| i2c1 | existing description | `&i2c1`; auxiliary apertures still require a driver-specific audit. | +| i2c2 | existing description | `&i2c2`; auxiliary apertures still require a driver-specific audit. | +| apcie0 | existing description | `&pcie0`; auxiliary apertures still require a driver-specific audit. | +| dart-apcie0 | existing description | `&dart_apcie0`; auxiliary apertures still require a driver-specific audit. | +| dart-apcie2 | existing description | `&dart_apcie2`; auxiliary apertures still require a driver-specific audit. | +| lan0-sync | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dart-apcie3 | existing description | `&dart_apcie3`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu0 | unresolved binding | An IP-specific binding is still required. | +| acio-phy-cpu1 | existing description | `&atc1_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu2 | existing description | `&atc2_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu3 | existing description | `&atc3_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| aod2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| acio-cpu3 | existing description | `&usb4_3_mbox`; auxiliary apertures still require a driver-specific audit. | +| apciec4 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-apciec4 | unresolved address translation | No covering parent range; do not guess a physical address. | +| apciec4-piodma | unresolved address translation | No covering parent range; do not guess a physical address. | +| acio4 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-acio4 | unresolved address translation | No covering parent range; do not guess a physical address. | +| acio-cpu4 | unresolved address translation | No covering parent range; do not guess a physical address. | +| apciec5 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-apciec5 | unresolved address translation | No covering parent range; do not guess a physical address. | +| apciec5-piodma | unresolved address translation | No covering parent range; do not guess a physical address. | +| acio5 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-acio5 | unresolved address translation | No covering parent range; do not guess a physical address. | +| acio-cpu5 | unresolved address translation | No covering parent range; do not guess a physical address. | +| bluetooth | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| centauri | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| display-crossbar0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc0-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc1-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc2-dpxbar | existing description | `&atc2_xbar`; auxiliary apertures still require a driver-specific audit. | +| atc2-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc3-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc4-dpxbar | unresolved address translation | No covering parent range; do not guess a physical address. | +| atc4-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc4-dpin0 | unresolved address translation | No covering parent range; do not guess a physical address. | +| atc4-dpin1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| atc4-dpin2 | unresolved address translation | No covering parent range; do not guess a physical address. | +| atc4-dpin3 | unresolved address translation | No covering parent range; do not guess a physical address. | +| atc5-dpxbar | unresolved address translation | No covering parent range; do not guess a physical address. | +| atc5-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc5-dpin0 | unresolved address translation | No covering parent range; do not guess a physical address. | +| atc5-dpin1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| atc5-dpin2 | unresolved address translation | No covering parent range; do not guess a physical address. | +| atc5-dpin3 | unresolved address translation | No covering parent range; do not guess a physical address. | +| mcc | existing description | `&cio_reconfig0`; auxiliary apertures still require a driver-specific audit. | +| aic | existing description | `&aic`; auxiliary apertures still require a driver-specific audit. | +| wdt | existing description | `&wdt`; auxiliary apertures still require a driver-specific audit. | +| error-handler | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| auss-cpu0 | unresolved binding | An IP-specific binding is still required. | +| auss-cpu1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| gpio0 | existing description | `&pinctrl_ap`; auxiliary apertures still require a driver-specific audit. | +| aop-gpio0 | existing description | `&pinctrl_aop`; auxiliary apertures still require a driver-specific audit. | +| aop | existing description | `&aop`; auxiliary apertures still require a driver-specific audit. | +| dart-aop | existing description | `&aop_dart`; auxiliary apertures still require a driver-specific audit. | +| aop-exclave-ioreporting | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pmgr | existing description | `&pmgr0`; auxiliary apertures still require a driver-specific audit. | +| pmp1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-pmp1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| esm | unresolved address translation | No covering parent range; do not guess a physical address. | +| ans | existing description | `&nvme`; auxiliary apertures still require a driver-specific audit. | +| sart-ans | existing description | `&ans_sart`; auxiliary apertures still require a driver-specific audit. | +| smc | existing description | `&smc`; auxiliary apertures still require a driver-specific audit. | +| uart0 | unresolved binding | An IP-specific binding is still required. | +| dockchannel-uart | existing description | `&dockchannel`; auxiliary apertures still require a driver-specific audit. | +| qspi | existing description | `&qspi`; auxiliary apertures still require a driver-specific audit. | +| dp2hdmi-gpio1 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| lpdptx-phy1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| atc-phy1 | existing description | `&atc1_phy`; auxiliary apertures still require a driver-specific audit. | +| dart-usb1 | existing description | `&usb_drd1_dart_0`; auxiliary apertures still require a driver-specific audit. | +| usb-drd1 | existing description | `&usb_drd1`; auxiliary apertures still require a driver-specific audit. | +| atc-phy2 | existing description | `&atc2_phy`; auxiliary apertures still require a driver-specific audit. | +| dart-usb2 | existing description | `&usb_drd2_dart_0`; auxiliary apertures still require a driver-specific audit. | +| usb-drd2 | existing description | `&usb_drd2`; auxiliary apertures still require a driver-specific audit. | +| atc-phy3 | existing description | `&atc3_phy`; auxiliary apertures still require a driver-specific audit. | +| dart-usb3 | existing description | `&usb_drd3_dart_0`; auxiliary apertures still require a driver-specific audit. | +| usb-drd3 | existing description | `&usb_drd3`; auxiliary apertures still require a driver-specific audit. | +| usb-auss0 | unresolved binding | An IP-specific binding is still required. | +| dart-auss1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| usb-auss1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| atc-phy4 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-usb4 | unresolved address translation | No covering parent range; do not guess a physical address. | +| usb-drd4 | unresolved address translation | No covering parent range; do not guess a physical address. | +| atc-phy5 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-usb5 | unresolved address translation | No covering parent range; do not guess a physical address. | +| usb-drd5 | unresolved address translation | No covering parent range; do not guess a physical address. | +| nub-spmi0 | existing description | `&nub_spmi0`; auxiliary apertures still require a driver-specific audit. | +| nub-spmi-a0 | existing description | `&nub_spmi_a0`; auxiliary apertures still require a driver-specific audit. | +| dptx2-aux | unresolved address translation | No covering parent range; do not guess a physical address. | +| dptx3-aux | unresolved address translation | No covering parent range; do not guess a physical address. | +| dispext0 | existing description | `&dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dcpext0 | existing description | `&dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dart-dcpext0 | existing description | `&dart_dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dart-dispext0 | existing description | `&dart_dispext0`; auxiliary apertures still require a driver-specific audit. | +| dp-audio1 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio3 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio4 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dispext4 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dcpext4-expert | unresolved address translation | No covering parent range; do not guess a physical address. | +| dcpext4 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-dcpext4 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-dispext4 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dispext5 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dcpext5-expert | unresolved address translation | No covering parent range; do not guess a physical address. | +| dcpext5 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-dcpext5 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-dispext5 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dispext6 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dcpext6-expert | unresolved address translation | No covering parent range; do not guess a physical address. | +| dcpext6 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-dcpext6 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-dispext6 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dispext7 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dcpext7-expert | unresolved address translation | No covering parent range; do not guess a physical address. | +| dcpext7 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-dcpext7 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-dispext7 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dp-audio5 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dart-dispext4-isoc | unresolved address translation | No covering parent range; do not guess a physical address. | +| admac-dispext4 | unresolved address translation | No covering parent range; do not guess a physical address. | +| admac-dispext4-ced-ssw | unresolved address translation | No covering parent range; do not guess a physical address. | +| dp-audio6 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dart-dispext5-isoc | unresolved address translation | No covering parent range; do not guess a physical address. | +| admac-dispext5 | unresolved address translation | No covering parent range; do not guess a physical address. | +| admac-dispext5-ced-ssw | unresolved address translation | No covering parent range; do not guess a physical address. | +| dp-audio7 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dart-dispext6-isoc | unresolved address translation | No covering parent range; do not guess a physical address. | +| admac-dispext6 | unresolved address translation | No covering parent range; do not guess a physical address. | +| admac-dispext6-ced-ssw | unresolved address translation | No covering parent range; do not guess a physical address. | +| dp-audio8 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dart-dispext7-isoc | unresolved address translation | No covering parent range; do not guess a physical address. | +| admac-dispext7 | unresolved address translation | No covering parent range; do not guess a physical address. | +| admac-dispext7-ced-ssw | unresolved address translation | No covering parent range; do not guess a physical address. | +| :sotra_h17cr1_42 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17cr2_42 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17c_48 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_97 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dart-avd0 | existing description | `&avd_dart`; auxiliary apertures still require a driver-specific audit. | +| mapper-gfx-asc | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| sapt | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| iop-audio-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| admac-base-ns | existing description | `&admac_base_ns`; auxiliary apertures still require a driver-specific audit. | +| smctempsensor0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| cpu-debug-interface | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| nub-swd0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pwm1 | existing description | `&fpwm0`; auxiliary apertures still require a driver-specific audit. | +| timesync | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| fillmore | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| isp-exclave-s-proxy | unresolved address translation | No covering parent range; do not guess a physical address. | +| msg | unresolved binding | An IP-specific binding is still required. | +| msghub | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_5 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_6 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| device-supports-gf2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| i2c7 | disabled resource description | `&hw_i2c7`; power/clock gate needs a verified provider | +| nub-spmi1 | disabled resource description | `&hw_nub_spmi1`; mixed/non-AIC interrupt routing needs decoding | +| nub-spmi4 | disabled resource description | `&hw_nub_spmi4`; mixed/non-AIC interrupt routing needs decoding | +| i2c0 | disabled resource description | `&hw_i2c0`; power/clock gate needs a verified provider | +| i2c4 | disabled resource description | `&hw_i2c4`; power/clock gate needs a verified provider | +| i2c5 | disabled resource description | `&hw_i2c5`; power/clock gate needs a verified provider | +| i2c6 | disabled resource description | `&hw_i2c6`; power/clock gate needs a verified provider | +| i2c8 | disabled resource description | `&hw_i2c8`; power/clock gate needs a verified provider | +| apcie0-piodma | disabled resource description | `&hw_apcie0_piodma` | +| dart-apcie1 | disabled resource description | `&hw_dart_apcie1` | +| apcie1-piodma | disabled resource description | `&hw_apcie1_piodma` | +| apcie2-piodma | disabled resource description | `&hw_apcie2_piodma` | +| apcie3-piodma | disabled resource description | `&hw_apcie3_piodma` | +| apciec0 | disabled resource description | `&hw_apciec0`; power/clock gate needs a verified provider | +| dart-apciec0 | disabled resource description | `&hw_dart_apciec0` | +| apciec0-piodma | disabled resource description | `&hw_apciec0_piodma` | +| acio0 | disabled resource description | `&hw_acio0`; power/clock gate needs a verified provider | +| dart-acio0 | disabled resource description | `&hw_dart_acio0` | +| acio-cpu0 | disabled resource description | `&hw_acio_cpu0`; power/clock gate needs a verified provider | +| apciec1 | disabled resource description | `&hw_apciec1`; power/clock gate needs a verified provider | +| dart-apciec1 | disabled resource description | `&hw_dart_apciec1` | +| apciec1-piodma | disabled resource description | `&hw_apciec1_piodma` | +| acio1 | disabled resource description | `&hw_acio1`; power/clock gate needs a verified provider | +| dart-acio1 | disabled resource description | `&hw_dart_acio1` | +| acio-cpu1 | disabled resource description | `&hw_acio_cpu1`; power/clock gate needs a verified provider | +| apciec2 | disabled resource description | `&hw_apciec2`; power/clock gate needs a verified provider | +| dart-apciec2 | disabled resource description | `&hw_dart_apciec2` | +| apciec2-piodma | disabled resource description | `&hw_apciec2_piodma` | +| acio2 | disabled resource description | `&hw_acio2`; power/clock gate needs a verified provider | +| dart-acio2 | disabled resource description | `&hw_dart_acio2` | +| acio-cpu2 | disabled resource description | `&hw_acio_cpu2`; power/clock gate needs a verified provider | +| apciec3 | disabled resource description | `&hw_apciec3`; power/clock gate needs a verified provider | +| dart-apciec3 | disabled resource description | `&hw_dart_apciec3` | +| apciec3-piodma | disabled resource description | `&hw_apciec3_piodma` | +| acio3 | disabled resource description | `&hw_acio3`; power/clock gate needs a verified provider | +| dart-acio3 | disabled resource description | `&hw_dart_acio3` | +| atc0-dpxbar | disabled resource description | `&hw_atc0_dpxbar` | +| atc0-dpin0 | disabled resource description | `&hw_atc0_dpin0` | +| atc0-dpin1 | disabled resource description | `&hw_atc0_dpin1` | +| atc0-dpin2 | disabled resource description | `&hw_atc0_dpin2` | +| atc0-dpin3 | disabled resource description | `&hw_atc0_dpin3` | +| atc1-dpxbar | disabled resource description | `&hw_atc1_dpxbar` | +| atc1-dpin0 | disabled resource description | `&hw_atc1_dpin0` | +| atc1-dpin1 | disabled resource description | `&hw_atc1_dpin1` | +| atc1-dpin2 | disabled resource description | `&hw_atc1_dpin2` | +| atc1-dpin3 | disabled resource description | `&hw_atc1_dpin3` | +| atc2-dpin0 | disabled resource description | `&hw_atc2_dpin0` | +| atc2-dpin1 | disabled resource description | `&hw_atc2_dpin1` | +| atc2-dpin2 | disabled resource description | `&hw_atc2_dpin2` | +| atc2-dpin3 | disabled resource description | `&hw_atc2_dpin3` | +| atc3-dpxbar | disabled resource description | `&hw_atc3_dpxbar` | +| atc3-dpin0 | disabled resource description | `&hw_atc3_dpin0` | +| atc3-dpin1 | disabled resource description | `&hw_atc3_dpin1` | +| atc3-dpin2 | disabled resource description | `&hw_atc3_dpin2` | +| atc3-dpin3 | disabled resource description | `&hw_atc3_dpin3` | +| aic-timebase | disabled resource description | `&hw_aic_timebase` | +| aes | disabled resource description | `&hw_aes`; power/clock gate needs a verified provider | +| nub-gpio0 | disabled resource description | `&hw_nub_gpio0` | +| aop-exclave-mailbox | disabled resource description | `&hw_aop_exclave_mailbox` | +| aop2 | disabled resource description | `&hw_aop2` | +| event-log-handler | disabled resource description | `&hw_event_log_handler` | +| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider | +| dart-sio | disabled resource description | `&hw_dart_sio`; power/clock gate needs a verified provider | +| pmp0 | disabled resource description | `&hw_pmp0`; power/clock gate needs a verified provider | +| dart-pmp0 | disabled resource description | `&hw_dart_pmp0` | +| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider | +| dart-sep | disabled resource description | `&hw_dart_sep` | +| aon-ptd | disabled resource description | `&hw_aon_ptd` | +| rsm | disabled resource description | `&hw_rsm`; power/clock gate needs a verified provider | +| dart-rsm | disabled resource description | `&hw_dart_rsm` | +| atc-phy0 | disabled resource description | `&hw_atc_phy0`; power/clock gate needs a verified provider | +| dart-usb0 | disabled resource description | `&hw_dart_usb0`; power/clock gate needs a verified provider | +| usb-drd0 | disabled resource description | `&hw_usb_drd0`; power/clock gate needs a verified provider | +| dart-auss0 | disabled resource description | `&hw_dart_auss0` | +| nub-spmi2 | disabled resource description | `&hw_nub_spmi2`; mixed/non-AIC interrupt routing needs decoding | +| nub-spmi3 | disabled resource description | `&hw_nub_spmi3`; mixed/non-AIC interrupt routing needs decoding | +| aop-spmi0 | disabled resource description | `&hw_aop_spmi0`; mixed/non-AIC interrupt routing needs decoding | +| dptx0-aux | disabled resource description | `&hw_dptx0_aux`; power/clock gate needs a verified provider | +| dptx1-aux | disabled resource description | `&hw_dptx1_aux`; power/clock gate needs a verified provider | +| dcpext0-expert | disabled resource description | `&hw_dcpext0_expert` | +| dart-dispext0-isoc | disabled resource description | `&hw_dart_dispext0_isoc` | +| admac-dispext0 | disabled resource description | `&hw_admac_dispext0` | +| admac-dispext0-ced-ssw | disabled resource description | `&hw_admac_dispext0_ced_ssw` | +| dispext1 | disabled resource description | `&hw_dispext1` | +| dcpext1-expert | disabled resource description | `&hw_dcpext1_expert` | +| dcpext1 | disabled resource description | `&hw_dcpext1`; power/clock gate needs a verified provider | +| dart-dcpext1 | disabled resource description | `&hw_dart_dcpext1` | +| dart-dispext1 | disabled resource description | `&hw_dart_dispext1` | +| dart-dispext1-isoc | disabled resource description | `&hw_dart_dispext1_isoc` | +| admac-dispext1 | disabled resource description | `&hw_admac_dispext1` | +| admac-dispext1-ced-ssw | disabled resource description | `&hw_admac_dispext1_ced_ssw` | +| dispext2 | disabled resource description | `&hw_dispext2` | +| dcpext2-expert | disabled resource description | `&hw_dcpext2_expert` | +| dcpext2 | disabled resource description | `&hw_dcpext2`; power/clock gate needs a verified provider | +| dart-dcpext2 | disabled resource description | `&hw_dart_dcpext2` | +| dart-dispext2 | disabled resource description | `&hw_dart_dispext2` | +| dart-dispext2-isoc | disabled resource description | `&hw_dart_dispext2_isoc` | +| admac-dispext2 | disabled resource description | `&hw_admac_dispext2` | +| admac-dispext2-ced-ssw | disabled resource description | `&hw_admac_dispext2_ced_ssw` | +| dispext3 | disabled resource description | `&hw_dispext3` | +| dcpext3-expert | disabled resource description | `&hw_dcpext3_expert` | +| dcpext3 | disabled resource description | `&hw_dcpext3`; power/clock gate needs a verified provider | +| dart-dcpext3 | disabled resource description | `&hw_dart_dcpext3` | +| dart-dispext3 | disabled resource description | `&hw_dart_dispext3` | +| dart-dispext3-isoc | disabled resource description | `&hw_dart_dispext3_isoc` | +| admac-dispext3 | disabled resource description | `&hw_admac_dispext3` | +| admac-dispext3-ced-ssw | disabled resource description | `&hw_admac_dispext3_ced_ssw` | +| dart-scaler | disabled resource description | `&hw_dart_scaler`; power/clock gate needs a verified provider | +| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider | +| dart-scaler0 | disabled resource description | `&hw_dart_scaler0`; power/clock gate needs a verified provider | +| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider | +| dart-scaler1 | disabled resource description | `&hw_dart_scaler1`; power/clock gate needs a verified provider | +| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider | +| dart-ave0 | disabled resource description | `&hw_dart_ave0`; power/clock gate needs a verified provider | +| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider | +| dart-ave1 | disabled resource description | `&hw_dart_ave1`; power/clock gate needs a verified provider | +| apr0 | disabled resource description | `&hw_apr0`; power/clock gate needs a verified provider | +| dart-apr0 | disabled resource description | `&hw_dart_apr0`; power/clock gate needs a verified provider | +| dart-apr1 | disabled resource description | `&hw_dart_apr1`; power/clock gate needs a verified provider | +| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider | +| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider | +| dart-jpeg0 | disabled resource description | `&hw_dart_jpeg0`; power/clock gate needs a verified provider | +| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider | +| dart-ane0 | disabled resource description | `&hw_dart_ane0`; power/clock gate needs a verified provider | +| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider | +| sgx | disabled resource description | `&hw_sgx`; power/clock gate needs a verified provider | +| gfx-asc | disabled resource description | `&hw_gfx_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | +| gfx1-asc | disabled resource description | `&hw_gfx1_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | +| admac-leap-ns | disabled resource description | `&hw_admac_leap_ns` | +| admac-aop-ced-ssw | disabled resource description | `&hw_admac_aop_ced_ssw` | +| dbgCPU | disabled resource description | `&hw_dbgCPU` | +| apple-processor-trace | disabled resource description | `&hw_apple_processor_trace` | diff --git a/docs/devicetree/DT-GAPS-j873s.md b/docs/devicetree/DT-GAPS-j873s.md new file mode 100644 index 0000000000000..5999fb7360c5f --- /dev/null +++ b/docs/devicetree/DT-GAPS-j873s.md @@ -0,0 +1,240 @@ +# J873S device-tree audit + +SoC: T6050. Source: live device ADT. Audited 652 ADT node records. +The table covers the devices directly attached to the SoC bus. Firmware +service containers, mapper children and transport endpoints are distinguished +from independent MMIO controllers. This is a resource-description draft, +not a claim that all of this board's devices can be driven on Linux. + +New register complexes remain disabled. Their bindings retain the complete +aperture list and AIC interrupt wiring where translation is unambiguous; +DMA mapper references are translated to IOMMU phandles and stream IDs. +No firmware, calibration or register programming values are included. + +## Remaining work + +- Qualify firmware handoff, reset, clocks and power ownership before enabling + a new block. Composite descriptions require review against the eventual + IP-specific driver interface, including shared windows. +- Complete the transport children and firmware-service bindings, pinmux, + port graphs and board wiring. Listing a controller does not cover its + attached peripherals. +- Resolve every provider/routing gap called out below. No guessed + address, interrupt parent or power-domain relationship was substituted. +- Validate on this board; no boot or peripheral test was performed. + +Existing SoC and board support comes from linux#935, linux#945 and +linux#1025; these dependencies are extended, not replaced. The static ADTs +contain template CPU records for absent dies/cores. CPU harvesting and +release addresses must be supplied by the boot loader. + +## SoC-bus coverage + +| ADT device | Description | Location or unresolved detail | +| --- | --- | --- | +| displaymanager | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| i2c1 | existing description | `&i2c1`; auxiliary apertures still require a driver-specific audit. | +| i2c2 | existing description | `&i2c2`; auxiliary apertures still require a driver-specific audit. | +| apcie0 | existing description | `&pcie0`; auxiliary apertures still require a driver-specific audit. | +| dart-apcie0 | existing description | `&dart_apcie0`; auxiliary apertures still require a driver-specific audit. | +| dart-apcie2 | existing description | `&dart_apcie2`; auxiliary apertures still require a driver-specific audit. | +| lan0-sync | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| acio-phy-cpu0 | unresolved binding | An IP-specific binding is still required. | +| acio-phy-cpu1 | existing description | `&atc1_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu2 | existing description | `&atc2_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu3 | existing description | `&atc3_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| aod2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| bluetooth | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| centauri | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| display-crossbar0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc0-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc1-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc2-dpxbar | existing description | `&atc2_xbar`; auxiliary apertures still require a driver-specific audit. | +| atc2-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| mcc | existing description | `&cio_reconfig0`; auxiliary apertures still require a driver-specific audit. | +| aic | existing description | `&aic`; auxiliary apertures still require a driver-specific audit. | +| wdt | existing description | `&wdt`; auxiliary apertures still require a driver-specific audit. | +| error-handler | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| auss-cpu0 | unresolved binding | An IP-specific binding is still required. | +| gpio0 | existing description | `&pinctrl_ap`; auxiliary apertures still require a driver-specific audit. | +| aop-gpio0 | existing description | `&pinctrl_aop`; auxiliary apertures still require a driver-specific audit. | +| aop | existing description | `&aop`; auxiliary apertures still require a driver-specific audit. | +| dart-aop | existing description | `&aop_dart`; auxiliary apertures still require a driver-specific audit. | +| aop-exclave-ioreporting | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pmgr | existing description | `&pmgr0`; auxiliary apertures still require a driver-specific audit. | +| pmp1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-pmp1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| esm | unresolved address translation | No covering parent range; do not guess a physical address. | +| ans | existing description | `&nvme`; auxiliary apertures still require a driver-specific audit. | +| sart-ans | existing description | `&ans_sart`; auxiliary apertures still require a driver-specific audit. | +| smc | existing description | `&smc`; auxiliary apertures still require a driver-specific audit. | +| uart0 | unresolved binding | An IP-specific binding is still required. | +| dockchannel-uart | existing description | `&dockchannel`; auxiliary apertures still require a driver-specific audit. | +| qspi | existing description | `&qspi`; auxiliary apertures still require a driver-specific audit. | +| dp2hdmi-gpio0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| lpdptx-phy0 | unresolved binding | An IP-specific binding is still required. | +| atc-phy1 | existing description | `&atc1_phy`; auxiliary apertures still require a driver-specific audit. | +| dart-usb1 | existing description | `&usb_drd1_dart_0`; auxiliary apertures still require a driver-specific audit. | +| usb-drd1 | existing description | `&usb_drd1`; auxiliary apertures still require a driver-specific audit. | +| atc-phy2 | existing description | `&atc2_phy`; auxiliary apertures still require a driver-specific audit. | +| dart-usb2 | existing description | `&usb_drd2_dart_0`; auxiliary apertures still require a driver-specific audit. | +| usb-drd2 | existing description | `&usb_drd2`; auxiliary apertures still require a driver-specific audit. | +| atc-phy3 | existing description | `&atc3_phy`; auxiliary apertures still require a driver-specific audit. | +| dart-usb3 | existing description | `&usb_drd3_dart_0`; auxiliary apertures still require a driver-specific audit. | +| usb-drd3 | existing description | `&usb_drd3`; auxiliary apertures still require a driver-specific audit. | +| usb-auss0 | unresolved binding | An IP-specific binding is still required. | +| nub-spmi0 | existing description | `&nub_spmi0`; auxiliary apertures still require a driver-specific audit. | +| nub-spmi-a0 | existing description | `&nub_spmi_a0`; auxiliary apertures still require a driver-specific audit. | +| dcp0-sac-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dispext0 | existing description | `&dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dcpext0 | existing description | `&dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dart-dcpext0 | existing description | `&dart_dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dart-dispext0 | existing description | `&dart_dispext0`; auxiliary apertures still require a driver-specific audit. | +| dp-audio1 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio3 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio4 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| apr1 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| apr1 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| apr1 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| apr1 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| mapper-gfx-asc | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| sapt | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| iop-audio-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| admac-base-ns | existing description | `&admac_base_ns`; auxiliary apertures still require a driver-specific audit. | +| smctempsensor0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| cpu-debug-interface | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| nub-swd0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pwm1 | existing description | `&fpwm0`; auxiliary apertures still require a driver-specific audit. | +| timesync | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| fillmore | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| isp-exclave-s-proxy | unresolved address translation | No covering parent range; do not guess a physical address. | +| msg | unresolved binding | An IP-specific binding is still required. | +| msghub | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| device-supports-gf2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| i2c0 | disabled resource description | `&hw_i2c0`; power/clock gate needs a verified provider | +| i2c5 | disabled resource description | `&hw_i2c5`; power/clock gate needs a verified provider | +| i2c6 | disabled resource description | `&hw_i2c6`; power/clock gate needs a verified provider | +| i2c8 | disabled resource description | `&hw_i2c8`; power/clock gate needs a verified provider | +| apcie0-piodma | disabled resource description | `&hw_apcie0_piodma` | +| apcie2-piodma | disabled resource description | `&hw_apcie2_piodma` | +| apciec0 | disabled resource description | `&hw_apciec0`; power/clock gate needs a verified provider | +| dart-apciec0 | disabled resource description | `&hw_dart_apciec0` | +| apciec0-piodma | disabled resource description | `&hw_apciec0_piodma` | +| acio0 | disabled resource description | `&hw_acio0`; power/clock gate needs a verified provider | +| dart-acio0 | disabled resource description | `&hw_dart_acio0` | +| acio-cpu0 | disabled resource description | `&hw_acio_cpu0`; power/clock gate needs a verified provider | +| apciec1 | disabled resource description | `&hw_apciec1`; power/clock gate needs a verified provider | +| dart-apciec1 | disabled resource description | `&hw_dart_apciec1` | +| apciec1-piodma | disabled resource description | `&hw_apciec1_piodma` | +| acio1 | disabled resource description | `&hw_acio1`; power/clock gate needs a verified provider | +| dart-acio1 | disabled resource description | `&hw_dart_acio1` | +| acio-cpu1 | disabled resource description | `&hw_acio_cpu1`; power/clock gate needs a verified provider | +| apciec2 | disabled resource description | `&hw_apciec2`; power/clock gate needs a verified provider | +| dart-apciec2 | disabled resource description | `&hw_dart_apciec2` | +| apciec2-piodma | disabled resource description | `&hw_apciec2_piodma` | +| acio2 | disabled resource description | `&hw_acio2`; power/clock gate needs a verified provider | +| dart-acio2 | disabled resource description | `&hw_dart_acio2` | +| acio-cpu2 | disabled resource description | `&hw_acio_cpu2`; power/clock gate needs a verified provider | +| atc0-dpxbar | disabled resource description | `&hw_atc0_dpxbar` | +| atc0-dpin0 | disabled resource description | `&hw_atc0_dpin0` | +| atc0-dpin1 | disabled resource description | `&hw_atc0_dpin1` | +| atc0-dpin2 | disabled resource description | `&hw_atc0_dpin2` | +| atc0-dpin3 | disabled resource description | `&hw_atc0_dpin3` | +| atc1-dpxbar | disabled resource description | `&hw_atc1_dpxbar` | +| atc1-dpin0 | disabled resource description | `&hw_atc1_dpin0` | +| atc1-dpin1 | disabled resource description | `&hw_atc1_dpin1` | +| atc1-dpin2 | disabled resource description | `&hw_atc1_dpin2` | +| atc1-dpin3 | disabled resource description | `&hw_atc1_dpin3` | +| atc2-dpin0 | disabled resource description | `&hw_atc2_dpin0` | +| atc2-dpin1 | disabled resource description | `&hw_atc2_dpin1` | +| atc2-dpin2 | disabled resource description | `&hw_atc2_dpin2` | +| atc2-dpin3 | disabled resource description | `&hw_atc2_dpin3` | +| aic-timebase | disabled resource description | `&hw_aic_timebase` | +| aes | disabled resource description | `&hw_aes`; power/clock gate needs a verified provider | +| nub-gpio0 | disabled resource description | `&hw_nub_gpio0` | +| aop-exclave-mailbox | disabled resource description | `&hw_aop_exclave_mailbox` | +| aop2 | disabled resource description | `&hw_aop2` | +| event-log-handler | disabled resource description | `&hw_event_log_handler` | +| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider | +| dart-sio | disabled resource description | `&hw_dart_sio`; power/clock gate needs a verified provider | +| pmp0 | disabled resource description | `&hw_pmp0`; power/clock gate needs a verified provider | +| dart-pmp0 | disabled resource description | `&hw_dart_pmp0` | +| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider | +| dart-sep | disabled resource description | `&hw_dart_sep` | +| aon-ptd | disabled resource description | `&hw_aon_ptd` | +| rsm | disabled resource description | `&hw_rsm`; power/clock gate needs a verified provider | +| dart-rsm | disabled resource description | `&hw_dart_rsm` | +| spi3 | disabled resource description | `&hw_spi3`; power/clock gate needs a verified provider | +| atc-phy0 | disabled resource description | `&hw_atc_phy0`; power/clock gate needs a verified provider | +| dart-usb0 | disabled resource description | `&hw_dart_usb0`; power/clock gate needs a verified provider | +| usb-drd0 | disabled resource description | `&hw_usb_drd0`; power/clock gate needs a verified provider | +| dart-auss0 | disabled resource description | `&hw_dart_auss0` | +| nub-spmi2 | disabled resource description | `&hw_nub_spmi2`; mixed/non-AIC interrupt routing needs decoding | +| nub-spmi3 | disabled resource description | `&hw_nub_spmi3`; mixed/non-AIC interrupt routing needs decoding | +| aop-spmi0 | disabled resource description | `&hw_aop_spmi0`; mixed/non-AIC interrupt routing needs decoding | +| dptx0-aux | disabled resource description | `&hw_dptx0_aux`; power/clock gate needs a verified provider | +| dptx1-aux | disabled resource description | `&hw_dptx1_aux`; power/clock gate needs a verified provider | +| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider | +| dart-disp0 | disabled resource description | `&hw_dart_disp0` | +| dcp0-expert | disabled resource description | `&hw_dcp0_expert` | +| dcp | disabled resource description | `&hw_dcp`; power/clock gate needs a verified provider | +| dart-dcp | disabled resource description | `&hw_dart_dcp` | +| dart-disp0-isoc | disabled resource description | `&hw_dart_disp0_isoc` | +| admac-disp0 | disabled resource description | `&hw_admac_disp0` | +| admac-disp0-ced-ssw | disabled resource description | `&hw_admac_disp0_ced_ssw` | +| dcpext0-expert | disabled resource description | `&hw_dcpext0_expert` | +| dart-dispext0-isoc | disabled resource description | `&hw_dart_dispext0_isoc` | +| admac-dispext0 | disabled resource description | `&hw_admac_dispext0` | +| admac-dispext0-ced-ssw | disabled resource description | `&hw_admac_dispext0_ced_ssw` | +| dispext1 | disabled resource description | `&hw_dispext1` | +| dcpext1-expert | disabled resource description | `&hw_dcpext1_expert` | +| dcpext1 | disabled resource description | `&hw_dcpext1`; power/clock gate needs a verified provider | +| dart-dcpext1 | disabled resource description | `&hw_dart_dcpext1` | +| dart-dispext1 | disabled resource description | `&hw_dart_dispext1` | +| dart-dispext1-isoc | disabled resource description | `&hw_dart_dispext1_isoc` | +| admac-dispext1 | disabled resource description | `&hw_admac_dispext1` | +| admac-dispext1-ced-ssw | disabled resource description | `&hw_admac_dispext1_ced_ssw` | +| dispext2 | disabled resource description | `&hw_dispext2` | +| dcpext2-expert | disabled resource description | `&hw_dcpext2_expert` | +| dcpext2 | disabled resource description | `&hw_dcpext2`; power/clock gate needs a verified provider | +| dart-dcpext2 | disabled resource description | `&hw_dart_dcpext2` | +| dart-dispext2 | disabled resource description | `&hw_dart_dispext2` | +| dart-dispext2-isoc | disabled resource description | `&hw_dart_dispext2_isoc` | +| admac-dispext2 | disabled resource description | `&hw_admac_dispext2` | +| admac-dispext2-ced-ssw | disabled resource description | `&hw_admac_dispext2_ced_ssw` | +| dispext3 | disabled resource description | `&hw_dispext3` | +| dcpext3-expert | disabled resource description | `&hw_dcpext3_expert` | +| dcpext3 | disabled resource description | `&hw_dcpext3`; power/clock gate needs a verified provider | +| dart-dcpext3 | disabled resource description | `&hw_dart_dcpext3` | +| dart-dispext3 | disabled resource description | `&hw_dart_dispext3` | +| dart-dispext3-isoc | disabled resource description | `&hw_dart_dispext3_isoc` | +| admac-dispext3 | disabled resource description | `&hw_admac_dispext3` | +| admac-dispext3-ced-ssw | disabled resource description | `&hw_admac_dispext3_ced_ssw` | +| dart-scaler | disabled resource description | `&hw_dart_scaler`; power/clock gate needs a verified provider | +| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider | +| dart-scaler0 | disabled resource description | `&hw_dart_scaler0`; power/clock gate needs a verified provider | +| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider | +| dart-scaler1 | disabled resource description | `&hw_dart_scaler1`; power/clock gate needs a verified provider | +| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider | +| dart-ave0 | disabled resource description | `&hw_dart_ave0`; power/clock gate needs a verified provider | +| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider | +| dart-ave1 | disabled resource description | `&hw_dart_ave1`; power/clock gate needs a verified provider | +| apr0 | disabled resource description | `&hw_apr0`; power/clock gate needs a verified provider | +| dart-apr0 | disabled resource description | `&hw_dart_apr0`; power/clock gate needs a verified provider | +| dart-apr1 | disabled resource description | `&hw_dart_apr1`; power/clock gate needs a verified provider | +| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider | +| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider | +| dart-jpeg0 | disabled resource description | `&hw_dart_jpeg0`; power/clock gate needs a verified provider | +| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider | +| dart-ane0 | disabled resource description | `&hw_dart_ane0`; power/clock gate needs a verified provider | +| avd0 | disabled resource description | `&hw_avd0`; DMA mapper is not resolved, power/clock gate needs a verified provider | +| dart-avd0 | disabled resource description | `&hw_dart_avd0`; power/clock gate needs a verified provider | +| sgx | disabled resource description | `&hw_sgx`; power/clock gate needs a verified provider | +| gfx-asc | disabled resource description | `&hw_gfx_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | +| gfx1-asc | disabled resource description | `&hw_gfx1_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | +| admac-leap-ns | disabled resource description | `&hw_admac_leap_ns` | +| admac-aop-ced-ssw | disabled resource description | `&hw_admac_aop_ced_ssw` | +| dbgCPU | disabled resource description | `&hw_dbgCPU` | +| apple-processor-trace | disabled resource description | `&hw_apple_processor_trace` | diff --git a/docs/devicetree/DT-GAPS-k114c.md b/docs/devicetree/DT-GAPS-k114c.md new file mode 100644 index 0000000000000..f47217b91b208 --- /dev/null +++ b/docs/devicetree/DT-GAPS-k114c.md @@ -0,0 +1,267 @@ +# K114C device-tree audit + +SoC: T6050. Source: board-specific static ADT. Audited 1080 ADT node records. +The table covers the devices directly attached to the SoC bus. Firmware +service containers, mapper children and transport endpoints are distinguished +from independent MMIO controllers. This is a resource-description draft, +not a claim that all of this board's devices can be driven on Linux. + +New register complexes remain disabled. Their bindings retain the complete +aperture list and AIC interrupt wiring where translation is unambiguous; +DMA mapper references are translated to IOMMU phandles and stream IDs. +No firmware, calibration or register programming values are included. + +## Remaining work + +- Qualify firmware handoff, reset, clocks and power ownership before enabling + a new block. Composite descriptions require review against the eventual + IP-specific driver interface, including shared windows. +- Complete the transport children and firmware-service bindings, pinmux, + port graphs and board wiring. Listing a controller does not cover its + attached peripherals. +- Resolve every provider/routing gap called out below. No guessed + address, interrupt parent or power-domain relationship was substituted. +- Validate on this board; no boot or peripheral test was performed. + +Existing SoC and board support comes from linux#935, linux#945 and +linux#1025; these dependencies are extended, not replaced. The static ADTs +contain template CPU records for absent dies/cores. CPU harvesting and +release addresses must be supplied by the boot loader. + +## SoC-bus coverage + +| ADT device | Description | Location or unresolved detail | +| --- | --- | --- | +| pwm2 | existing description | `&fpwm2`; auxiliary apertures still require a driver-specific audit. | +| exdisplaypipe | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| exdisplaypipe-s-proxy | unresolved address translation | No covering parent range; do not guess a physical address. | +| displaymanager | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| i2c1 | existing description | `&i2c1`; auxiliary apertures still require a driver-specific audit. | +| i2c2 | existing description | `&i2c2`; auxiliary apertures still require a driver-specific audit. | +| iop-voicetrigger-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| isp0 | unresolved binding | An IP-specific binding is still required. | +| isp-exclave-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pwm0 | existing description | `&fpwm0`; auxiliary apertures still require a driver-specific audit. | +| apcie0 | existing description | `&pcie0`; auxiliary apertures still require a driver-specific audit. | +| dart-apcie0 | existing description | `&dart_apcie0`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu0 | unresolved binding | An IP-specific binding is still required. | +| acio-phy-cpu1 | existing description | `&atc1_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu2 | existing description | `&atc2_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu3 | existing description | `&atc3_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| mtp | existing description | `&mtp`; auxiliary apertures still require a driver-specific audit. | +| dart-mtp | existing description | `&mtp_dart`; auxiliary apertures still require a driver-specific audit. | +| mtp-aop-mux | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| eic | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| aod2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| bluetooth | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| centauri | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| display-crossbar0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc0-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc1-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc2-dpxbar | existing description | `&atc2_xbar`; auxiliary apertures still require a driver-specific audit. | +| atc2-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc3-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| mcc | existing description | `&cio_reconfig0`; auxiliary apertures still require a driver-specific audit. | +| aic | existing description | `&aic`; auxiliary apertures still require a driver-specific audit. | +| wdt | existing description | `&wdt`; auxiliary apertures still require a driver-specific audit. | +| error-handler | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| auss-cpu0 | unresolved binding | An IP-specific binding is still required. | +| gpio0 | existing description | `&pinctrl_ap`; auxiliary apertures still require a driver-specific audit. | +| aop-gpio0 | existing description | `&pinctrl_aop`; auxiliary apertures still require a driver-specific audit. | +| aop | existing description | `&aop`; auxiliary apertures still require a driver-specific audit. | +| dart-aop | existing description | `&aop_dart`; auxiliary apertures still require a driver-specific audit. | +| aop-exclave-ioreporting | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pmgr | existing description | `&pmgr0`; auxiliary apertures still require a driver-specific audit. | +| pmp1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-pmp1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| esm | unresolved address translation | No covering parent range; do not guess a physical address. | +| ans | existing description | `&nvme`; auxiliary apertures still require a driver-specific audit. | +| sart-ans | existing description | `&ans_sart`; auxiliary apertures still require a driver-specific audit. | +| smc | existing description | `&smc`; auxiliary apertures still require a driver-specific audit. | +| uart0 | unresolved binding | An IP-specific binding is still required. | +| dockchannel-uart | existing description | `&dockchannel`; auxiliary apertures still require a driver-specific audit. | +| qspi | existing description | `&qspi`; auxiliary apertures still require a driver-specific audit. | +| dp2hdmi-gpio0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc-phy1 | existing description | `&atc1_phy`; auxiliary apertures still require a driver-specific audit. | +| dart-usb1 | existing description | `&usb_drd1_dart_0`; auxiliary apertures still require a driver-specific audit. | +| usb-drd1 | existing description | `&usb_drd1`; auxiliary apertures still require a driver-specific audit. | +| atc-phy2 | existing description | `&atc2_phy`; auxiliary apertures still require a driver-specific audit. | +| dart-usb2 | existing description | `&usb_drd2_dart_0`; auxiliary apertures still require a driver-specific audit. | +| usb-drd2 | existing description | `&usb_drd2`; auxiliary apertures still require a driver-specific audit. | +| atc-phy3 | existing description | `&atc3_phy`; auxiliary apertures still require a driver-specific audit. | +| usb-auss0 | unresolved binding | An IP-specific binding is still required. | +| nub-spmi0 | existing description | `&nub_spmi0`; auxiliary apertures still require a driver-specific audit. | +| nub-spmi-a0 | existing description | `&nub_spmi_a0`; auxiliary apertures still require a driver-specific audit. | +| dcp0-sac-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dcp-exclave-mailbox | unresolved address translation | No covering parent range; do not guess a physical address. | +| dcp-exclave-ioreporting | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dispext0 | existing description | `&dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dcpext0 | existing description | `&dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dart-dcpext0 | existing description | `&dart_dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dart-dispext0 | existing description | `&dart_dispext0`; auxiliary apertures still require a driver-specific audit. | +| dp-audio1 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio3 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio4 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17cr1_42 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17cr2_42 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17c_48 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_97 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| mapper-gfx-asc | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| sapt | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| iop-audio-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| admac-base-ns | existing description | `&admac_base_ns`; auxiliary apertures still require a driver-specific audit. | +| audio-shared-dart-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| audio-hp-mic-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| audio-sllb-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| smctempsensor0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| cpu-debug-interface | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| nub-swd0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pwm1 | existing description | `&fpwm1`; auxiliary apertures still require a driver-specific audit. | +| timesync | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| fillmore | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| isp-exclave-s-proxy | unresolved address translation | No covering parent range; do not guess a physical address. | +| msg | unresolved binding | An IP-specific binding is still required. | +| msghub | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_5 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_6 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| device-supports-gf2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| nub-spmi1 | disabled resource description | `&hw_nub_spmi1`; mixed/non-AIC interrupt routing needs decoding | +| nub-spmi4 | disabled resource description | `&hw_nub_spmi4`; mixed/non-AIC interrupt routing needs decoding | +| i2c0 | disabled resource description | `&hw_i2c0`; power/clock gate needs a verified provider | +| i2c3 | disabled resource description | `&hw_i2c3`; power/clock gate needs a verified provider | +| i2c4 | disabled resource description | `&hw_i2c4`; power/clock gate needs a verified provider | +| i2c6 | disabled resource description | `&hw_i2c6`; power/clock gate needs a verified provider | +| i2c8 | disabled resource description | `&hw_i2c8`; power/clock gate needs a verified provider | +| spi2 | disabled resource description | `&hw_spi2`; power/clock gate needs a verified provider | +| spi4 | disabled resource description | `&hw_spi4`; power/clock gate needs a verified provider | +| nub-spmi-a1 | disabled resource description | `&hw_nub_spmi_a1`; mixed/non-AIC interrupt routing needs decoding | +| dart-isp0 | disabled resource description | `&hw_dart_isp0`; power/clock gate needs a verified provider | +| apcie0-piodma | disabled resource description | `&hw_apcie0_piodma` | +| dart-apcie1 | disabled resource description | `&hw_dart_apcie1` | +| apcie1-piodma | disabled resource description | `&hw_apcie1_piodma` | +| dockchannel-mtp | disabled resource description | `&hw_dockchannel_mtp` | +| secure-repair | disabled resource description | `&hw_secure_repair` | +| apciec0 | disabled resource description | `&hw_apciec0`; power/clock gate needs a verified provider | +| dart-apciec0 | disabled resource description | `&hw_dart_apciec0` | +| apciec0-piodma | disabled resource description | `&hw_apciec0_piodma` | +| acio0 | disabled resource description | `&hw_acio0`; power/clock gate needs a verified provider | +| dart-acio0 | disabled resource description | `&hw_dart_acio0` | +| acio-cpu0 | disabled resource description | `&hw_acio_cpu0`; power/clock gate needs a verified provider | +| apciec1 | disabled resource description | `&hw_apciec1`; power/clock gate needs a verified provider | +| dart-apciec1 | disabled resource description | `&hw_dart_apciec1` | +| apciec1-piodma | disabled resource description | `&hw_apciec1_piodma` | +| acio1 | disabled resource description | `&hw_acio1`; power/clock gate needs a verified provider | +| dart-acio1 | disabled resource description | `&hw_dart_acio1` | +| acio-cpu1 | disabled resource description | `&hw_acio_cpu1`; power/clock gate needs a verified provider | +| apciec2 | disabled resource description | `&hw_apciec2`; power/clock gate needs a verified provider | +| dart-apciec2 | disabled resource description | `&hw_dart_apciec2` | +| apciec2-piodma | disabled resource description | `&hw_apciec2_piodma` | +| acio2 | disabled resource description | `&hw_acio2`; power/clock gate needs a verified provider | +| dart-acio2 | disabled resource description | `&hw_dart_acio2` | +| acio-cpu2 | disabled resource description | `&hw_acio_cpu2`; power/clock gate needs a verified provider | +| atc0-dpxbar | disabled resource description | `&hw_atc0_dpxbar` | +| atc0-dpin0 | disabled resource description | `&hw_atc0_dpin0` | +| atc0-dpin1 | disabled resource description | `&hw_atc0_dpin1` | +| atc0-dpin2 | disabled resource description | `&hw_atc0_dpin2` | +| atc0-dpin3 | disabled resource description | `&hw_atc0_dpin3` | +| atc1-dpxbar | disabled resource description | `&hw_atc1_dpxbar` | +| atc1-dpin0 | disabled resource description | `&hw_atc1_dpin0` | +| atc1-dpin1 | disabled resource description | `&hw_atc1_dpin1` | +| atc1-dpin2 | disabled resource description | `&hw_atc1_dpin2` | +| atc1-dpin3 | disabled resource description | `&hw_atc1_dpin3` | +| atc2-dpin0 | disabled resource description | `&hw_atc2_dpin0` | +| atc2-dpin1 | disabled resource description | `&hw_atc2_dpin1` | +| atc2-dpin2 | disabled resource description | `&hw_atc2_dpin2` | +| atc2-dpin3 | disabled resource description | `&hw_atc2_dpin3` | +| atc3-dpxbar | disabled resource description | `&hw_atc3_dpxbar` | +| aic-timebase | disabled resource description | `&hw_aic_timebase` | +| aes | disabled resource description | `&hw_aes`; power/clock gate needs a verified provider | +| nub-gpio0 | disabled resource description | `&hw_nub_gpio0` | +| aop-exclave-mailbox | disabled resource description | `&hw_aop_exclave_mailbox` | +| aop2 | disabled resource description | `&hw_aop2` | +| event-log-handler | disabled resource description | `&hw_event_log_handler` | +| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider | +| dart-sio | disabled resource description | `&hw_dart_sio`; power/clock gate needs a verified provider | +| pmp0 | disabled resource description | `&hw_pmp0`; power/clock gate needs a verified provider | +| dart-pmp0 | disabled resource description | `&hw_dart_pmp0` | +| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider | +| dart-sep | disabled resource description | `&hw_dart_sep` | +| aon-ptd | disabled resource description | `&hw_aon_ptd` | +| rsm | disabled resource description | `&hw_rsm`; power/clock gate needs a verified provider | +| dart-rsm | disabled resource description | `&hw_dart_rsm` | +| atc-phy0 | disabled resource description | `&hw_atc_phy0`; power/clock gate needs a verified provider | +| dart-usb0 | disabled resource description | `&hw_dart_usb0`; power/clock gate needs a verified provider | +| usb-drd0 | disabled resource description | `&hw_usb_drd0`; power/clock gate needs a verified provider | +| dart-auss0 | disabled resource description | `&hw_dart_auss0` | +| nub-spmi2 | disabled resource description | `&hw_nub_spmi2`; mixed/non-AIC interrupt routing needs decoding | +| nub-spmi3 | disabled resource description | `&hw_nub_spmi3`; mixed/non-AIC interrupt routing needs decoding | +| aop-spmi0 | disabled resource description | `&hw_aop_spmi0`; mixed/non-AIC interrupt routing needs decoding | +| dptx0-aux | disabled resource description | `&hw_dptx0_aux`; power/clock gate needs a verified provider | +| dptx1-aux | disabled resource description | `&hw_dptx1_aux`; power/clock gate needs a verified provider | +| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider | +| dart-disp0 | disabled resource description | `&hw_dart_disp0` | +| dcp0-expert | disabled resource description | `&hw_dcp0_expert` | +| dcp | disabled resource description | `&hw_dcp`; power/clock gate needs a verified provider | +| dart-dcp | disabled resource description | `&hw_dart_dcp` | +| dart-disp0-isoc | disabled resource description | `&hw_dart_disp0_isoc` | +| admac-disp0 | disabled resource description | `&hw_admac_disp0` | +| admac-disp0-ced-ssw | disabled resource description | `&hw_admac_disp0_ced_ssw` | +| dcpext0-expert | disabled resource description | `&hw_dcpext0_expert` | +| dart-dispext0-isoc | disabled resource description | `&hw_dart_dispext0_isoc` | +| admac-dispext0 | disabled resource description | `&hw_admac_dispext0` | +| admac-dispext0-ced-ssw | disabled resource description | `&hw_admac_dispext0_ced_ssw` | +| dispext1 | disabled resource description | `&hw_dispext1` | +| dcpext1-expert | disabled resource description | `&hw_dcpext1_expert` | +| dcpext1 | disabled resource description | `&hw_dcpext1`; power/clock gate needs a verified provider | +| dart-dcpext1 | disabled resource description | `&hw_dart_dcpext1` | +| dart-dispext1 | disabled resource description | `&hw_dart_dispext1` | +| dart-dispext1-isoc | disabled resource description | `&hw_dart_dispext1_isoc` | +| admac-dispext1 | disabled resource description | `&hw_admac_dispext1` | +| admac-dispext1-ced-ssw | disabled resource description | `&hw_admac_dispext1_ced_ssw` | +| dispext2 | disabled resource description | `&hw_dispext2` | +| dcpext2-expert | disabled resource description | `&hw_dcpext2_expert` | +| dcpext2 | disabled resource description | `&hw_dcpext2`; power/clock gate needs a verified provider | +| dart-dcpext2 | disabled resource description | `&hw_dart_dcpext2` | +| dart-dispext2 | disabled resource description | `&hw_dart_dispext2` | +| dart-dispext2-isoc | disabled resource description | `&hw_dart_dispext2_isoc` | +| admac-dispext2 | disabled resource description | `&hw_admac_dispext2` | +| admac-dispext2-ced-ssw | disabled resource description | `&hw_admac_dispext2_ced_ssw` | +| dispext3 | disabled resource description | `&hw_dispext3` | +| dcpext3-expert | disabled resource description | `&hw_dcpext3_expert` | +| dcpext3 | disabled resource description | `&hw_dcpext3`; power/clock gate needs a verified provider | +| dart-dcpext3 | disabled resource description | `&hw_dart_dcpext3` | +| dart-dispext3 | disabled resource description | `&hw_dart_dispext3` | +| dart-dispext3-isoc | disabled resource description | `&hw_dart_dispext3_isoc` | +| admac-dispext3 | disabled resource description | `&hw_admac_dispext3` | +| admac-dispext3-ced-ssw | disabled resource description | `&hw_admac_dispext3_ced_ssw` | +| dart-scaler | disabled resource description | `&hw_dart_scaler`; power/clock gate needs a verified provider | +| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider | +| dart-scaler0 | disabled resource description | `&hw_dart_scaler0`; power/clock gate needs a verified provider | +| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider | +| dart-scaler1 | disabled resource description | `&hw_dart_scaler1`; power/clock gate needs a verified provider | +| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider | +| dart-ave0 | disabled resource description | `&hw_dart_ave0`; power/clock gate needs a verified provider | +| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider | +| dart-ave1 | disabled resource description | `&hw_dart_ave1`; power/clock gate needs a verified provider | +| apr0 | disabled resource description | `&hw_apr0`; power/clock gate needs a verified provider | +| dart-apr0 | disabled resource description | `&hw_dart_apr0`; power/clock gate needs a verified provider | +| dart-apr1 | disabled resource description | `&hw_dart_apr1`; power/clock gate needs a verified provider | +| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider | +| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider | +| dart-jpeg0 | disabled resource description | `&hw_dart_jpeg0`; power/clock gate needs a verified provider | +| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider | +| dart-ane0 | disabled resource description | `&hw_dart_ane0`; power/clock gate needs a verified provider | +| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider | +| dart-avd0 | disabled resource description | `&hw_dart_avd0`; power/clock gate needs a verified provider | +| sgx | disabled resource description | `&hw_sgx`; power/clock gate needs a verified provider | +| gfx-asc | disabled resource description | `&hw_gfx_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | +| gfx1-asc | disabled resource description | `&hw_gfx1_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | +| admac-leap-ns | disabled resource description | `&hw_admac_leap_ns` | +| admac-aop-ced-ssw | disabled resource description | `&hw_admac_aop_ced_ssw` | +| admac-leap-s | disabled resource description | `&hw_admac_leap_s` | +| admac-hp-mic-ec-proxy | disabled resource description | `&hw_admac_hp_mic_ec_proxy` | +| admac-sllb-ec-proxy | disabled resource description | `&hw_admac_sllb_ec_proxy` | +| dbgCPU | disabled resource description | `&hw_dbgCPU` | +| apple-processor-trace | disabled resource description | `&hw_apple_processor_trace` | diff --git a/docs/devicetree/DT-GAPS-k114s.md b/docs/devicetree/DT-GAPS-k114s.md new file mode 100644 index 0000000000000..cf0adac406880 --- /dev/null +++ b/docs/devicetree/DT-GAPS-k114s.md @@ -0,0 +1,265 @@ +# K114S device-tree audit + +SoC: T6050. Source: board-specific static ADT. Audited 1075 ADT node records. +The table covers the devices directly attached to the SoC bus. Firmware +service containers, mapper children and transport endpoints are distinguished +from independent MMIO controllers. This is a resource-description draft, +not a claim that all of this board's devices can be driven on Linux. + +New register complexes remain disabled. Their bindings retain the complete +aperture list and AIC interrupt wiring where translation is unambiguous; +DMA mapper references are translated to IOMMU phandles and stream IDs. +No firmware, calibration or register programming values are included. + +## Remaining work + +- Qualify firmware handoff, reset, clocks and power ownership before enabling + a new block. Composite descriptions require review against the eventual + IP-specific driver interface, including shared windows. +- Complete the transport children and firmware-service bindings, pinmux, + port graphs and board wiring. Listing a controller does not cover its + attached peripherals. +- Resolve every provider/routing gap called out below. No guessed + address, interrupt parent or power-domain relationship was substituted. +- Validate on this board; no boot or peripheral test was performed. + +Existing SoC and board support comes from linux#935, linux#945 and +linux#1025; these dependencies are extended, not replaced. The static ADTs +contain template CPU records for absent dies/cores. CPU harvesting and +release addresses must be supplied by the boot loader. + +## SoC-bus coverage + +| ADT device | Description | Location or unresolved detail | +| --- | --- | --- | +| pwm2 | existing description | `&fpwm2`; auxiliary apertures still require a driver-specific audit. | +| exdisplaypipe | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| exdisplaypipe-s-proxy | unresolved address translation | No covering parent range; do not guess a physical address. | +| displaymanager | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| i2c1 | existing description | `&i2c1`; auxiliary apertures still require a driver-specific audit. | +| i2c2 | existing description | `&i2c2`; auxiliary apertures still require a driver-specific audit. | +| iop-voicetrigger-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| isp0 | unresolved binding | An IP-specific binding is still required. | +| isp-exclave-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pwm0 | existing description | `&fpwm0`; auxiliary apertures still require a driver-specific audit. | +| apcie0 | existing description | `&pcie0`; auxiliary apertures still require a driver-specific audit. | +| dart-apcie0 | existing description | `&dart_apcie0`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu0 | unresolved binding | An IP-specific binding is still required. | +| acio-phy-cpu1 | existing description | `&atc1_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu2 | existing description | `&atc2_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu3 | existing description | `&atc3_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| mtp | existing description | `&mtp`; auxiliary apertures still require a driver-specific audit. | +| dart-mtp | existing description | `&mtp_dart`; auxiliary apertures still require a driver-specific audit. | +| mtp-aop-mux | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| eic | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| aod2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| bluetooth | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| centauri | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| display-crossbar0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc0-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc1-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc2-dpxbar | existing description | `&atc2_xbar`; auxiliary apertures still require a driver-specific audit. | +| atc2-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc3-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| mcc | existing description | `&cio_reconfig0`; auxiliary apertures still require a driver-specific audit. | +| aic | existing description | `&aic`; auxiliary apertures still require a driver-specific audit. | +| wdt | existing description | `&wdt`; auxiliary apertures still require a driver-specific audit. | +| error-handler | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| auss-cpu0 | unresolved binding | An IP-specific binding is still required. | +| gpio0 | existing description | `&pinctrl_ap`; auxiliary apertures still require a driver-specific audit. | +| aop-gpio0 | existing description | `&pinctrl_aop`; auxiliary apertures still require a driver-specific audit. | +| aop | existing description | `&aop`; auxiliary apertures still require a driver-specific audit. | +| dart-aop | existing description | `&aop_dart`; auxiliary apertures still require a driver-specific audit. | +| aop-exclave-ioreporting | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pmgr | existing description | `&pmgr0`; auxiliary apertures still require a driver-specific audit. | +| pmp1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-pmp1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| esm | unresolved address translation | No covering parent range; do not guess a physical address. | +| ans | existing description | `&nvme`; auxiliary apertures still require a driver-specific audit. | +| sart-ans | existing description | `&ans_sart`; auxiliary apertures still require a driver-specific audit. | +| smc | existing description | `&smc`; auxiliary apertures still require a driver-specific audit. | +| uart0 | unresolved binding | An IP-specific binding is still required. | +| dockchannel-uart | existing description | `&dockchannel`; auxiliary apertures still require a driver-specific audit. | +| qspi | existing description | `&qspi`; auxiliary apertures still require a driver-specific audit. | +| dp2hdmi-gpio0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc-phy1 | existing description | `&atc1_phy`; auxiliary apertures still require a driver-specific audit. | +| dart-usb1 | existing description | `&usb_drd1_dart_0`; auxiliary apertures still require a driver-specific audit. | +| usb-drd1 | existing description | `&usb_drd1`; auxiliary apertures still require a driver-specific audit. | +| atc-phy2 | existing description | `&atc2_phy`; auxiliary apertures still require a driver-specific audit. | +| dart-usb2 | existing description | `&usb_drd2_dart_0`; auxiliary apertures still require a driver-specific audit. | +| usb-drd2 | existing description | `&usb_drd2`; auxiliary apertures still require a driver-specific audit. | +| atc-phy3 | existing description | `&atc3_phy`; auxiliary apertures still require a driver-specific audit. | +| usb-auss0 | unresolved binding | An IP-specific binding is still required. | +| nub-spmi0 | existing description | `&nub_spmi0`; auxiliary apertures still require a driver-specific audit. | +| nub-spmi-a0 | existing description | `&nub_spmi_a0`; auxiliary apertures still require a driver-specific audit. | +| dcp0-sac-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dcp-exclave-mailbox | unresolved address translation | No covering parent range; do not guess a physical address. | +| dcp-exclave-ioreporting | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dispext0 | existing description | `&dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dcpext0 | existing description | `&dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dart-dcpext0 | existing description | `&dart_dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dart-dispext0 | existing description | `&dart_dispext0`; auxiliary apertures still require a driver-specific audit. | +| dp-audio1 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio3 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio4 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17cr1_42 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17cr2_42 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17c_48 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_97 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| mapper-gfx-asc | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| sapt | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| iop-audio-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| admac-base-ns | existing description | `&admac_base_ns`; auxiliary apertures still require a driver-specific audit. | +| audio-shared-dart-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| audio-hp-mic-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| audio-sllb-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| smctempsensor0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| cpu-debug-interface | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| nub-swd0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pwm1 | existing description | `&fpwm1`; auxiliary apertures still require a driver-specific audit. | +| timesync | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| fillmore | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| isp-exclave-s-proxy | unresolved address translation | No covering parent range; do not guess a physical address. | +| msg | unresolved binding | An IP-specific binding is still required. | +| msghub | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_5 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_6 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| device-supports-gf2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| i2c0 | disabled resource description | `&hw_i2c0`; power/clock gate needs a verified provider | +| i2c3 | disabled resource description | `&hw_i2c3`; power/clock gate needs a verified provider | +| i2c4 | disabled resource description | `&hw_i2c4`; power/clock gate needs a verified provider | +| i2c6 | disabled resource description | `&hw_i2c6`; power/clock gate needs a verified provider | +| i2c8 | disabled resource description | `&hw_i2c8`; power/clock gate needs a verified provider | +| spi2 | disabled resource description | `&hw_spi2`; power/clock gate needs a verified provider | +| spi4 | disabled resource description | `&hw_spi4`; power/clock gate needs a verified provider | +| nub-spmi-a1 | disabled resource description | `&hw_nub_spmi_a1`; mixed/non-AIC interrupt routing needs decoding | +| dart-isp0 | disabled resource description | `&hw_dart_isp0`; power/clock gate needs a verified provider | +| apcie0-piodma | disabled resource description | `&hw_apcie0_piodma` | +| dart-apcie1 | disabled resource description | `&hw_dart_apcie1` | +| apcie1-piodma | disabled resource description | `&hw_apcie1_piodma` | +| dockchannel-mtp | disabled resource description | `&hw_dockchannel_mtp` | +| secure-repair | disabled resource description | `&hw_secure_repair` | +| apciec0 | disabled resource description | `&hw_apciec0`; power/clock gate needs a verified provider | +| dart-apciec0 | disabled resource description | `&hw_dart_apciec0` | +| apciec0-piodma | disabled resource description | `&hw_apciec0_piodma` | +| acio0 | disabled resource description | `&hw_acio0`; power/clock gate needs a verified provider | +| dart-acio0 | disabled resource description | `&hw_dart_acio0` | +| acio-cpu0 | disabled resource description | `&hw_acio_cpu0`; power/clock gate needs a verified provider | +| apciec1 | disabled resource description | `&hw_apciec1`; power/clock gate needs a verified provider | +| dart-apciec1 | disabled resource description | `&hw_dart_apciec1` | +| apciec1-piodma | disabled resource description | `&hw_apciec1_piodma` | +| acio1 | disabled resource description | `&hw_acio1`; power/clock gate needs a verified provider | +| dart-acio1 | disabled resource description | `&hw_dart_acio1` | +| acio-cpu1 | disabled resource description | `&hw_acio_cpu1`; power/clock gate needs a verified provider | +| apciec2 | disabled resource description | `&hw_apciec2`; power/clock gate needs a verified provider | +| dart-apciec2 | disabled resource description | `&hw_dart_apciec2` | +| apciec2-piodma | disabled resource description | `&hw_apciec2_piodma` | +| acio2 | disabled resource description | `&hw_acio2`; power/clock gate needs a verified provider | +| dart-acio2 | disabled resource description | `&hw_dart_acio2` | +| acio-cpu2 | disabled resource description | `&hw_acio_cpu2`; power/clock gate needs a verified provider | +| atc0-dpxbar | disabled resource description | `&hw_atc0_dpxbar` | +| atc0-dpin0 | disabled resource description | `&hw_atc0_dpin0` | +| atc0-dpin1 | disabled resource description | `&hw_atc0_dpin1` | +| atc0-dpin2 | disabled resource description | `&hw_atc0_dpin2` | +| atc0-dpin3 | disabled resource description | `&hw_atc0_dpin3` | +| atc1-dpxbar | disabled resource description | `&hw_atc1_dpxbar` | +| atc1-dpin0 | disabled resource description | `&hw_atc1_dpin0` | +| atc1-dpin1 | disabled resource description | `&hw_atc1_dpin1` | +| atc1-dpin2 | disabled resource description | `&hw_atc1_dpin2` | +| atc1-dpin3 | disabled resource description | `&hw_atc1_dpin3` | +| atc2-dpin0 | disabled resource description | `&hw_atc2_dpin0` | +| atc2-dpin1 | disabled resource description | `&hw_atc2_dpin1` | +| atc2-dpin2 | disabled resource description | `&hw_atc2_dpin2` | +| atc2-dpin3 | disabled resource description | `&hw_atc2_dpin3` | +| atc3-dpxbar | disabled resource description | `&hw_atc3_dpxbar` | +| aic-timebase | disabled resource description | `&hw_aic_timebase` | +| aes | disabled resource description | `&hw_aes`; power/clock gate needs a verified provider | +| nub-gpio0 | disabled resource description | `&hw_nub_gpio0` | +| aop-exclave-mailbox | disabled resource description | `&hw_aop_exclave_mailbox` | +| aop2 | disabled resource description | `&hw_aop2` | +| event-log-handler | disabled resource description | `&hw_event_log_handler` | +| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider | +| dart-sio | disabled resource description | `&hw_dart_sio`; power/clock gate needs a verified provider | +| pmp0 | disabled resource description | `&hw_pmp0`; power/clock gate needs a verified provider | +| dart-pmp0 | disabled resource description | `&hw_dart_pmp0` | +| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider | +| dart-sep | disabled resource description | `&hw_dart_sep` | +| aon-ptd | disabled resource description | `&hw_aon_ptd` | +| rsm | disabled resource description | `&hw_rsm`; power/clock gate needs a verified provider | +| dart-rsm | disabled resource description | `&hw_dart_rsm` | +| atc-phy0 | disabled resource description | `&hw_atc_phy0`; power/clock gate needs a verified provider | +| dart-usb0 | disabled resource description | `&hw_dart_usb0`; power/clock gate needs a verified provider | +| usb-drd0 | disabled resource description | `&hw_usb_drd0`; power/clock gate needs a verified provider | +| dart-auss0 | disabled resource description | `&hw_dart_auss0` | +| nub-spmi2 | disabled resource description | `&hw_nub_spmi2`; mixed/non-AIC interrupt routing needs decoding | +| nub-spmi3 | disabled resource description | `&hw_nub_spmi3`; mixed/non-AIC interrupt routing needs decoding | +| aop-spmi0 | disabled resource description | `&hw_aop_spmi0`; mixed/non-AIC interrupt routing needs decoding | +| dptx0-aux | disabled resource description | `&hw_dptx0_aux`; power/clock gate needs a verified provider | +| dptx1-aux | disabled resource description | `&hw_dptx1_aux`; power/clock gate needs a verified provider | +| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider | +| dart-disp0 | disabled resource description | `&hw_dart_disp0` | +| dcp0-expert | disabled resource description | `&hw_dcp0_expert` | +| dcp | disabled resource description | `&hw_dcp`; power/clock gate needs a verified provider | +| dart-dcp | disabled resource description | `&hw_dart_dcp` | +| dart-disp0-isoc | disabled resource description | `&hw_dart_disp0_isoc` | +| admac-disp0 | disabled resource description | `&hw_admac_disp0` | +| admac-disp0-ced-ssw | disabled resource description | `&hw_admac_disp0_ced_ssw` | +| dcpext0-expert | disabled resource description | `&hw_dcpext0_expert` | +| dart-dispext0-isoc | disabled resource description | `&hw_dart_dispext0_isoc` | +| admac-dispext0 | disabled resource description | `&hw_admac_dispext0` | +| admac-dispext0-ced-ssw | disabled resource description | `&hw_admac_dispext0_ced_ssw` | +| dispext1 | disabled resource description | `&hw_dispext1` | +| dcpext1-expert | disabled resource description | `&hw_dcpext1_expert` | +| dcpext1 | disabled resource description | `&hw_dcpext1`; power/clock gate needs a verified provider | +| dart-dcpext1 | disabled resource description | `&hw_dart_dcpext1` | +| dart-dispext1 | disabled resource description | `&hw_dart_dispext1` | +| dart-dispext1-isoc | disabled resource description | `&hw_dart_dispext1_isoc` | +| admac-dispext1 | disabled resource description | `&hw_admac_dispext1` | +| admac-dispext1-ced-ssw | disabled resource description | `&hw_admac_dispext1_ced_ssw` | +| dispext2 | disabled resource description | `&hw_dispext2` | +| dcpext2-expert | disabled resource description | `&hw_dcpext2_expert` | +| dcpext2 | disabled resource description | `&hw_dcpext2`; power/clock gate needs a verified provider | +| dart-dcpext2 | disabled resource description | `&hw_dart_dcpext2` | +| dart-dispext2 | disabled resource description | `&hw_dart_dispext2` | +| dart-dispext2-isoc | disabled resource description | `&hw_dart_dispext2_isoc` | +| admac-dispext2 | disabled resource description | `&hw_admac_dispext2` | +| admac-dispext2-ced-ssw | disabled resource description | `&hw_admac_dispext2_ced_ssw` | +| dispext3 | disabled resource description | `&hw_dispext3` | +| dcpext3-expert | disabled resource description | `&hw_dcpext3_expert` | +| dcpext3 | disabled resource description | `&hw_dcpext3`; power/clock gate needs a verified provider | +| dart-dcpext3 | disabled resource description | `&hw_dart_dcpext3` | +| dart-dispext3 | disabled resource description | `&hw_dart_dispext3` | +| dart-dispext3-isoc | disabled resource description | `&hw_dart_dispext3_isoc` | +| admac-dispext3 | disabled resource description | `&hw_admac_dispext3` | +| admac-dispext3-ced-ssw | disabled resource description | `&hw_admac_dispext3_ced_ssw` | +| dart-scaler | disabled resource description | `&hw_dart_scaler`; power/clock gate needs a verified provider | +| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider | +| dart-scaler0 | disabled resource description | `&hw_dart_scaler0`; power/clock gate needs a verified provider | +| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider | +| dart-scaler1 | disabled resource description | `&hw_dart_scaler1`; power/clock gate needs a verified provider | +| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider | +| dart-ave0 | disabled resource description | `&hw_dart_ave0`; power/clock gate needs a verified provider | +| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider | +| dart-ave1 | disabled resource description | `&hw_dart_ave1`; power/clock gate needs a verified provider | +| apr0 | disabled resource description | `&hw_apr0`; power/clock gate needs a verified provider | +| dart-apr0 | disabled resource description | `&hw_dart_apr0`; power/clock gate needs a verified provider | +| dart-apr1 | disabled resource description | `&hw_dart_apr1`; power/clock gate needs a verified provider | +| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider | +| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider | +| dart-jpeg0 | disabled resource description | `&hw_dart_jpeg0`; power/clock gate needs a verified provider | +| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider | +| dart-ane0 | disabled resource description | `&hw_dart_ane0`; power/clock gate needs a verified provider | +| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider | +| dart-avd0 | disabled resource description | `&hw_dart_avd0`; power/clock gate needs a verified provider | +| sgx | disabled resource description | `&hw_sgx`; power/clock gate needs a verified provider | +| gfx-asc | disabled resource description | `&hw_gfx_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | +| gfx1-asc | disabled resource description | `&hw_gfx1_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | +| admac-leap-ns | disabled resource description | `&hw_admac_leap_ns` | +| admac-aop-ced-ssw | disabled resource description | `&hw_admac_aop_ced_ssw` | +| admac-leap-s | disabled resource description | `&hw_admac_leap_s` | +| admac-hp-mic-ec-proxy | disabled resource description | `&hw_admac_hp_mic_ec_proxy` | +| admac-sllb-ec-proxy | disabled resource description | `&hw_admac_sllb_ec_proxy` | +| dbgCPU | disabled resource description | `&hw_dbgCPU` | +| apple-processor-trace | disabled resource description | `&hw_apple_processor_trace` | diff --git a/docs/devicetree/DT-GAPS-k116c.md b/docs/devicetree/DT-GAPS-k116c.md new file mode 100644 index 0000000000000..5904b1c8a6d65 --- /dev/null +++ b/docs/devicetree/DT-GAPS-k116c.md @@ -0,0 +1,267 @@ +# K116C device-tree audit + +SoC: T6050. Source: board-specific static ADT. Audited 1080 ADT node records. +The table covers the devices directly attached to the SoC bus. Firmware +service containers, mapper children and transport endpoints are distinguished +from independent MMIO controllers. This is a resource-description draft, +not a claim that all of this board's devices can be driven on Linux. + +New register complexes remain disabled. Their bindings retain the complete +aperture list and AIC interrupt wiring where translation is unambiguous; +DMA mapper references are translated to IOMMU phandles and stream IDs. +No firmware, calibration or register programming values are included. + +## Remaining work + +- Qualify firmware handoff, reset, clocks and power ownership before enabling + a new block. Composite descriptions require review against the eventual + IP-specific driver interface, including shared windows. +- Complete the transport children and firmware-service bindings, pinmux, + port graphs and board wiring. Listing a controller does not cover its + attached peripherals. +- Resolve every provider/routing gap called out below. No guessed + address, interrupt parent or power-domain relationship was substituted. +- Validate on this board; no boot or peripheral test was performed. + +Existing SoC and board support comes from linux#935, linux#945 and +linux#1025; these dependencies are extended, not replaced. The static ADTs +contain template CPU records for absent dies/cores. CPU harvesting and +release addresses must be supplied by the boot loader. + +## SoC-bus coverage + +| ADT device | Description | Location or unresolved detail | +| --- | --- | --- | +| pwm2 | existing description | `&fpwm2`; auxiliary apertures still require a driver-specific audit. | +| exdisplaypipe | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| exdisplaypipe-s-proxy | unresolved address translation | No covering parent range; do not guess a physical address. | +| displaymanager | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| i2c1 | existing description | `&i2c1`; auxiliary apertures still require a driver-specific audit. | +| i2c2 | existing description | `&i2c2`; auxiliary apertures still require a driver-specific audit. | +| iop-voicetrigger-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| isp0 | unresolved binding | An IP-specific binding is still required. | +| isp-exclave-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pwm0 | existing description | `&fpwm0`; auxiliary apertures still require a driver-specific audit. | +| apcie0 | existing description | `&pcie0`; auxiliary apertures still require a driver-specific audit. | +| dart-apcie0 | existing description | `&dart_apcie0`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu0 | unresolved binding | An IP-specific binding is still required. | +| acio-phy-cpu1 | existing description | `&atc1_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu2 | existing description | `&atc2_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu3 | existing description | `&atc3_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| mtp | existing description | `&mtp`; auxiliary apertures still require a driver-specific audit. | +| dart-mtp | existing description | `&mtp_dart`; auxiliary apertures still require a driver-specific audit. | +| mtp-aop-mux | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| eic | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| aod2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| bluetooth | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| centauri | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| display-crossbar0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc0-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc1-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc2-dpxbar | existing description | `&atc2_xbar`; auxiliary apertures still require a driver-specific audit. | +| atc2-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc3-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| mcc | existing description | `&cio_reconfig0`; auxiliary apertures still require a driver-specific audit. | +| aic | existing description | `&aic`; auxiliary apertures still require a driver-specific audit. | +| wdt | existing description | `&wdt`; auxiliary apertures still require a driver-specific audit. | +| error-handler | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| auss-cpu0 | unresolved binding | An IP-specific binding is still required. | +| gpio0 | existing description | `&pinctrl_ap`; auxiliary apertures still require a driver-specific audit. | +| aop-gpio0 | existing description | `&pinctrl_aop`; auxiliary apertures still require a driver-specific audit. | +| aop | existing description | `&aop`; auxiliary apertures still require a driver-specific audit. | +| dart-aop | existing description | `&aop_dart`; auxiliary apertures still require a driver-specific audit. | +| aop-exclave-ioreporting | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pmgr | existing description | `&pmgr0`; auxiliary apertures still require a driver-specific audit. | +| pmp1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-pmp1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| esm | unresolved address translation | No covering parent range; do not guess a physical address. | +| ans | existing description | `&nvme`; auxiliary apertures still require a driver-specific audit. | +| sart-ans | existing description | `&ans_sart`; auxiliary apertures still require a driver-specific audit. | +| smc | existing description | `&smc`; auxiliary apertures still require a driver-specific audit. | +| uart0 | unresolved binding | An IP-specific binding is still required. | +| dockchannel-uart | existing description | `&dockchannel`; auxiliary apertures still require a driver-specific audit. | +| qspi | existing description | `&qspi`; auxiliary apertures still require a driver-specific audit. | +| dp2hdmi-gpio0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc-phy1 | existing description | `&atc1_phy`; auxiliary apertures still require a driver-specific audit. | +| dart-usb1 | existing description | `&usb_drd1_dart_0`; auxiliary apertures still require a driver-specific audit. | +| usb-drd1 | existing description | `&usb_drd1`; auxiliary apertures still require a driver-specific audit. | +| atc-phy2 | existing description | `&atc2_phy`; auxiliary apertures still require a driver-specific audit. | +| dart-usb2 | existing description | `&usb_drd2_dart_0`; auxiliary apertures still require a driver-specific audit. | +| usb-drd2 | existing description | `&usb_drd2`; auxiliary apertures still require a driver-specific audit. | +| atc-phy3 | existing description | `&atc3_phy`; auxiliary apertures still require a driver-specific audit. | +| usb-auss0 | unresolved binding | An IP-specific binding is still required. | +| nub-spmi0 | existing description | `&nub_spmi0`; auxiliary apertures still require a driver-specific audit. | +| nub-spmi-a0 | existing description | `&nub_spmi_a0`; auxiliary apertures still require a driver-specific audit. | +| dcp0-sac-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dcp-exclave-mailbox | unresolved address translation | No covering parent range; do not guess a physical address. | +| dcp-exclave-ioreporting | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dispext0 | existing description | `&dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dcpext0 | existing description | `&dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dart-dcpext0 | existing description | `&dart_dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dart-dispext0 | existing description | `&dart_dispext0`; auxiliary apertures still require a driver-specific audit. | +| dp-audio1 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio3 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio4 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17cr1_42 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17cr2_42 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17c_48 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_97 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| mapper-gfx-asc | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| sapt | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| iop-audio-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| admac-base-ns | existing description | `&admac_base_ns`; auxiliary apertures still require a driver-specific audit. | +| audio-shared-dart-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| audio-hp-mic-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| audio-sllb-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| smctempsensor0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| cpu-debug-interface | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| nub-swd0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pwm1 | existing description | `&fpwm1`; auxiliary apertures still require a driver-specific audit. | +| timesync | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| fillmore | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| isp-exclave-s-proxy | unresolved address translation | No covering parent range; do not guess a physical address. | +| msg | unresolved binding | An IP-specific binding is still required. | +| msghub | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_5 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_6 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| device-supports-gf2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| nub-spmi1 | disabled resource description | `&hw_nub_spmi1`; mixed/non-AIC interrupt routing needs decoding | +| nub-spmi4 | disabled resource description | `&hw_nub_spmi4`; mixed/non-AIC interrupt routing needs decoding | +| i2c0 | disabled resource description | `&hw_i2c0`; power/clock gate needs a verified provider | +| i2c3 | disabled resource description | `&hw_i2c3`; power/clock gate needs a verified provider | +| i2c4 | disabled resource description | `&hw_i2c4`; power/clock gate needs a verified provider | +| i2c6 | disabled resource description | `&hw_i2c6`; power/clock gate needs a verified provider | +| i2c8 | disabled resource description | `&hw_i2c8`; power/clock gate needs a verified provider | +| spi2 | disabled resource description | `&hw_spi2`; power/clock gate needs a verified provider | +| spi4 | disabled resource description | `&hw_spi4`; power/clock gate needs a verified provider | +| nub-spmi-a1 | disabled resource description | `&hw_nub_spmi_a1`; mixed/non-AIC interrupt routing needs decoding | +| dart-isp0 | disabled resource description | `&hw_dart_isp0`; power/clock gate needs a verified provider | +| apcie0-piodma | disabled resource description | `&hw_apcie0_piodma` | +| dart-apcie1 | disabled resource description | `&hw_dart_apcie1` | +| apcie1-piodma | disabled resource description | `&hw_apcie1_piodma` | +| dockchannel-mtp | disabled resource description | `&hw_dockchannel_mtp` | +| secure-repair | disabled resource description | `&hw_secure_repair` | +| apciec0 | disabled resource description | `&hw_apciec0`; power/clock gate needs a verified provider | +| dart-apciec0 | disabled resource description | `&hw_dart_apciec0` | +| apciec0-piodma | disabled resource description | `&hw_apciec0_piodma` | +| acio0 | disabled resource description | `&hw_acio0`; power/clock gate needs a verified provider | +| dart-acio0 | disabled resource description | `&hw_dart_acio0` | +| acio-cpu0 | disabled resource description | `&hw_acio_cpu0`; power/clock gate needs a verified provider | +| apciec1 | disabled resource description | `&hw_apciec1`; power/clock gate needs a verified provider | +| dart-apciec1 | disabled resource description | `&hw_dart_apciec1` | +| apciec1-piodma | disabled resource description | `&hw_apciec1_piodma` | +| acio1 | disabled resource description | `&hw_acio1`; power/clock gate needs a verified provider | +| dart-acio1 | disabled resource description | `&hw_dart_acio1` | +| acio-cpu1 | disabled resource description | `&hw_acio_cpu1`; power/clock gate needs a verified provider | +| apciec2 | disabled resource description | `&hw_apciec2`; power/clock gate needs a verified provider | +| dart-apciec2 | disabled resource description | `&hw_dart_apciec2` | +| apciec2-piodma | disabled resource description | `&hw_apciec2_piodma` | +| acio2 | disabled resource description | `&hw_acio2`; power/clock gate needs a verified provider | +| dart-acio2 | disabled resource description | `&hw_dart_acio2` | +| acio-cpu2 | disabled resource description | `&hw_acio_cpu2`; power/clock gate needs a verified provider | +| atc0-dpxbar | disabled resource description | `&hw_atc0_dpxbar` | +| atc0-dpin0 | disabled resource description | `&hw_atc0_dpin0` | +| atc0-dpin1 | disabled resource description | `&hw_atc0_dpin1` | +| atc0-dpin2 | disabled resource description | `&hw_atc0_dpin2` | +| atc0-dpin3 | disabled resource description | `&hw_atc0_dpin3` | +| atc1-dpxbar | disabled resource description | `&hw_atc1_dpxbar` | +| atc1-dpin0 | disabled resource description | `&hw_atc1_dpin0` | +| atc1-dpin1 | disabled resource description | `&hw_atc1_dpin1` | +| atc1-dpin2 | disabled resource description | `&hw_atc1_dpin2` | +| atc1-dpin3 | disabled resource description | `&hw_atc1_dpin3` | +| atc2-dpin0 | disabled resource description | `&hw_atc2_dpin0` | +| atc2-dpin1 | disabled resource description | `&hw_atc2_dpin1` | +| atc2-dpin2 | disabled resource description | `&hw_atc2_dpin2` | +| atc2-dpin3 | disabled resource description | `&hw_atc2_dpin3` | +| atc3-dpxbar | disabled resource description | `&hw_atc3_dpxbar` | +| aic-timebase | disabled resource description | `&hw_aic_timebase` | +| aes | disabled resource description | `&hw_aes`; power/clock gate needs a verified provider | +| nub-gpio0 | disabled resource description | `&hw_nub_gpio0` | +| aop-exclave-mailbox | disabled resource description | `&hw_aop_exclave_mailbox` | +| aop2 | disabled resource description | `&hw_aop2` | +| event-log-handler | disabled resource description | `&hw_event_log_handler` | +| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider | +| dart-sio | disabled resource description | `&hw_dart_sio`; power/clock gate needs a verified provider | +| pmp0 | disabled resource description | `&hw_pmp0`; power/clock gate needs a verified provider | +| dart-pmp0 | disabled resource description | `&hw_dart_pmp0` | +| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider | +| dart-sep | disabled resource description | `&hw_dart_sep` | +| aon-ptd | disabled resource description | `&hw_aon_ptd` | +| rsm | disabled resource description | `&hw_rsm`; power/clock gate needs a verified provider | +| dart-rsm | disabled resource description | `&hw_dart_rsm` | +| atc-phy0 | disabled resource description | `&hw_atc_phy0`; power/clock gate needs a verified provider | +| dart-usb0 | disabled resource description | `&hw_dart_usb0`; power/clock gate needs a verified provider | +| usb-drd0 | disabled resource description | `&hw_usb_drd0`; power/clock gate needs a verified provider | +| dart-auss0 | disabled resource description | `&hw_dart_auss0` | +| nub-spmi2 | disabled resource description | `&hw_nub_spmi2`; mixed/non-AIC interrupt routing needs decoding | +| nub-spmi3 | disabled resource description | `&hw_nub_spmi3`; mixed/non-AIC interrupt routing needs decoding | +| aop-spmi0 | disabled resource description | `&hw_aop_spmi0`; mixed/non-AIC interrupt routing needs decoding | +| dptx0-aux | disabled resource description | `&hw_dptx0_aux`; power/clock gate needs a verified provider | +| dptx1-aux | disabled resource description | `&hw_dptx1_aux`; power/clock gate needs a verified provider | +| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider | +| dart-disp0 | disabled resource description | `&hw_dart_disp0` | +| dcp0-expert | disabled resource description | `&hw_dcp0_expert` | +| dcp | disabled resource description | `&hw_dcp`; power/clock gate needs a verified provider | +| dart-dcp | disabled resource description | `&hw_dart_dcp` | +| dart-disp0-isoc | disabled resource description | `&hw_dart_disp0_isoc` | +| admac-disp0 | disabled resource description | `&hw_admac_disp0` | +| admac-disp0-ced-ssw | disabled resource description | `&hw_admac_disp0_ced_ssw` | +| dcpext0-expert | disabled resource description | `&hw_dcpext0_expert` | +| dart-dispext0-isoc | disabled resource description | `&hw_dart_dispext0_isoc` | +| admac-dispext0 | disabled resource description | `&hw_admac_dispext0` | +| admac-dispext0-ced-ssw | disabled resource description | `&hw_admac_dispext0_ced_ssw` | +| dispext1 | disabled resource description | `&hw_dispext1` | +| dcpext1-expert | disabled resource description | `&hw_dcpext1_expert` | +| dcpext1 | disabled resource description | `&hw_dcpext1`; power/clock gate needs a verified provider | +| dart-dcpext1 | disabled resource description | `&hw_dart_dcpext1` | +| dart-dispext1 | disabled resource description | `&hw_dart_dispext1` | +| dart-dispext1-isoc | disabled resource description | `&hw_dart_dispext1_isoc` | +| admac-dispext1 | disabled resource description | `&hw_admac_dispext1` | +| admac-dispext1-ced-ssw | disabled resource description | `&hw_admac_dispext1_ced_ssw` | +| dispext2 | disabled resource description | `&hw_dispext2` | +| dcpext2-expert | disabled resource description | `&hw_dcpext2_expert` | +| dcpext2 | disabled resource description | `&hw_dcpext2`; power/clock gate needs a verified provider | +| dart-dcpext2 | disabled resource description | `&hw_dart_dcpext2` | +| dart-dispext2 | disabled resource description | `&hw_dart_dispext2` | +| dart-dispext2-isoc | disabled resource description | `&hw_dart_dispext2_isoc` | +| admac-dispext2 | disabled resource description | `&hw_admac_dispext2` | +| admac-dispext2-ced-ssw | disabled resource description | `&hw_admac_dispext2_ced_ssw` | +| dispext3 | disabled resource description | `&hw_dispext3` | +| dcpext3-expert | disabled resource description | `&hw_dcpext3_expert` | +| dcpext3 | disabled resource description | `&hw_dcpext3`; power/clock gate needs a verified provider | +| dart-dcpext3 | disabled resource description | `&hw_dart_dcpext3` | +| dart-dispext3 | disabled resource description | `&hw_dart_dispext3` | +| dart-dispext3-isoc | disabled resource description | `&hw_dart_dispext3_isoc` | +| admac-dispext3 | disabled resource description | `&hw_admac_dispext3` | +| admac-dispext3-ced-ssw | disabled resource description | `&hw_admac_dispext3_ced_ssw` | +| dart-scaler | disabled resource description | `&hw_dart_scaler`; power/clock gate needs a verified provider | +| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider | +| dart-scaler0 | disabled resource description | `&hw_dart_scaler0`; power/clock gate needs a verified provider | +| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider | +| dart-scaler1 | disabled resource description | `&hw_dart_scaler1`; power/clock gate needs a verified provider | +| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider | +| dart-ave0 | disabled resource description | `&hw_dart_ave0`; power/clock gate needs a verified provider | +| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider | +| dart-ave1 | disabled resource description | `&hw_dart_ave1`; power/clock gate needs a verified provider | +| apr0 | disabled resource description | `&hw_apr0`; power/clock gate needs a verified provider | +| dart-apr0 | disabled resource description | `&hw_dart_apr0`; power/clock gate needs a verified provider | +| dart-apr1 | disabled resource description | `&hw_dart_apr1`; power/clock gate needs a verified provider | +| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider | +| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider | +| dart-jpeg0 | disabled resource description | `&hw_dart_jpeg0`; power/clock gate needs a verified provider | +| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider | +| dart-ane0 | disabled resource description | `&hw_dart_ane0`; power/clock gate needs a verified provider | +| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider | +| dart-avd0 | disabled resource description | `&hw_dart_avd0`; power/clock gate needs a verified provider | +| sgx | disabled resource description | `&hw_sgx`; power/clock gate needs a verified provider | +| gfx-asc | disabled resource description | `&hw_gfx_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | +| gfx1-asc | disabled resource description | `&hw_gfx1_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | +| admac-leap-ns | disabled resource description | `&hw_admac_leap_ns` | +| admac-aop-ced-ssw | disabled resource description | `&hw_admac_aop_ced_ssw` | +| admac-leap-s | disabled resource description | `&hw_admac_leap_s` | +| admac-hp-mic-ec-proxy | disabled resource description | `&hw_admac_hp_mic_ec_proxy` | +| admac-sllb-ec-proxy | disabled resource description | `&hw_admac_sllb_ec_proxy` | +| dbgCPU | disabled resource description | `&hw_dbgCPU` | +| apple-processor-trace | disabled resource description | `&hw_apple_processor_trace` | diff --git a/docs/devicetree/DT-GAPS-k116s.md b/docs/devicetree/DT-GAPS-k116s.md new file mode 100644 index 0000000000000..18c373b54e696 --- /dev/null +++ b/docs/devicetree/DT-GAPS-k116s.md @@ -0,0 +1,265 @@ +# K116S device-tree audit + +SoC: T6050. Source: board-specific static ADT. Audited 1075 ADT node records. +The table covers the devices directly attached to the SoC bus. Firmware +service containers, mapper children and transport endpoints are distinguished +from independent MMIO controllers. This is a resource-description draft, +not a claim that all of this board's devices can be driven on Linux. + +New register complexes remain disabled. Their bindings retain the complete +aperture list and AIC interrupt wiring where translation is unambiguous; +DMA mapper references are translated to IOMMU phandles and stream IDs. +No firmware, calibration or register programming values are included. + +## Remaining work + +- Qualify firmware handoff, reset, clocks and power ownership before enabling + a new block. Composite descriptions require review against the eventual + IP-specific driver interface, including shared windows. +- Complete the transport children and firmware-service bindings, pinmux, + port graphs and board wiring. Listing a controller does not cover its + attached peripherals. +- Resolve every provider/routing gap called out below. No guessed + address, interrupt parent or power-domain relationship was substituted. +- Validate on this board; no boot or peripheral test was performed. + +Existing SoC and board support comes from linux#935, linux#945 and +linux#1025; these dependencies are extended, not replaced. The static ADTs +contain template CPU records for absent dies/cores. CPU harvesting and +release addresses must be supplied by the boot loader. + +## SoC-bus coverage + +| ADT device | Description | Location or unresolved detail | +| --- | --- | --- | +| pwm2 | existing description | `&fpwm2`; auxiliary apertures still require a driver-specific audit. | +| exdisplaypipe | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| exdisplaypipe-s-proxy | unresolved address translation | No covering parent range; do not guess a physical address. | +| displaymanager | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| i2c1 | existing description | `&i2c1`; auxiliary apertures still require a driver-specific audit. | +| i2c2 | existing description | `&i2c2`; auxiliary apertures still require a driver-specific audit. | +| iop-voicetrigger-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| isp0 | unresolved binding | An IP-specific binding is still required. | +| isp-exclave-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pwm0 | existing description | `&fpwm0`; auxiliary apertures still require a driver-specific audit. | +| apcie0 | existing description | `&pcie0`; auxiliary apertures still require a driver-specific audit. | +| dart-apcie0 | existing description | `&dart_apcie0`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu0 | unresolved binding | An IP-specific binding is still required. | +| acio-phy-cpu1 | existing description | `&atc1_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu2 | existing description | `&atc2_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| acio-phy-cpu3 | existing description | `&atc3_phy_mbox`; auxiliary apertures still require a driver-specific audit. | +| mtp | existing description | `&mtp`; auxiliary apertures still require a driver-specific audit. | +| dart-mtp | existing description | `&mtp_dart`; auxiliary apertures still require a driver-specific audit. | +| mtp-aop-mux | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| eic | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| aod2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| bluetooth | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| centauri | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| display-crossbar0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc0-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc1-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc2-dpxbar | existing description | `&atc2_xbar`; auxiliary apertures still require a driver-specific audit. | +| atc2-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc3-dpphy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| mcc | existing description | `&cio_reconfig0`; auxiliary apertures still require a driver-specific audit. | +| aic | existing description | `&aic`; auxiliary apertures still require a driver-specific audit. | +| wdt | existing description | `&wdt`; auxiliary apertures still require a driver-specific audit. | +| error-handler | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| auss-cpu0 | unresolved binding | An IP-specific binding is still required. | +| gpio0 | existing description | `&pinctrl_ap`; auxiliary apertures still require a driver-specific audit. | +| aop-gpio0 | existing description | `&pinctrl_aop`; auxiliary apertures still require a driver-specific audit. | +| aop | existing description | `&aop`; auxiliary apertures still require a driver-specific audit. | +| dart-aop | existing description | `&aop_dart`; auxiliary apertures still require a driver-specific audit. | +| aop-exclave-ioreporting | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pmgr | existing description | `&pmgr0`; auxiliary apertures still require a driver-specific audit. | +| pmp1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| dart-pmp1 | unresolved address translation | No covering parent range; do not guess a physical address. | +| esm | unresolved address translation | No covering parent range; do not guess a physical address. | +| ans | existing description | `&nvme`; auxiliary apertures still require a driver-specific audit. | +| sart-ans | existing description | `&ans_sart`; auxiliary apertures still require a driver-specific audit. | +| smc | existing description | `&smc`; auxiliary apertures still require a driver-specific audit. | +| uart0 | unresolved binding | An IP-specific binding is still required. | +| dockchannel-uart | existing description | `&dockchannel`; auxiliary apertures still require a driver-specific audit. | +| qspi | existing description | `&qspi`; auxiliary apertures still require a driver-specific audit. | +| dp2hdmi-gpio0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| atc-phy1 | existing description | `&atc1_phy`; auxiliary apertures still require a driver-specific audit. | +| dart-usb1 | existing description | `&usb_drd1_dart_0`; auxiliary apertures still require a driver-specific audit. | +| usb-drd1 | existing description | `&usb_drd1`; auxiliary apertures still require a driver-specific audit. | +| atc-phy2 | existing description | `&atc2_phy`; auxiliary apertures still require a driver-specific audit. | +| dart-usb2 | existing description | `&usb_drd2_dart_0`; auxiliary apertures still require a driver-specific audit. | +| usb-drd2 | existing description | `&usb_drd2`; auxiliary apertures still require a driver-specific audit. | +| atc-phy3 | existing description | `&atc3_phy`; auxiliary apertures still require a driver-specific audit. | +| usb-auss0 | unresolved binding | An IP-specific binding is still required. | +| nub-spmi0 | existing description | `&nub_spmi0`; auxiliary apertures still require a driver-specific audit. | +| nub-spmi-a0 | existing description | `&nub_spmi_a0`; auxiliary apertures still require a driver-specific audit. | +| dcp0-sac-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dcp-exclave-mailbox | unresolved address translation | No covering parent range; do not guess a physical address. | +| dcp-exclave-ioreporting | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dispext0 | existing description | `&dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dcpext0 | existing description | `&dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dart-dcpext0 | existing description | `&dart_dcpext0`; auxiliary apertures still require a driver-specific audit. | +| dart-dispext0 | existing description | `&dart_dispext0`; auxiliary apertures still require a driver-specific audit. | +| dp-audio1 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio3 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| dp-audio4 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17cr1_42 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17cr2_42 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17c_48 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_97 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| mapper-gfx-asc | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| sapt | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| iop-audio-controller | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| admac-base-ns | existing description | `&admac_base_ns`; auxiliary apertures still require a driver-specific audit. | +| audio-shared-dart-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| audio-hp-mic-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| audio-sllb-proxy | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| smctempsensor0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| cpu-debug-interface | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| nub-swd0 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| pwm1 | existing description | `&fpwm1`; auxiliary apertures still require a driver-specific audit. | +| timesync | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| fillmore | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| isp-exclave-s-proxy | unresolved address translation | No covering parent range; do not guess a physical address. | +| msg | unresolved binding | An IP-specific binding is still required. | +| msghub | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_5 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| :sotra_h17d_6 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| device-supports-gf2 | interface or firmware service | No independent MMIO aperture; requires transport/service binding. | +| i2c0 | disabled resource description | `&hw_i2c0`; power/clock gate needs a verified provider | +| i2c3 | disabled resource description | `&hw_i2c3`; power/clock gate needs a verified provider | +| i2c4 | disabled resource description | `&hw_i2c4`; power/clock gate needs a verified provider | +| i2c6 | disabled resource description | `&hw_i2c6`; power/clock gate needs a verified provider | +| i2c8 | disabled resource description | `&hw_i2c8`; power/clock gate needs a verified provider | +| spi2 | disabled resource description | `&hw_spi2`; power/clock gate needs a verified provider | +| spi4 | disabled resource description | `&hw_spi4`; power/clock gate needs a verified provider | +| nub-spmi-a1 | disabled resource description | `&hw_nub_spmi_a1`; mixed/non-AIC interrupt routing needs decoding | +| dart-isp0 | disabled resource description | `&hw_dart_isp0`; power/clock gate needs a verified provider | +| apcie0-piodma | disabled resource description | `&hw_apcie0_piodma` | +| dart-apcie1 | disabled resource description | `&hw_dart_apcie1` | +| apcie1-piodma | disabled resource description | `&hw_apcie1_piodma` | +| dockchannel-mtp | disabled resource description | `&hw_dockchannel_mtp` | +| secure-repair | disabled resource description | `&hw_secure_repair` | +| apciec0 | disabled resource description | `&hw_apciec0`; power/clock gate needs a verified provider | +| dart-apciec0 | disabled resource description | `&hw_dart_apciec0` | +| apciec0-piodma | disabled resource description | `&hw_apciec0_piodma` | +| acio0 | disabled resource description | `&hw_acio0`; power/clock gate needs a verified provider | +| dart-acio0 | disabled resource description | `&hw_dart_acio0` | +| acio-cpu0 | disabled resource description | `&hw_acio_cpu0`; power/clock gate needs a verified provider | +| apciec1 | disabled resource description | `&hw_apciec1`; power/clock gate needs a verified provider | +| dart-apciec1 | disabled resource description | `&hw_dart_apciec1` | +| apciec1-piodma | disabled resource description | `&hw_apciec1_piodma` | +| acio1 | disabled resource description | `&hw_acio1`; power/clock gate needs a verified provider | +| dart-acio1 | disabled resource description | `&hw_dart_acio1` | +| acio-cpu1 | disabled resource description | `&hw_acio_cpu1`; power/clock gate needs a verified provider | +| apciec2 | disabled resource description | `&hw_apciec2`; power/clock gate needs a verified provider | +| dart-apciec2 | disabled resource description | `&hw_dart_apciec2` | +| apciec2-piodma | disabled resource description | `&hw_apciec2_piodma` | +| acio2 | disabled resource description | `&hw_acio2`; power/clock gate needs a verified provider | +| dart-acio2 | disabled resource description | `&hw_dart_acio2` | +| acio-cpu2 | disabled resource description | `&hw_acio_cpu2`; power/clock gate needs a verified provider | +| atc0-dpxbar | disabled resource description | `&hw_atc0_dpxbar` | +| atc0-dpin0 | disabled resource description | `&hw_atc0_dpin0` | +| atc0-dpin1 | disabled resource description | `&hw_atc0_dpin1` | +| atc0-dpin2 | disabled resource description | `&hw_atc0_dpin2` | +| atc0-dpin3 | disabled resource description | `&hw_atc0_dpin3` | +| atc1-dpxbar | disabled resource description | `&hw_atc1_dpxbar` | +| atc1-dpin0 | disabled resource description | `&hw_atc1_dpin0` | +| atc1-dpin1 | disabled resource description | `&hw_atc1_dpin1` | +| atc1-dpin2 | disabled resource description | `&hw_atc1_dpin2` | +| atc1-dpin3 | disabled resource description | `&hw_atc1_dpin3` | +| atc2-dpin0 | disabled resource description | `&hw_atc2_dpin0` | +| atc2-dpin1 | disabled resource description | `&hw_atc2_dpin1` | +| atc2-dpin2 | disabled resource description | `&hw_atc2_dpin2` | +| atc2-dpin3 | disabled resource description | `&hw_atc2_dpin3` | +| atc3-dpxbar | disabled resource description | `&hw_atc3_dpxbar` | +| aic-timebase | disabled resource description | `&hw_aic_timebase` | +| aes | disabled resource description | `&hw_aes`; power/clock gate needs a verified provider | +| nub-gpio0 | disabled resource description | `&hw_nub_gpio0` | +| aop-exclave-mailbox | disabled resource description | `&hw_aop_exclave_mailbox` | +| aop2 | disabled resource description | `&hw_aop2` | +| event-log-handler | disabled resource description | `&hw_event_log_handler` | +| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider | +| dart-sio | disabled resource description | `&hw_dart_sio`; power/clock gate needs a verified provider | +| pmp0 | disabled resource description | `&hw_pmp0`; power/clock gate needs a verified provider | +| dart-pmp0 | disabled resource description | `&hw_dart_pmp0` | +| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider | +| dart-sep | disabled resource description | `&hw_dart_sep` | +| aon-ptd | disabled resource description | `&hw_aon_ptd` | +| rsm | disabled resource description | `&hw_rsm`; power/clock gate needs a verified provider | +| dart-rsm | disabled resource description | `&hw_dart_rsm` | +| atc-phy0 | disabled resource description | `&hw_atc_phy0`; power/clock gate needs a verified provider | +| dart-usb0 | disabled resource description | `&hw_dart_usb0`; power/clock gate needs a verified provider | +| usb-drd0 | disabled resource description | `&hw_usb_drd0`; power/clock gate needs a verified provider | +| dart-auss0 | disabled resource description | `&hw_dart_auss0` | +| nub-spmi2 | disabled resource description | `&hw_nub_spmi2`; mixed/non-AIC interrupt routing needs decoding | +| nub-spmi3 | disabled resource description | `&hw_nub_spmi3`; mixed/non-AIC interrupt routing needs decoding | +| aop-spmi0 | disabled resource description | `&hw_aop_spmi0`; mixed/non-AIC interrupt routing needs decoding | +| dptx0-aux | disabled resource description | `&hw_dptx0_aux`; power/clock gate needs a verified provider | +| dptx1-aux | disabled resource description | `&hw_dptx1_aux`; power/clock gate needs a verified provider | +| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider | +| dart-disp0 | disabled resource description | `&hw_dart_disp0` | +| dcp0-expert | disabled resource description | `&hw_dcp0_expert` | +| dcp | disabled resource description | `&hw_dcp`; power/clock gate needs a verified provider | +| dart-dcp | disabled resource description | `&hw_dart_dcp` | +| dart-disp0-isoc | disabled resource description | `&hw_dart_disp0_isoc` | +| admac-disp0 | disabled resource description | `&hw_admac_disp0` | +| admac-disp0-ced-ssw | disabled resource description | `&hw_admac_disp0_ced_ssw` | +| dcpext0-expert | disabled resource description | `&hw_dcpext0_expert` | +| dart-dispext0-isoc | disabled resource description | `&hw_dart_dispext0_isoc` | +| admac-dispext0 | disabled resource description | `&hw_admac_dispext0` | +| admac-dispext0-ced-ssw | disabled resource description | `&hw_admac_dispext0_ced_ssw` | +| dispext1 | disabled resource description | `&hw_dispext1` | +| dcpext1-expert | disabled resource description | `&hw_dcpext1_expert` | +| dcpext1 | disabled resource description | `&hw_dcpext1`; power/clock gate needs a verified provider | +| dart-dcpext1 | disabled resource description | `&hw_dart_dcpext1` | +| dart-dispext1 | disabled resource description | `&hw_dart_dispext1` | +| dart-dispext1-isoc | disabled resource description | `&hw_dart_dispext1_isoc` | +| admac-dispext1 | disabled resource description | `&hw_admac_dispext1` | +| admac-dispext1-ced-ssw | disabled resource description | `&hw_admac_dispext1_ced_ssw` | +| dispext2 | disabled resource description | `&hw_dispext2` | +| dcpext2-expert | disabled resource description | `&hw_dcpext2_expert` | +| dcpext2 | disabled resource description | `&hw_dcpext2`; power/clock gate needs a verified provider | +| dart-dcpext2 | disabled resource description | `&hw_dart_dcpext2` | +| dart-dispext2 | disabled resource description | `&hw_dart_dispext2` | +| dart-dispext2-isoc | disabled resource description | `&hw_dart_dispext2_isoc` | +| admac-dispext2 | disabled resource description | `&hw_admac_dispext2` | +| admac-dispext2-ced-ssw | disabled resource description | `&hw_admac_dispext2_ced_ssw` | +| dispext3 | disabled resource description | `&hw_dispext3` | +| dcpext3-expert | disabled resource description | `&hw_dcpext3_expert` | +| dcpext3 | disabled resource description | `&hw_dcpext3`; power/clock gate needs a verified provider | +| dart-dcpext3 | disabled resource description | `&hw_dart_dcpext3` | +| dart-dispext3 | disabled resource description | `&hw_dart_dispext3` | +| dart-dispext3-isoc | disabled resource description | `&hw_dart_dispext3_isoc` | +| admac-dispext3 | disabled resource description | `&hw_admac_dispext3` | +| admac-dispext3-ced-ssw | disabled resource description | `&hw_admac_dispext3_ced_ssw` | +| dart-scaler | disabled resource description | `&hw_dart_scaler`; power/clock gate needs a verified provider | +| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider | +| dart-scaler0 | disabled resource description | `&hw_dart_scaler0`; power/clock gate needs a verified provider | +| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider | +| dart-scaler1 | disabled resource description | `&hw_dart_scaler1`; power/clock gate needs a verified provider | +| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider | +| dart-ave0 | disabled resource description | `&hw_dart_ave0`; power/clock gate needs a verified provider | +| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider | +| dart-ave1 | disabled resource description | `&hw_dart_ave1`; power/clock gate needs a verified provider | +| apr0 | disabled resource description | `&hw_apr0`; power/clock gate needs a verified provider | +| dart-apr0 | disabled resource description | `&hw_dart_apr0`; power/clock gate needs a verified provider | +| dart-apr1 | disabled resource description | `&hw_dart_apr1`; power/clock gate needs a verified provider | +| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider | +| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider | +| dart-jpeg0 | disabled resource description | `&hw_dart_jpeg0`; power/clock gate needs a verified provider | +| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider | +| dart-ane0 | disabled resource description | `&hw_dart_ane0`; power/clock gate needs a verified provider | +| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider | +| dart-avd0 | disabled resource description | `&hw_dart_avd0`; power/clock gate needs a verified provider | +| sgx | disabled resource description | `&hw_sgx`; power/clock gate needs a verified provider | +| gfx-asc | disabled resource description | `&hw_gfx_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | +| gfx1-asc | disabled resource description | `&hw_gfx1_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | +| admac-leap-ns | disabled resource description | `&hw_admac_leap_ns` | +| admac-aop-ced-ssw | disabled resource description | `&hw_admac_aop_ced_ssw` | +| admac-leap-s | disabled resource description | `&hw_admac_leap_s` | +| admac-hp-mic-ec-proxy | disabled resource description | `&hw_admac_hp_mic_ec_proxy` | +| admac-sllb-ec-proxy | disabled resource description | `&hw_admac_sllb_ec_proxy` | +| dbgCPU | disabled resource description | `&hw_dbgCPU` | +| apple-processor-trace | disabled resource description | `&hw_apple_processor_trace` | From 6a3688603dce6f8d065eaed0892e8251d85f45ae Mon Sep 17 00:00:00 2001 From: Ryan Murray <81541646+RyanTheTide@users.noreply.github.com> Date: Sat, 7 Nov 2026 22:49:39 +1100 Subject: [PATCH 2/4] arm64: dts: apple: describe T6050 board resources Add conservative board scaffolding, disabled peripheral resource descriptions and per-board coverage ledgers. Unresolved providers, transport children and handoff requirements remain explicit review gaps. Signed-off-by: Ryan Murray <81541646+RyanTheTide@users.noreply.github.com> Assisted-by: LLM --- .../soc/apple/apple,t6050-i2c-controller.yaml | 4 + .../dts/apple/t6050-j714c-peripherals.dtsi | 4 + .../dts/apple/t6050-j714s-peripherals.dtsi | 4 + arch/arm64/boot/dts/apple/t6050-j714s.dts | 18 + .../dts/apple/t6050-j716c-peripherals.dtsi | 4 + .../dts/apple/t6050-j716s-peripherals.dtsi | 4 + arch/arm64/boot/dts/apple/t6050-j716s.dts | 18 + .../dts/apple/t6050-j775c-peripherals.dtsi | 2 + arch/arm64/boot/dts/apple/t6050-j775c.dts | 18 + .../dts/apple/t6050-j775d-peripherals.dtsi | 3 + .../dts/apple/t6050-j873s-peripherals.dtsi | 1 + arch/arm64/boot/dts/apple/t6050-j873s.dts | 18 + .../dts/apple/t6050-k114c-peripherals.dtsi | 2 + .../dts/apple/t6050-k114s-peripherals.dtsi | 2 + .../dts/apple/t6050-k116c-peripherals.dtsi | 2 + .../dts/apple/t6050-k116s-peripherals.dtsi | 2 + .../boot/dts/apple/t6050-peripherals.dtsi | 3 + docs/devicetree/DT-GAPS-j714c.md | 374 +++++++++++++- docs/devicetree/DT-GAPS-j714s.md | 371 +++++++++++++- docs/devicetree/DT-GAPS-j716c.md | 374 +++++++++++++- docs/devicetree/DT-GAPS-j716s.md | 371 +++++++++++++- docs/devicetree/DT-GAPS-j775c.md | 366 +++++++++++++- docs/devicetree/DT-GAPS-j775d.md | 461 +++++++++++++++++- docs/devicetree/DT-GAPS-j873s.md | 318 +++++++++++- docs/devicetree/DT-GAPS-k114c.md | 382 ++++++++++++++- docs/devicetree/DT-GAPS-k114s.md | 379 +++++++++++++- docs/devicetree/DT-GAPS-k116c.md | 382 ++++++++++++++- docs/devicetree/DT-GAPS-k116s.md | 379 +++++++++++++- 28 files changed, 4128 insertions(+), 138 deletions(-) diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-i2c-controller.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-i2c-controller.yaml index b25ffa2d7f17f..cae50231e5a2a 100644 --- a/Documentation/devicetree/bindings/soc/apple/apple,t6050-i2c-controller.yaml +++ b/Documentation/devicetree/bindings/soc/apple/apple,t6050-i2c-controller.yaml @@ -41,6 +41,10 @@ properties: minItems: 1 maxItems: 1 + clocks: + description: The 24 MHz reference clock. + maxItems: 1 + required: - compatible - reg diff --git a/arch/arm64/boot/dts/apple/t6050-j714c-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j714c-peripherals.dtsi index 3d46dffaf3078..9417cef58074c 100644 --- a/arch/arm64/boot/dts/apple/t6050-j714c-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-j714c-peripherals.dtsi @@ -24,6 +24,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x5024000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; @@ -31,6 +32,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x502c000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; @@ -38,6 +40,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x501c000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; @@ -45,6 +48,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x5020000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; diff --git a/arch/arm64/boot/dts/apple/t6050-j714s-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j714s-peripherals.dtsi index 53b17ee980e06..0eb162684b0c4 100644 --- a/arch/arm64/boot/dts/apple/t6050-j714s-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-j714s-peripherals.dtsi @@ -8,6 +8,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x5024000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; @@ -15,6 +16,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x502c000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; @@ -22,6 +24,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x501c000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; @@ -29,6 +32,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x5020000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; diff --git a/arch/arm64/boot/dts/apple/t6050-j714s.dts b/arch/arm64/boot/dts/apple/t6050-j714s.dts index 7d7eba26b855b..d37e10f1133c6 100644 --- a/arch/arm64/boot/dts/apple/t6050-j714s.dts +++ b/arch/arm64/boot/dts/apple/t6050-j714s.dts @@ -43,3 +43,21 @@ }; #include "t6050-j714s-peripherals.dtsi" + +/* Board-specific storage and SMC handoff still require qualification. */ + +&nvme { + status = "disabled"; +}; + +&ans_mbox { + status = "disabled"; +}; + +&smc { + status = "disabled"; +}; + +&smc_mbox { + status = "disabled"; +}; diff --git a/arch/arm64/boot/dts/apple/t6050-j716c-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j716c-peripherals.dtsi index 3d46dffaf3078..9417cef58074c 100644 --- a/arch/arm64/boot/dts/apple/t6050-j716c-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-j716c-peripherals.dtsi @@ -24,6 +24,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x5024000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; @@ -31,6 +32,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x502c000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; @@ -38,6 +40,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x501c000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; @@ -45,6 +48,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x5020000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; diff --git a/arch/arm64/boot/dts/apple/t6050-j716s-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j716s-peripherals.dtsi index 53b17ee980e06..0eb162684b0c4 100644 --- a/arch/arm64/boot/dts/apple/t6050-j716s-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-j716s-peripherals.dtsi @@ -8,6 +8,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x5024000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; @@ -15,6 +16,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x502c000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; @@ -22,6 +24,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x501c000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; @@ -29,6 +32,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x5020000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; diff --git a/arch/arm64/boot/dts/apple/t6050-j716s.dts b/arch/arm64/boot/dts/apple/t6050-j716s.dts index 3597b37b0635a..f8bb47f346a93 100644 --- a/arch/arm64/boot/dts/apple/t6050-j716s.dts +++ b/arch/arm64/boot/dts/apple/t6050-j716s.dts @@ -43,3 +43,21 @@ }; #include "t6050-j716s-peripherals.dtsi" + +/* Board-specific storage and SMC handoff still require qualification. */ + +&nvme { + status = "disabled"; +}; + +&ans_mbox { + status = "disabled"; +}; + +&smc { + status = "disabled"; +}; + +&smc_mbox { + status = "disabled"; +}; diff --git a/arch/arm64/boot/dts/apple/t6050-j775c-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j775c-peripherals.dtsi index 8a024c1d34e26..ecd7db27331ad 100644 --- a/arch/arm64/boot/dts/apple/t6050-j775c-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-j775c-peripherals.dtsi @@ -24,6 +24,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x5020000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; @@ -31,6 +32,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x5024000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; diff --git a/arch/arm64/boot/dts/apple/t6050-j775c.dts b/arch/arm64/boot/dts/apple/t6050-j775c.dts index 46bbf125e8145..57c965935dd2c 100644 --- a/arch/arm64/boot/dts/apple/t6050-j775c.dts +++ b/arch/arm64/boot/dts/apple/t6050-j775c.dts @@ -43,3 +43,21 @@ }; #include "t6050-j775c-peripherals.dtsi" + +/* Board-specific storage and SMC handoff still require qualification. */ + +&nvme { + status = "disabled"; +}; + +&ans_mbox { + status = "disabled"; +}; + +&smc { + status = "disabled"; +}; + +&smc_mbox { + status = "disabled"; +}; diff --git a/arch/arm64/boot/dts/apple/t6050-j775d-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j775d-peripherals.dtsi index cf0aedeba2a3a..da62c95445c5c 100644 --- a/arch/arm64/boot/dts/apple/t6050-j775d-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-j775d-peripherals.dtsi @@ -8,6 +8,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x502c000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; @@ -31,6 +32,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x5020000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; @@ -38,6 +40,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x5024000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; diff --git a/arch/arm64/boot/dts/apple/t6050-j873s-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j873s-peripherals.dtsi index f77c856c5f9b0..e1bda9a6f3fd4 100644 --- a/arch/arm64/boot/dts/apple/t6050-j873s-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-j873s-peripherals.dtsi @@ -9,6 +9,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x5024000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; diff --git a/arch/arm64/boot/dts/apple/t6050-j873s.dts b/arch/arm64/boot/dts/apple/t6050-j873s.dts index b40a835b69b30..f5b5588fa39f2 100644 --- a/arch/arm64/boot/dts/apple/t6050-j873s.dts +++ b/arch/arm64/boot/dts/apple/t6050-j873s.dts @@ -43,3 +43,21 @@ }; #include "t6050-j873s-peripherals.dtsi" + +/* Board-specific storage and SMC handoff still require qualification. */ + +&nvme { + status = "disabled"; +}; + +&ans_mbox { + status = "disabled"; +}; + +&smc { + status = "disabled"; +}; + +&smc_mbox { + status = "disabled"; +}; diff --git a/arch/arm64/boot/dts/apple/t6050-k114c-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-k114c-peripherals.dtsi index ef2e45ae80404..53fb92270161e 100644 --- a/arch/arm64/boot/dts/apple/t6050-k114c-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-k114c-peripherals.dtsi @@ -24,6 +24,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x501c000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; @@ -31,6 +32,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x5020000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; diff --git a/arch/arm64/boot/dts/apple/t6050-k114s-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-k114s-peripherals.dtsi index 31492e89c1fbc..e694c8d9796cd 100644 --- a/arch/arm64/boot/dts/apple/t6050-k114s-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-k114s-peripherals.dtsi @@ -9,6 +9,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x501c000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; @@ -16,6 +17,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x5020000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; diff --git a/arch/arm64/boot/dts/apple/t6050-k116c-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-k116c-peripherals.dtsi index ef2e45ae80404..53fb92270161e 100644 --- a/arch/arm64/boot/dts/apple/t6050-k116c-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-k116c-peripherals.dtsi @@ -24,6 +24,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x501c000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; @@ -31,6 +32,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x5020000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; diff --git a/arch/arm64/boot/dts/apple/t6050-k116s-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-k116s-peripherals.dtsi index 31492e89c1fbc..e694c8d9796cd 100644 --- a/arch/arm64/boot/dts/apple/t6050-k116s-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-k116s-peripherals.dtsi @@ -9,6 +9,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x501c000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; @@ -16,6 +17,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x5020000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; diff --git a/arch/arm64/boot/dts/apple/t6050-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-peripherals.dtsi index 4c63ad780463c..0cd4619661a1b 100644 --- a/arch/arm64/boot/dts/apple/t6050-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-peripherals.dtsi @@ -6,6 +6,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x5010000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; @@ -13,6 +14,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x5028000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; @@ -20,6 +22,7 @@ compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; reg = <0x5 0x5030000 0x0 0x4000>; interrupts = ; + clocks = <&clkref>; status = "disabled"; }; diff --git a/docs/devicetree/DT-GAPS-j714c.md b/docs/devicetree/DT-GAPS-j714c.md index d49507d6853c1..5455d66cf054d 100644 --- a/docs/devicetree/DT-GAPS-j714c.md +++ b/docs/devicetree/DT-GAPS-j714c.md @@ -132,8 +132,8 @@ release addresses must be supplied by the boot loader. | i2c4 | disabled resource description | `&hw_i2c4`; power/clock gate needs a verified provider | | i2c6 | disabled resource description | `&hw_i2c6`; power/clock gate needs a verified provider | | i2c8 | disabled resource description | `&hw_i2c8`; power/clock gate needs a verified provider | -| spi2 | disabled resource description | `&hw_spi2`; power/clock gate needs a verified provider | -| spi4 | disabled resource description | `&hw_spi4`; power/clock gate needs a verified provider | +| spi2 | disabled resource description | `&hw_spi2`; power/clock gate needs a verified provider; clock provider not yet translated | +| spi4 | disabled resource description | `&hw_spi4`; power/clock gate needs a verified provider; clock provider not yet translated | | nub-spmi-a1 | disabled resource description | `&hw_nub_spmi_a1`; mixed/non-AIC interrupt routing needs decoding | | dart-isp0 | disabled resource description | `&hw_dart_isp0`; power/clock gate needs a verified provider | | apcie0-piodma | disabled resource description | `&hw_apcie0_piodma` | @@ -180,11 +180,11 @@ release addresses must be supplied by the boot loader. | aop-exclave-mailbox | disabled resource description | `&hw_aop_exclave_mailbox` | | aop2 | disabled resource description | `&hw_aop2` | | event-log-handler | disabled resource description | `&hw_event_log_handler` | -| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider | +| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-sio | disabled resource description | `&hw_dart_sio`; power/clock gate needs a verified provider | | pmp0 | disabled resource description | `&hw_pmp0`; power/clock gate needs a verified provider | | dart-pmp0 | disabled resource description | `&hw_dart_pmp0` | -| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider | +| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-sep | disabled resource description | `&hw_dart_sep` | | aon-ptd | disabled resource description | `&hw_aon_ptd` | | rsm | disabled resource description | `&hw_rsm`; power/clock gate needs a verified provider | @@ -198,7 +198,7 @@ release addresses must be supplied by the boot loader. | aop-spmi0 | disabled resource description | `&hw_aop_spmi0`; mixed/non-AIC interrupt routing needs decoding | | dptx0-aux | disabled resource description | `&hw_dptx0_aux`; power/clock gate needs a verified provider | | dptx1-aux | disabled resource description | `&hw_dptx1_aux`; power/clock gate needs a verified provider | -| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider | +| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-disp0 | disabled resource description | `&hw_dart_disp0` | | dcp0-expert | disabled resource description | `&hw_dcp0_expert` | | dcp | disabled resource description | `&hw_dcp`; power/clock gate needs a verified provider | @@ -235,23 +235,23 @@ release addresses must be supplied by the boot loader. | admac-dispext3 | disabled resource description | `&hw_admac_dispext3` | | admac-dispext3-ced-ssw | disabled resource description | `&hw_admac_dispext3_ced_ssw` | | dart-scaler | disabled resource description | `&hw_dart_scaler`; power/clock gate needs a verified provider | -| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider | +| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-scaler0 | disabled resource description | `&hw_dart_scaler0`; power/clock gate needs a verified provider | -| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider | +| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-scaler1 | disabled resource description | `&hw_dart_scaler1`; power/clock gate needs a verified provider | -| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider | +| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ave0 | disabled resource description | `&hw_dart_ave0`; power/clock gate needs a verified provider | -| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider | +| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ave1 | disabled resource description | `&hw_dart_ave1`; power/clock gate needs a verified provider | | apr0 | disabled resource description | `&hw_apr0`; power/clock gate needs a verified provider | | dart-apr0 | disabled resource description | `&hw_dart_apr0`; power/clock gate needs a verified provider | | dart-apr1 | disabled resource description | `&hw_dart_apr1`; power/clock gate needs a verified provider | -| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider | -| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider | +| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider; clock provider not yet translated | +| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-jpeg0 | disabled resource description | `&hw_dart_jpeg0`; power/clock gate needs a verified provider | -| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider | +| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ane0 | disabled resource description | `&hw_dart_ane0`; power/clock gate needs a verified provider | -| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider | +| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-avd0 | disabled resource description | `&hw_dart_avd0`; power/clock gate needs a verified provider | | sgx | disabled resource description | `&hw_sgx`; power/clock gate needs a verified provider | | gfx-asc | disabled resource description | `&hw_gfx_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | @@ -263,3 +263,351 @@ release addresses must be supplied by the boot loader. | admac-sllb-ec-proxy | disabled resource description | `&hw_admac_sllb_ec_proxy` | | dbgCPU | disabled resource description | `&hw_dbgCPU` | | apple-processor-trace | disabled resource description | `&hw_apple_processor_trace` | + +## Child devices and service interfaces + +These entries require an endpoint/transport audit in addition to the parent +controller resources above. Mapper records describe stream IDs rather than +independently probed devices. Conditional template records and their tuning +containers are not separate hardware devices; select the silicon variant +using a resolved live tree before changing resources. No tuning properties +from those records are reproduced here. + +| Hardware path below the SoC bus | Classification and remaining audit | +| --- | --- | +| `nub-spmi1/spmi-mosquitoM1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi4/spmi-jerezC0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi4/spmi-jerezC1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `i2c5/mogul-las` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c7/disp-bklt` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c0/sync-hub-config` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c0/sync-hub-prog` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker-left-woofer-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker-left-tweeter` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c2/audio-codec-output` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c3/audio-speaker-right-woofer-1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c3/audio-speaker-right-woofer-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c3/audio-speaker-right-tweeter` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `iop-voicetrigger-controller/audio-vt-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `i2c4/sd-card` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c8/pcon0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi2/mesa` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/dp855` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/dp855/lcd-pmicwp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/dp855/lcd-pmic` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/dp855/lcd-sswp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/dp855/lcd-ss` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/dp855/tcon-registers` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/dp855/lcd-eeprom` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/display-temp-sens1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/display-temp-sens2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/display-temp-sens3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `nub-spmi-a1/hpm2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-isp0/mapper-isp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-mpm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-epipe0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-epipe1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-piodma0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-piodma1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pwm0/kbd-backlight` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-control` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-alpha` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-beta` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge1/pcie-sdreader` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apcie0/mapper-apcie0-control` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-alpha` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-beta` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie1/mapper-apcie1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie1/mapper-apcie1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-phy-cpu0/iop-aciophy0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu1/iop-aciophy1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu2/iop-aciophy2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu3/iop-aciophy3-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/multi-touch` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/keyboard` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/stm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/actuator` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/tp-accel` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `mtp/iop-mtp-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-mtp/mapper-mtp` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `apciec0/pcic0-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec0/mapper-apciec0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu0/iop-acio0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec1/pcic1-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec1/mapper-apciec1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu1/iop-acio1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec2/pcic2-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec2/mapper-apciec2-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu2/iop-acio2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/amcc-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/dcs-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/pmgr-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afxni-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins0-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins1-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins2-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins3-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins4-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins5-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins6-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins7-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins8-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins9-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins10-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins11-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins12-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins13-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins14-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins15-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns0-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns1-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns2-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns3-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns4-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns5-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns6-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns7-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns8-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns9-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns10-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/sep-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/cllt-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/piogw-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/sram-parity-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/axi2af-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `auss-cpu0/auss-cpu0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/aop-audio` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/aop-voicetrigger` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/als` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/accel` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/gyro` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-aop/mapper-aop` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-exclave-aop` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-aop2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-leap-ns` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-base-ns` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-leap-s` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-base-s` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-scm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `aop2/iop-aop2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `pmgr/soc-tuner` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/clpc` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/ppm` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/pmgrtools` | Power/firmware interface; provider topology and handoff pending. | +| `sio/iop-sio-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `sio/iop-sio-nub/sio-dma` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-sio/mapper-sio` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-sio/mapper-aes` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pmp0/iop-pmp0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-pmp0/mapper-pmp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-pmp0/mapper-pmp0-ptd-fwd` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pmp1/iop-pmp1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-pmp1/mapper-pmp1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-pmp1/mapper-pmp1-ptd-fwd` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `sep/iop-sep-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-sep/mapper-sep` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-sep/mapper-sep-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `ans/iop-ans-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `ans/ans-pcie` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-pmu` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-rsm/mapper-rsm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `qspi/spinor` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `qspi/spinor/firmware` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `qspi/spinor/anvram` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `qspi/spinor/syscfg` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-usb0/mapper-usb0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb1/mapper-usb1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb2/mapper-usb2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-auss0/mapper-auss0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `nub-spmi0/spmi-abbeyL1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi0/spmi-mosquitoM0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi0/btm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi2/spmi-abbeyF1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi3/spmi-abbeyF2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm5` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop-spmi0/stockholm-spmi` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop-spmi0/stockholm-spmi/stockholm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx0-aux/dptx0-aux-core` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx0-aux/dptx0-aux-ufp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx1-aux/dptx1-aux-core` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx1-aux/dptx1-aux-ufp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-disp0/mapper-disp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-scl` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-sca` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcp/iop-dcp-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcp/mapper-dcp` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcp/mapper-dcp-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0-isoc/mapper-disp0-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext0/iop-dcpext0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext0/mapper-dcpext0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext0/mapper-dcpext0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0/mapper-dispext0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0/mapper-dispext0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0-isoc/mapper-dispext0-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext1/iop-dcpext1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext1/mapper-dcpext1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext1/mapper-dcpext1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1/mapper-dispext1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1/mapper-dispext1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1-isoc/mapper-dispext1-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext2/iop-dcpext2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext2/mapper-dcpext2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext2/mapper-dcpext2-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2/mapper-dispext2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2/mapper-dispext2-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2-isoc/mapper-dispext2-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext3/iop-dcpext3-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext3/mapper-dcpext3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext3/mapper-dcpext3-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3/mapper-dispext3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3/mapper-dispext3-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3-isoc/mapper-dispext3-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler/mapper-scaler` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler/mapper-scaler-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler0/mapper-scaler0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler0/mapper-scaler-piodma0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler1/mapper-scaler1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler1/mapper-scaler-piodma1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ave0/mapper-ave0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ave1/mapper-ave1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apr0/mapper-apr0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apr1/mapper-apr1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-jpeg0/mapper-jpeg0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-jpeg0/mapper-jpeg1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-mpm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0-adsbuf` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `gfx-asc/iop-gfx-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `gfx1-asc/iop-gfx1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-hp-mic` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-hp-mic/audio-hp-mic` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-input` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-input/audio-codec-input` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-output` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-output/audio-codec-output` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-leap-internal-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-leap-internal-loopback/audio-leap-internal-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-secure-leap-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-secure-leap-loopback/audio-secure-leap-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-mca-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-mca-loopback/audio-mca-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker/audio-speaker` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker-tap` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker-tap/audio-speaker-tap` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-io-buffer-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/siri-listening-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-injection-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-injection-device/lp-mic-injection-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `admac-base-ns/base-ns-adma-tx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-5` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-tx-4` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-rx-4` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-tx-5` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-s/leap-s-adma-rx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-s/leap-s-adma-rx-5` | Subdevice register interface; binding, parent translation and ownership audit pending. | diff --git a/docs/devicetree/DT-GAPS-j714s.md b/docs/devicetree/DT-GAPS-j714s.md index 7edba310b5ebb..80ceaa9ffd7c4 100644 --- a/docs/devicetree/DT-GAPS-j714s.md +++ b/docs/devicetree/DT-GAPS-j714s.md @@ -130,8 +130,8 @@ release addresses must be supplied by the boot loader. | i2c4 | disabled resource description | `&hw_i2c4`; power/clock gate needs a verified provider | | i2c6 | disabled resource description | `&hw_i2c6`; power/clock gate needs a verified provider | | i2c8 | disabled resource description | `&hw_i2c8`; power/clock gate needs a verified provider | -| spi2 | disabled resource description | `&hw_spi2`; power/clock gate needs a verified provider | -| spi4 | disabled resource description | `&hw_spi4`; power/clock gate needs a verified provider | +| spi2 | disabled resource description | `&hw_spi2`; power/clock gate needs a verified provider; clock provider not yet translated | +| spi4 | disabled resource description | `&hw_spi4`; power/clock gate needs a verified provider; clock provider not yet translated | | nub-spmi-a1 | disabled resource description | `&hw_nub_spmi_a1`; mixed/non-AIC interrupt routing needs decoding | | dart-isp0 | disabled resource description | `&hw_dart_isp0`; power/clock gate needs a verified provider | | apcie0-piodma | disabled resource description | `&hw_apcie0_piodma` | @@ -178,11 +178,11 @@ release addresses must be supplied by the boot loader. | aop-exclave-mailbox | disabled resource description | `&hw_aop_exclave_mailbox` | | aop2 | disabled resource description | `&hw_aop2` | | event-log-handler | disabled resource description | `&hw_event_log_handler` | -| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider | +| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-sio | disabled resource description | `&hw_dart_sio`; power/clock gate needs a verified provider | | pmp0 | disabled resource description | `&hw_pmp0`; power/clock gate needs a verified provider | | dart-pmp0 | disabled resource description | `&hw_dart_pmp0` | -| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider | +| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-sep | disabled resource description | `&hw_dart_sep` | | aon-ptd | disabled resource description | `&hw_aon_ptd` | | rsm | disabled resource description | `&hw_rsm`; power/clock gate needs a verified provider | @@ -196,7 +196,7 @@ release addresses must be supplied by the boot loader. | aop-spmi0 | disabled resource description | `&hw_aop_spmi0`; mixed/non-AIC interrupt routing needs decoding | | dptx0-aux | disabled resource description | `&hw_dptx0_aux`; power/clock gate needs a verified provider | | dptx1-aux | disabled resource description | `&hw_dptx1_aux`; power/clock gate needs a verified provider | -| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider | +| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-disp0 | disabled resource description | `&hw_dart_disp0` | | dcp0-expert | disabled resource description | `&hw_dcp0_expert` | | dcp | disabled resource description | `&hw_dcp`; power/clock gate needs a verified provider | @@ -233,23 +233,23 @@ release addresses must be supplied by the boot loader. | admac-dispext3 | disabled resource description | `&hw_admac_dispext3` | | admac-dispext3-ced-ssw | disabled resource description | `&hw_admac_dispext3_ced_ssw` | | dart-scaler | disabled resource description | `&hw_dart_scaler`; power/clock gate needs a verified provider | -| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider | +| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-scaler0 | disabled resource description | `&hw_dart_scaler0`; power/clock gate needs a verified provider | -| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider | +| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-scaler1 | disabled resource description | `&hw_dart_scaler1`; power/clock gate needs a verified provider | -| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider | +| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ave0 | disabled resource description | `&hw_dart_ave0`; power/clock gate needs a verified provider | -| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider | +| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ave1 | disabled resource description | `&hw_dart_ave1`; power/clock gate needs a verified provider | | apr0 | disabled resource description | `&hw_apr0`; power/clock gate needs a verified provider | | dart-apr0 | disabled resource description | `&hw_dart_apr0`; power/clock gate needs a verified provider | | dart-apr1 | disabled resource description | `&hw_dart_apr1`; power/clock gate needs a verified provider | -| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider | -| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider | +| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider; clock provider not yet translated | +| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-jpeg0 | disabled resource description | `&hw_dart_jpeg0`; power/clock gate needs a verified provider | -| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider | +| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ane0 | disabled resource description | `&hw_dart_ane0`; power/clock gate needs a verified provider | -| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider | +| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-avd0 | disabled resource description | `&hw_dart_avd0`; power/clock gate needs a verified provider | | sgx | disabled resource description | `&hw_sgx`; power/clock gate needs a verified provider | | gfx-asc | disabled resource description | `&hw_gfx_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | @@ -261,3 +261,348 @@ release addresses must be supplied by the boot loader. | admac-sllb-ec-proxy | disabled resource description | `&hw_admac_sllb_ec_proxy` | | dbgCPU | disabled resource description | `&hw_dbgCPU` | | apple-processor-trace | disabled resource description | `&hw_apple_processor_trace` | + +## Child devices and service interfaces + +These entries require an endpoint/transport audit in addition to the parent +controller resources above. Mapper records describe stream IDs rather than +independently probed devices. Conditional template records and their tuning +containers are not separate hardware devices; select the silicon variant +using a resolved live tree before changing resources. No tuning properties +from those records are reproduced here. + +| Hardware path below the SoC bus | Classification and remaining audit | +| --- | --- | +| `i2c5/mogul-las` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c7/disp-bklt` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c0/sync-hub-config` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c0/sync-hub-prog` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker-left-woofer-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker-left-tweeter` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c2/audio-codec-output` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c3/audio-speaker-right-woofer-1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c3/audio-speaker-right-woofer-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c3/audio-speaker-right-tweeter` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `iop-voicetrigger-controller/audio-vt-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `i2c4/sd-card` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c8/pcon0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi2/mesa` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/dp855` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/dp855/lcd-pmicwp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/dp855/lcd-pmic` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/dp855/lcd-sswp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/dp855/lcd-ss` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/dp855/tcon-registers` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/dp855/lcd-eeprom` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/display-temp-sens1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/display-temp-sens2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/display-temp-sens3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `nub-spmi-a1/hpm2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-isp0/mapper-isp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-mpm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-epipe0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-epipe1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-piodma0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-piodma1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pwm0/kbd-backlight` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-control` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-alpha` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-beta` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge1/pcie-sdreader` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apcie0/mapper-apcie0-control` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-alpha` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-beta` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie1/mapper-apcie1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie1/mapper-apcie1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-phy-cpu0/iop-aciophy0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu1/iop-aciophy1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu2/iop-aciophy2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu3/iop-aciophy3-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/multi-touch` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/keyboard` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/stm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/actuator` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/tp-accel` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `mtp/iop-mtp-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-mtp/mapper-mtp` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `apciec0/pcic0-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec0/mapper-apciec0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu0/iop-acio0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec1/pcic1-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec1/mapper-apciec1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu1/iop-acio1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec2/pcic2-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec2/mapper-apciec2-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu2/iop-acio2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/amcc-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/dcs-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/pmgr-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afxni-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins0-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins1-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins2-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins3-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins4-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins5-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins6-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins7-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins8-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins9-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins10-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins11-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins12-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins13-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins14-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins15-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns0-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns1-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns2-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns3-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns4-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns5-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns6-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns7-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns8-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns9-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns10-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/sep-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/cllt-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/piogw-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/sram-parity-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/axi2af-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `auss-cpu0/auss-cpu0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/aop-audio` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/aop-voicetrigger` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/als` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/accel` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/gyro` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-aop/mapper-aop` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-exclave-aop` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-aop2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-leap-ns` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-base-ns` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-leap-s` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-base-s` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-scm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `aop2/iop-aop2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `pmgr/soc-tuner` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/clpc` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/ppm` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/pmgrtools` | Power/firmware interface; provider topology and handoff pending. | +| `sio/iop-sio-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `sio/iop-sio-nub/sio-dma` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-sio/mapper-sio` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-sio/mapper-aes` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pmp0/iop-pmp0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-pmp0/mapper-pmp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-pmp0/mapper-pmp0-ptd-fwd` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pmp1/iop-pmp1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-pmp1/mapper-pmp1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-pmp1/mapper-pmp1-ptd-fwd` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `sep/iop-sep-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-sep/mapper-sep` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-sep/mapper-sep-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `ans/iop-ans-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `ans/ans-pcie` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-pmu` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-rsm/mapper-rsm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `qspi/spinor` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `qspi/spinor/firmware` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `qspi/spinor/anvram` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `qspi/spinor/syscfg` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-usb0/mapper-usb0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb1/mapper-usb1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb2/mapper-usb2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-auss0/mapper-auss0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `nub-spmi0/spmi-abbeyL1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi0/spmi-mosquitoM0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi0/btm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi2/spmi-abbeyF1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi3/spmi-abbeyF2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm5` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop-spmi0/stockholm-spmi` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop-spmi0/stockholm-spmi/stockholm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx0-aux/dptx0-aux-core` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx0-aux/dptx0-aux-ufp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx1-aux/dptx1-aux-core` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx1-aux/dptx1-aux-ufp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-disp0/mapper-disp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-scl` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-sca` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcp/iop-dcp-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcp/mapper-dcp` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcp/mapper-dcp-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0-isoc/mapper-disp0-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext0/iop-dcpext0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext0/mapper-dcpext0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext0/mapper-dcpext0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0/mapper-dispext0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0/mapper-dispext0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0-isoc/mapper-dispext0-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext1/iop-dcpext1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext1/mapper-dcpext1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext1/mapper-dcpext1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1/mapper-dispext1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1/mapper-dispext1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1-isoc/mapper-dispext1-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext2/iop-dcpext2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext2/mapper-dcpext2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext2/mapper-dcpext2-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2/mapper-dispext2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2/mapper-dispext2-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2-isoc/mapper-dispext2-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext3/iop-dcpext3-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext3/mapper-dcpext3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext3/mapper-dcpext3-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3/mapper-dispext3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3/mapper-dispext3-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3-isoc/mapper-dispext3-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler/mapper-scaler` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler/mapper-scaler-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler0/mapper-scaler0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler0/mapper-scaler-piodma0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler1/mapper-scaler1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler1/mapper-scaler-piodma1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ave0/mapper-ave0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ave1/mapper-ave1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apr0/mapper-apr0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apr1/mapper-apr1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-jpeg0/mapper-jpeg0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-jpeg0/mapper-jpeg1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-mpm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0-adsbuf` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `gfx-asc/iop-gfx-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `gfx1-asc/iop-gfx1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-hp-mic` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-hp-mic/audio-hp-mic` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-input` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-input/audio-codec-input` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-output` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-output/audio-codec-output` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-leap-internal-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-leap-internal-loopback/audio-leap-internal-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-secure-leap-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-secure-leap-loopback/audio-secure-leap-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-mca-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-mca-loopback/audio-mca-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker/audio-speaker` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker-tap` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker-tap/audio-speaker-tap` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-io-buffer-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/siri-listening-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-injection-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-injection-device/lp-mic-injection-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `admac-base-ns/base-ns-adma-tx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-5` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-tx-4` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-rx-4` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-tx-5` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-s/leap-s-adma-rx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-s/leap-s-adma-rx-5` | Subdevice register interface; binding, parent translation and ownership audit pending. | diff --git a/docs/devicetree/DT-GAPS-j716c.md b/docs/devicetree/DT-GAPS-j716c.md index 6e6335f8fc218..46e87cbf8bac9 100644 --- a/docs/devicetree/DT-GAPS-j716c.md +++ b/docs/devicetree/DT-GAPS-j716c.md @@ -132,8 +132,8 @@ release addresses must be supplied by the boot loader. | i2c4 | disabled resource description | `&hw_i2c4`; power/clock gate needs a verified provider | | i2c6 | disabled resource description | `&hw_i2c6`; power/clock gate needs a verified provider | | i2c8 | disabled resource description | `&hw_i2c8`; power/clock gate needs a verified provider | -| spi2 | disabled resource description | `&hw_spi2`; power/clock gate needs a verified provider | -| spi4 | disabled resource description | `&hw_spi4`; power/clock gate needs a verified provider | +| spi2 | disabled resource description | `&hw_spi2`; power/clock gate needs a verified provider; clock provider not yet translated | +| spi4 | disabled resource description | `&hw_spi4`; power/clock gate needs a verified provider; clock provider not yet translated | | nub-spmi-a1 | disabled resource description | `&hw_nub_spmi_a1`; mixed/non-AIC interrupt routing needs decoding | | dart-isp0 | disabled resource description | `&hw_dart_isp0`; power/clock gate needs a verified provider | | apcie0-piodma | disabled resource description | `&hw_apcie0_piodma` | @@ -180,11 +180,11 @@ release addresses must be supplied by the boot loader. | aop-exclave-mailbox | disabled resource description | `&hw_aop_exclave_mailbox` | | aop2 | disabled resource description | `&hw_aop2` | | event-log-handler | disabled resource description | `&hw_event_log_handler` | -| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider | +| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-sio | disabled resource description | `&hw_dart_sio`; power/clock gate needs a verified provider | | pmp0 | disabled resource description | `&hw_pmp0`; power/clock gate needs a verified provider | | dart-pmp0 | disabled resource description | `&hw_dart_pmp0` | -| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider | +| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-sep | disabled resource description | `&hw_dart_sep` | | aon-ptd | disabled resource description | `&hw_aon_ptd` | | rsm | disabled resource description | `&hw_rsm`; power/clock gate needs a verified provider | @@ -198,7 +198,7 @@ release addresses must be supplied by the boot loader. | aop-spmi0 | disabled resource description | `&hw_aop_spmi0`; mixed/non-AIC interrupt routing needs decoding | | dptx0-aux | disabled resource description | `&hw_dptx0_aux`; power/clock gate needs a verified provider | | dptx1-aux | disabled resource description | `&hw_dptx1_aux`; power/clock gate needs a verified provider | -| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider | +| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-disp0 | disabled resource description | `&hw_dart_disp0` | | dcp0-expert | disabled resource description | `&hw_dcp0_expert` | | dcp | disabled resource description | `&hw_dcp`; power/clock gate needs a verified provider | @@ -235,23 +235,23 @@ release addresses must be supplied by the boot loader. | admac-dispext3 | disabled resource description | `&hw_admac_dispext3` | | admac-dispext3-ced-ssw | disabled resource description | `&hw_admac_dispext3_ced_ssw` | | dart-scaler | disabled resource description | `&hw_dart_scaler`; power/clock gate needs a verified provider | -| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider | +| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-scaler0 | disabled resource description | `&hw_dart_scaler0`; power/clock gate needs a verified provider | -| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider | +| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-scaler1 | disabled resource description | `&hw_dart_scaler1`; power/clock gate needs a verified provider | -| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider | +| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ave0 | disabled resource description | `&hw_dart_ave0`; power/clock gate needs a verified provider | -| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider | +| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ave1 | disabled resource description | `&hw_dart_ave1`; power/clock gate needs a verified provider | | apr0 | disabled resource description | `&hw_apr0`; power/clock gate needs a verified provider | | dart-apr0 | disabled resource description | `&hw_dart_apr0`; power/clock gate needs a verified provider | | dart-apr1 | disabled resource description | `&hw_dart_apr1`; power/clock gate needs a verified provider | -| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider | -| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider | +| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider; clock provider not yet translated | +| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-jpeg0 | disabled resource description | `&hw_dart_jpeg0`; power/clock gate needs a verified provider | -| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider | +| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ane0 | disabled resource description | `&hw_dart_ane0`; power/clock gate needs a verified provider | -| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider | +| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-avd0 | disabled resource description | `&hw_dart_avd0`; power/clock gate needs a verified provider | | sgx | disabled resource description | `&hw_sgx`; power/clock gate needs a verified provider | | gfx-asc | disabled resource description | `&hw_gfx_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | @@ -263,3 +263,351 @@ release addresses must be supplied by the boot loader. | admac-sllb-ec-proxy | disabled resource description | `&hw_admac_sllb_ec_proxy` | | dbgCPU | disabled resource description | `&hw_dbgCPU` | | apple-processor-trace | disabled resource description | `&hw_apple_processor_trace` | + +## Child devices and service interfaces + +These entries require an endpoint/transport audit in addition to the parent +controller resources above. Mapper records describe stream IDs rather than +independently probed devices. Conditional template records and their tuning +containers are not separate hardware devices; select the silicon variant +using a resolved live tree before changing resources. No tuning properties +from those records are reproduced here. + +| Hardware path below the SoC bus | Classification and remaining audit | +| --- | --- | +| `nub-spmi1/spmi-mosquitoM1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi4/spmi-jerezC0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi4/spmi-jerezC1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `i2c5/mogul-las` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c7/disp-bklt` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c0/sync-hub-config` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c0/sync-hub-prog` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker-left-woofer-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker-left-tweeter` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c2/audio-codec-output` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c3/audio-speaker-right-woofer-1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c3/audio-speaker-right-woofer-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c3/audio-speaker-right-tweeter` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `iop-voicetrigger-controller/audio-vt-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `i2c4/sd-card` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c8/pcon0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi2/mesa` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/dp855` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/dp855/lcd-pmicwp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/dp855/lcd-pmic` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/dp855/lcd-sswp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/dp855/lcd-ss` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/dp855/tcon-registers` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/dp855/lcd-eeprom` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/display-temp-sens1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/display-temp-sens2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/display-temp-sens3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `nub-spmi-a1/hpm2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-isp0/mapper-isp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-mpm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-epipe0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-epipe1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-piodma0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-piodma1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pwm0/kbd-backlight` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-control` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-alpha` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-beta` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge1/pcie-sdreader` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apcie0/mapper-apcie0-control` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-alpha` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-beta` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie1/mapper-apcie1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie1/mapper-apcie1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-phy-cpu0/iop-aciophy0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu1/iop-aciophy1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu2/iop-aciophy2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu3/iop-aciophy3-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/multi-touch` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/keyboard` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/stm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/actuator` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/tp-accel` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `mtp/iop-mtp-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-mtp/mapper-mtp` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `apciec0/pcic0-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec0/mapper-apciec0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu0/iop-acio0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec1/pcic1-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec1/mapper-apciec1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu1/iop-acio1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec2/pcic2-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec2/mapper-apciec2-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu2/iop-acio2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/amcc-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/dcs-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/pmgr-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afxni-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins0-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins1-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins2-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins3-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins4-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins5-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins6-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins7-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins8-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins9-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins10-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins11-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins12-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins13-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins14-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins15-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns0-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns1-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns2-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns3-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns4-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns5-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns6-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns7-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns8-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns9-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns10-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/sep-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/cllt-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/piogw-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/sram-parity-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/axi2af-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `auss-cpu0/auss-cpu0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/aop-audio` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/aop-voicetrigger` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/als` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/accel` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/gyro` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-aop/mapper-aop` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-exclave-aop` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-aop2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-leap-ns` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-base-ns` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-leap-s` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-base-s` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-scm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `aop2/iop-aop2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `pmgr/soc-tuner` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/clpc` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/ppm` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/pmgrtools` | Power/firmware interface; provider topology and handoff pending. | +| `sio/iop-sio-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `sio/iop-sio-nub/sio-dma` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-sio/mapper-sio` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-sio/mapper-aes` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pmp0/iop-pmp0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-pmp0/mapper-pmp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-pmp0/mapper-pmp0-ptd-fwd` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pmp1/iop-pmp1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-pmp1/mapper-pmp1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-pmp1/mapper-pmp1-ptd-fwd` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `sep/iop-sep-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-sep/mapper-sep` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-sep/mapper-sep-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `ans/iop-ans-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `ans/ans-pcie` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-pmu` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-rsm/mapper-rsm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `qspi/spinor` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `qspi/spinor/firmware` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `qspi/spinor/anvram` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `qspi/spinor/syscfg` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-usb0/mapper-usb0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb1/mapper-usb1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb2/mapper-usb2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-auss0/mapper-auss0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `nub-spmi0/spmi-abbeyL1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi0/spmi-mosquitoM0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi0/btm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi2/spmi-abbeyF1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi3/spmi-abbeyF2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm5` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop-spmi0/stockholm-spmi` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop-spmi0/stockholm-spmi/stockholm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx0-aux/dptx0-aux-core` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx0-aux/dptx0-aux-ufp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx1-aux/dptx1-aux-core` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx1-aux/dptx1-aux-ufp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-disp0/mapper-disp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-scl` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-sca` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcp/iop-dcp-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcp/mapper-dcp` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcp/mapper-dcp-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0-isoc/mapper-disp0-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext0/iop-dcpext0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext0/mapper-dcpext0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext0/mapper-dcpext0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0/mapper-dispext0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0/mapper-dispext0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0-isoc/mapper-dispext0-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext1/iop-dcpext1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext1/mapper-dcpext1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext1/mapper-dcpext1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1/mapper-dispext1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1/mapper-dispext1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1-isoc/mapper-dispext1-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext2/iop-dcpext2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext2/mapper-dcpext2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext2/mapper-dcpext2-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2/mapper-dispext2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2/mapper-dispext2-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2-isoc/mapper-dispext2-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext3/iop-dcpext3-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext3/mapper-dcpext3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext3/mapper-dcpext3-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3/mapper-dispext3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3/mapper-dispext3-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3-isoc/mapper-dispext3-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler/mapper-scaler` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler/mapper-scaler-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler0/mapper-scaler0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler0/mapper-scaler-piodma0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler1/mapper-scaler1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler1/mapper-scaler-piodma1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ave0/mapper-ave0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ave1/mapper-ave1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apr0/mapper-apr0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apr1/mapper-apr1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-jpeg0/mapper-jpeg0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-jpeg0/mapper-jpeg1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-mpm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0-adsbuf` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `gfx-asc/iop-gfx-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `gfx1-asc/iop-gfx1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-hp-mic` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-hp-mic/audio-hp-mic` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-input` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-input/audio-codec-input` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-output` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-output/audio-codec-output` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-leap-internal-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-leap-internal-loopback/audio-leap-internal-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-secure-leap-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-secure-leap-loopback/audio-secure-leap-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-mca-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-mca-loopback/audio-mca-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker/audio-speaker` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker-tap` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker-tap/audio-speaker-tap` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-io-buffer-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/siri-listening-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-injection-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-injection-device/lp-mic-injection-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `admac-base-ns/base-ns-adma-tx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-5` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-tx-4` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-rx-4` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-tx-5` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-s/leap-s-adma-rx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-s/leap-s-adma-rx-5` | Subdevice register interface; binding, parent translation and ownership audit pending. | diff --git a/docs/devicetree/DT-GAPS-j716s.md b/docs/devicetree/DT-GAPS-j716s.md index 0376ade940a6b..86e2387add1b8 100644 --- a/docs/devicetree/DT-GAPS-j716s.md +++ b/docs/devicetree/DT-GAPS-j716s.md @@ -130,8 +130,8 @@ release addresses must be supplied by the boot loader. | i2c4 | disabled resource description | `&hw_i2c4`; power/clock gate needs a verified provider | | i2c6 | disabled resource description | `&hw_i2c6`; power/clock gate needs a verified provider | | i2c8 | disabled resource description | `&hw_i2c8`; power/clock gate needs a verified provider | -| spi2 | disabled resource description | `&hw_spi2`; power/clock gate needs a verified provider | -| spi4 | disabled resource description | `&hw_spi4`; power/clock gate needs a verified provider | +| spi2 | disabled resource description | `&hw_spi2`; power/clock gate needs a verified provider; clock provider not yet translated | +| spi4 | disabled resource description | `&hw_spi4`; power/clock gate needs a verified provider; clock provider not yet translated | | nub-spmi-a1 | disabled resource description | `&hw_nub_spmi_a1`; mixed/non-AIC interrupt routing needs decoding | | dart-isp0 | disabled resource description | `&hw_dart_isp0`; power/clock gate needs a verified provider | | apcie0-piodma | disabled resource description | `&hw_apcie0_piodma` | @@ -178,11 +178,11 @@ release addresses must be supplied by the boot loader. | aop-exclave-mailbox | disabled resource description | `&hw_aop_exclave_mailbox` | | aop2 | disabled resource description | `&hw_aop2` | | event-log-handler | disabled resource description | `&hw_event_log_handler` | -| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider | +| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-sio | disabled resource description | `&hw_dart_sio`; power/clock gate needs a verified provider | | pmp0 | disabled resource description | `&hw_pmp0`; power/clock gate needs a verified provider | | dart-pmp0 | disabled resource description | `&hw_dart_pmp0` | -| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider | +| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-sep | disabled resource description | `&hw_dart_sep` | | aon-ptd | disabled resource description | `&hw_aon_ptd` | | rsm | disabled resource description | `&hw_rsm`; power/clock gate needs a verified provider | @@ -196,7 +196,7 @@ release addresses must be supplied by the boot loader. | aop-spmi0 | disabled resource description | `&hw_aop_spmi0`; mixed/non-AIC interrupt routing needs decoding | | dptx0-aux | disabled resource description | `&hw_dptx0_aux`; power/clock gate needs a verified provider | | dptx1-aux | disabled resource description | `&hw_dptx1_aux`; power/clock gate needs a verified provider | -| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider | +| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-disp0 | disabled resource description | `&hw_dart_disp0` | | dcp0-expert | disabled resource description | `&hw_dcp0_expert` | | dcp | disabled resource description | `&hw_dcp`; power/clock gate needs a verified provider | @@ -233,23 +233,23 @@ release addresses must be supplied by the boot loader. | admac-dispext3 | disabled resource description | `&hw_admac_dispext3` | | admac-dispext3-ced-ssw | disabled resource description | `&hw_admac_dispext3_ced_ssw` | | dart-scaler | disabled resource description | `&hw_dart_scaler`; power/clock gate needs a verified provider | -| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider | +| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-scaler0 | disabled resource description | `&hw_dart_scaler0`; power/clock gate needs a verified provider | -| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider | +| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-scaler1 | disabled resource description | `&hw_dart_scaler1`; power/clock gate needs a verified provider | -| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider | +| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ave0 | disabled resource description | `&hw_dart_ave0`; power/clock gate needs a verified provider | -| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider | +| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ave1 | disabled resource description | `&hw_dart_ave1`; power/clock gate needs a verified provider | | apr0 | disabled resource description | `&hw_apr0`; power/clock gate needs a verified provider | | dart-apr0 | disabled resource description | `&hw_dart_apr0`; power/clock gate needs a verified provider | | dart-apr1 | disabled resource description | `&hw_dart_apr1`; power/clock gate needs a verified provider | -| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider | -| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider | +| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider; clock provider not yet translated | +| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-jpeg0 | disabled resource description | `&hw_dart_jpeg0`; power/clock gate needs a verified provider | -| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider | +| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ane0 | disabled resource description | `&hw_dart_ane0`; power/clock gate needs a verified provider | -| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider | +| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-avd0 | disabled resource description | `&hw_dart_avd0`; power/clock gate needs a verified provider | | sgx | disabled resource description | `&hw_sgx`; power/clock gate needs a verified provider | | gfx-asc | disabled resource description | `&hw_gfx_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | @@ -261,3 +261,348 @@ release addresses must be supplied by the boot loader. | admac-sllb-ec-proxy | disabled resource description | `&hw_admac_sllb_ec_proxy` | | dbgCPU | disabled resource description | `&hw_dbgCPU` | | apple-processor-trace | disabled resource description | `&hw_apple_processor_trace` | + +## Child devices and service interfaces + +These entries require an endpoint/transport audit in addition to the parent +controller resources above. Mapper records describe stream IDs rather than +independently probed devices. Conditional template records and their tuning +containers are not separate hardware devices; select the silicon variant +using a resolved live tree before changing resources. No tuning properties +from those records are reproduced here. + +| Hardware path below the SoC bus | Classification and remaining audit | +| --- | --- | +| `i2c5/mogul-las` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c7/disp-bklt` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c0/sync-hub-config` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c0/sync-hub-prog` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker-left-woofer-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker-left-tweeter` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c2/audio-codec-output` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c3/audio-speaker-right-woofer-1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c3/audio-speaker-right-woofer-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c3/audio-speaker-right-tweeter` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `iop-voicetrigger-controller/audio-vt-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `i2c4/sd-card` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c8/pcon0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi2/mesa` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/dp855` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/dp855/lcd-pmicwp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/dp855/lcd-pmic` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/dp855/lcd-sswp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/dp855/lcd-ss` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/dp855/tcon-registers` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/dp855/lcd-eeprom` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/display-temp-sens1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/display-temp-sens2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/display-temp-sens3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `nub-spmi-a1/hpm2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-isp0/mapper-isp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-mpm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-epipe0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-epipe1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-piodma0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-piodma1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pwm0/kbd-backlight` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-control` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-alpha` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-beta` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge1/pcie-sdreader` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apcie0/mapper-apcie0-control` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-alpha` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-beta` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie1/mapper-apcie1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie1/mapper-apcie1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-phy-cpu0/iop-aciophy0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu1/iop-aciophy1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu2/iop-aciophy2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu3/iop-aciophy3-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/multi-touch` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/keyboard` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/stm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/actuator` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/tp-accel` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `mtp/iop-mtp-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-mtp/mapper-mtp` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `apciec0/pcic0-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec0/mapper-apciec0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu0/iop-acio0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec1/pcic1-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec1/mapper-apciec1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu1/iop-acio1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec2/pcic2-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec2/mapper-apciec2-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu2/iop-acio2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/amcc-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/dcs-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/pmgr-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afxni-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins0-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins1-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins2-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins3-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins4-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins5-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins6-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins7-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins8-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins9-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins10-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins11-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins12-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins13-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins14-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins15-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns0-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns1-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns2-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns3-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns4-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns5-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns6-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns7-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns8-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns9-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns10-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/sep-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/cllt-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/piogw-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/sram-parity-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/axi2af-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `auss-cpu0/auss-cpu0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/aop-audio` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/aop-voicetrigger` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/als` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/accel` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/gyro` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-aop/mapper-aop` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-exclave-aop` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-aop2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-leap-ns` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-base-ns` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-leap-s` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-base-s` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-scm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `aop2/iop-aop2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `pmgr/soc-tuner` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/clpc` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/ppm` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/pmgrtools` | Power/firmware interface; provider topology and handoff pending. | +| `sio/iop-sio-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `sio/iop-sio-nub/sio-dma` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-sio/mapper-sio` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-sio/mapper-aes` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pmp0/iop-pmp0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-pmp0/mapper-pmp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-pmp0/mapper-pmp0-ptd-fwd` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pmp1/iop-pmp1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-pmp1/mapper-pmp1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-pmp1/mapper-pmp1-ptd-fwd` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `sep/iop-sep-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-sep/mapper-sep` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-sep/mapper-sep-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `ans/iop-ans-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `ans/ans-pcie` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-pmu` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-rsm/mapper-rsm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `qspi/spinor` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `qspi/spinor/firmware` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `qspi/spinor/anvram` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `qspi/spinor/syscfg` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-usb0/mapper-usb0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb1/mapper-usb1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb2/mapper-usb2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-auss0/mapper-auss0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `nub-spmi0/spmi-abbeyL1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi0/spmi-mosquitoM0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi0/btm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi2/spmi-abbeyF1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi3/spmi-abbeyF2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm5` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop-spmi0/stockholm-spmi` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop-spmi0/stockholm-spmi/stockholm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx0-aux/dptx0-aux-core` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx0-aux/dptx0-aux-ufp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx1-aux/dptx1-aux-core` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx1-aux/dptx1-aux-ufp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-disp0/mapper-disp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-scl` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-sca` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcp/iop-dcp-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcp/mapper-dcp` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcp/mapper-dcp-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0-isoc/mapper-disp0-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext0/iop-dcpext0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext0/mapper-dcpext0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext0/mapper-dcpext0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0/mapper-dispext0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0/mapper-dispext0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0-isoc/mapper-dispext0-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext1/iop-dcpext1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext1/mapper-dcpext1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext1/mapper-dcpext1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1/mapper-dispext1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1/mapper-dispext1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1-isoc/mapper-dispext1-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext2/iop-dcpext2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext2/mapper-dcpext2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext2/mapper-dcpext2-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2/mapper-dispext2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2/mapper-dispext2-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2-isoc/mapper-dispext2-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext3/iop-dcpext3-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext3/mapper-dcpext3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext3/mapper-dcpext3-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3/mapper-dispext3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3/mapper-dispext3-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3-isoc/mapper-dispext3-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler/mapper-scaler` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler/mapper-scaler-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler0/mapper-scaler0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler0/mapper-scaler-piodma0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler1/mapper-scaler1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler1/mapper-scaler-piodma1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ave0/mapper-ave0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ave1/mapper-ave1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apr0/mapper-apr0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apr1/mapper-apr1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-jpeg0/mapper-jpeg0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-jpeg0/mapper-jpeg1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-mpm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0-adsbuf` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `gfx-asc/iop-gfx-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `gfx1-asc/iop-gfx1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-hp-mic` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-hp-mic/audio-hp-mic` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-input` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-input/audio-codec-input` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-output` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-output/audio-codec-output` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-leap-internal-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-leap-internal-loopback/audio-leap-internal-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-secure-leap-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-secure-leap-loopback/audio-secure-leap-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-mca-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-mca-loopback/audio-mca-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker/audio-speaker` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker-tap` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker-tap/audio-speaker-tap` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-io-buffer-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/siri-listening-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-injection-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-injection-device/lp-mic-injection-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `admac-base-ns/base-ns-adma-tx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-5` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-tx-4` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-rx-4` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-tx-5` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-s/leap-s-adma-rx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-s/leap-s-adma-rx-5` | Subdevice register interface; binding, parent translation and ownership audit pending. | diff --git a/docs/devicetree/DT-GAPS-j775c.md b/docs/devicetree/DT-GAPS-j775c.md index 2c31cd524ccd5..fe3420959a4e0 100644 --- a/docs/devicetree/DT-GAPS-j775c.md +++ b/docs/devicetree/DT-GAPS-j775c.md @@ -130,7 +130,7 @@ release addresses must be supplied by the boot loader. | apcie1-piodma | disabled resource description | `&hw_apcie1_piodma` | | apcie2-piodma | disabled resource description | `&hw_apcie2_piodma` | | apcie3-piodma | disabled resource description | `&hw_apcie3_piodma` | -| spi3 | disabled resource description | `&hw_spi3`; power/clock gate needs a verified provider | +| spi3 | disabled resource description | `&hw_spi3`; power/clock gate needs a verified provider; clock provider not yet translated | | apciec0 | disabled resource description | `&hw_apciec0`; power/clock gate needs a verified provider | | dart-apciec0 | disabled resource description | `&hw_dart_apciec0` | | apciec0-piodma | disabled resource description | `&hw_apciec0_piodma` | @@ -179,11 +179,11 @@ release addresses must be supplied by the boot loader. | aop-exclave-mailbox | disabled resource description | `&hw_aop_exclave_mailbox` | | aop2 | disabled resource description | `&hw_aop2` | | event-log-handler | disabled resource description | `&hw_event_log_handler` | -| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider | +| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-sio | disabled resource description | `&hw_dart_sio`; power/clock gate needs a verified provider | | pmp0 | disabled resource description | `&hw_pmp0`; power/clock gate needs a verified provider | | dart-pmp0 | disabled resource description | `&hw_dart_pmp0` | -| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider | +| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-sep | disabled resource description | `&hw_dart_sep` | | aon-ptd | disabled resource description | `&hw_aon_ptd` | | rsm | disabled resource description | `&hw_rsm`; power/clock gate needs a verified provider | @@ -197,7 +197,7 @@ release addresses must be supplied by the boot loader. | aop-spmi0 | disabled resource description | `&hw_aop_spmi0`; mixed/non-AIC interrupt routing needs decoding | | dptx0-aux | disabled resource description | `&hw_dptx0_aux`; power/clock gate needs a verified provider | | dptx1-aux | disabled resource description | `&hw_dptx1_aux`; power/clock gate needs a verified provider | -| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider | +| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-disp0 | disabled resource description | `&hw_dart_disp0` | | dcp0-expert | disabled resource description | `&hw_dcp0_expert` | | dcp | disabled resource description | `&hw_dcp`; power/clock gate needs a verified provider | @@ -234,23 +234,23 @@ release addresses must be supplied by the boot loader. | admac-dispext3 | disabled resource description | `&hw_admac_dispext3` | | admac-dispext3-ced-ssw | disabled resource description | `&hw_admac_dispext3_ced_ssw` | | dart-scaler | disabled resource description | `&hw_dart_scaler`; power/clock gate needs a verified provider | -| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider | +| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-scaler0 | disabled resource description | `&hw_dart_scaler0`; power/clock gate needs a verified provider | -| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider | +| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-scaler1 | disabled resource description | `&hw_dart_scaler1`; power/clock gate needs a verified provider | -| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider | +| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ave0 | disabled resource description | `&hw_dart_ave0`; power/clock gate needs a verified provider | -| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider | +| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ave1 | disabled resource description | `&hw_dart_ave1`; power/clock gate needs a verified provider | | apr0 | disabled resource description | `&hw_apr0`; power/clock gate needs a verified provider | | dart-apr0 | disabled resource description | `&hw_dart_apr0`; power/clock gate needs a verified provider | | dart-apr1 | disabled resource description | `&hw_dart_apr1`; power/clock gate needs a verified provider | -| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider | -| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider | +| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider; clock provider not yet translated | +| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-jpeg0 | disabled resource description | `&hw_dart_jpeg0`; power/clock gate needs a verified provider | -| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider | +| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ane0 | disabled resource description | `&hw_dart_ane0`; power/clock gate needs a verified provider | -| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider | +| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-avd0 | disabled resource description | `&hw_dart_avd0`; power/clock gate needs a verified provider | | sgx | disabled resource description | `&hw_sgx`; power/clock gate needs a verified provider | | gfx-asc | disabled resource description | `&hw_gfx_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | @@ -259,3 +259,345 @@ release addresses must be supplied by the boot loader. | admac-aop-ced-ssw | disabled resource description | `&hw_admac_aop_ced_ssw` | | dbgCPU | disabled resource description | `&hw_dbgCPU` | | apple-processor-trace | disabled resource description | `&hw_apple_processor_trace` | + +## Child devices and service interfaces + +These entries require an endpoint/transport audit in addition to the parent +controller resources above. Mapper records describe stream IDs rather than +independently probed devices. Conditional template records and their tuning +containers are not separate hardware devices; select the silicon variant +using a resolved live tree before changing resources. No tuning properties +from those records are reproduced here. + +| Hardware path below the SoC bus | Classification and remaining audit | +| --- | --- | +| `nub-spmi1/spmi-mosquitoM1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi4/spmi-jerezC0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi4/spmi-jerezC1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `i2c0/sync-hub-config` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c2/audio-codec-output` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c4/sd-card` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c5/aqc-a` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c8/pcon0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `apcie0/pci-bridge0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-control` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-alpha` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-beta` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge1/pcie-sdreader` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge3` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge3/pcie-xhci` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge3/pcie-xhci/pcie-xhci-hs-port3` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge3/pcie-xhci/pcie-xhci-hs-port3/usb2-hub-port1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge3/pcie-xhci/pcie-xhci-hs-port3/usb2-hub-port2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge3/pcie-xhci/pcie-xhci-hs-port3/usb2-hub-port3` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge3/pcie-xhci/pcie-xhci-hs-port3/usb2-hub-port4` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge3/pcie-xhci/pcie-xhci-ss-port1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge3/pcie-xhci/pcie-xhci-ss-port1/usb3-hub-port1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge3/pcie-xhci/pcie-xhci-ss-port1/usb3-hub-port2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge3/pcie-xhci/pcie-xhci-ss-port1/usb3-hub-port3` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge3/pcie-xhci/pcie-xhci-ss-port1/usb3-hub-port4` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apcie0/mapper-apcie0-control` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-alpha` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-beta` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie1/mapper-apcie1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie1/mapper-apcie1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie2/mapper-apcie2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie2/mapper-apcie2-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie3/mapper-apcie3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie3/mapper-apcie3-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `spi3/usb3hub-flash` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi3/usb3hub-flash/usb3hub-fw` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu0/iop-aciophy0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu1/iop-aciophy1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu2/iop-aciophy2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu3/iop-aciophy3-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec0/pcic0-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec0/mapper-apciec0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu0/iop-acio0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec1/pcic1-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec1/mapper-apciec1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu1/iop-acio1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec2/pcic2-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec2/mapper-apciec2-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu2/iop-acio2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec3/pcic3-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec3/mapper-apciec3-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu3/iop-acio3-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/amcc-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/dcs-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/pmgr-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afxni-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins0-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins1-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins2-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins3-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins4-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins5-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins6-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins7-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins8-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins9-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins10-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins11-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins12-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins13-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins14-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins15-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns0-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns1-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns2-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns3-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns4-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns5-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns6-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns7-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns8-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns9-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns10-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/sep-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/cllt-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/piogw-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/sram-parity-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/axi2af-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `auss-cpu0/auss-cpu0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/aop-audio` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/accel` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/gyro` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-aop/mapper-aop` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-exclave-aop` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-aop2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-leap-ns` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-base-ns` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-leap-s` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-base-s` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-scm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `aop2/iop-aop2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `pmgr/soc-tuner` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/clpc` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/ppm` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/pmgrtools` | Power/firmware interface; provider topology and handoff pending. | +| `sio/iop-sio-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `sio/iop-sio-nub/sio-dma` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-sio/mapper-sio` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-sio/mapper-aes` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pmp0/iop-pmp0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-pmp0/mapper-pmp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-pmp0/mapper-pmp0-ptd-fwd` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pmp1/iop-pmp1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-pmp1/mapper-pmp1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-pmp1/mapper-pmp1-ptd-fwd` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `sep/iop-sep-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-sep/mapper-sep` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-sep/mapper-sep-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `ans/iop-ans-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `ans/ans-pcie` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-pmu` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-rsm/mapper-rsm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `qspi/spinor` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `qspi/spinor/firmware` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `qspi/spinor/anvram` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `qspi/spinor/syscfg` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-usb0/mapper-usb0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb1/mapper-usb1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb2/mapper-usb2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb3/mapper-usb3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-auss0/mapper-auss0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `nub-spmi0/spmi-abbeyL1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi0/spmi-mosquitoM0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi0/btm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi2/spmi-abbeyF1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi3/spmi-abbeyF2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm3` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop-spmi0/stockholm-spmi` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop-spmi0/stockholm-spmi/stockholm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx0-aux/dptx0-aux-core` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx0-aux/dptx0-aux-ufp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx1-aux/dptx1-aux-core` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx1-aux/dptx1-aux-ufp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-disp0/mapper-disp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-scl` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-sca` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcp/iop-dcp-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcp/mapper-dcp` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcp/mapper-dcp-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0-isoc/mapper-disp0-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext0/iop-dcpext0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext0/mapper-dcpext0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext0/mapper-dcpext0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0/mapper-dispext0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0/mapper-dispext0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0-isoc/mapper-dispext0-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext1/iop-dcpext1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext1/mapper-dcpext1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext1/mapper-dcpext1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1/mapper-dispext1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1/mapper-dispext1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1-isoc/mapper-dispext1-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext2/iop-dcpext2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext2/mapper-dcpext2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext2/mapper-dcpext2-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2/mapper-dispext2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2/mapper-dispext2-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2-isoc/mapper-dispext2-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext3/iop-dcpext3-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext3/mapper-dcpext3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext3/mapper-dcpext3-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3/mapper-dispext3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3/mapper-dispext3-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3-isoc/mapper-dispext3-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler/mapper-scaler` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler/mapper-scaler-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler0/mapper-scaler0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler0/mapper-scaler-piodma0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler1/mapper-scaler1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler1/mapper-scaler-piodma1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ave0/mapper-ave0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ave1/mapper-ave1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apr0/mapper-apr0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apr1/mapper-apr1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-jpeg0/mapper-jpeg0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-jpeg0/mapper-jpeg1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-mpm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0-adsbuf` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `gfx-asc/iop-gfx-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `gfx1-asc/iop-gfx1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-input` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-input/audio-codec-input` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-output` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-output/audio-codec-output` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-mca-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-mca-loopback/audio-mca-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker/audio-speaker` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `admac-base-ns/base-ns-adma-tx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-rx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-tx-4` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-rx-4` | Subdevice register interface; binding, parent translation and ownership audit pending. | diff --git a/docs/devicetree/DT-GAPS-j775d.md b/docs/devicetree/DT-GAPS-j775d.md index c9848a4fc5989..c9a6bdfbe348e 100644 --- a/docs/devicetree/DT-GAPS-j775d.md +++ b/docs/devicetree/DT-GAPS-j775d.md @@ -280,11 +280,11 @@ release addresses must be supplied by the boot loader. | aop-exclave-mailbox | disabled resource description | `&hw_aop_exclave_mailbox` | | aop2 | disabled resource description | `&hw_aop2` | | event-log-handler | disabled resource description | `&hw_event_log_handler` | -| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider | +| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-sio | disabled resource description | `&hw_dart_sio`; power/clock gate needs a verified provider | | pmp0 | disabled resource description | `&hw_pmp0`; power/clock gate needs a verified provider | | dart-pmp0 | disabled resource description | `&hw_dart_pmp0` | -| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider | +| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-sep | disabled resource description | `&hw_dart_sep` | | aon-ptd | disabled resource description | `&hw_aon_ptd` | | rsm | disabled resource description | `&hw_rsm`; power/clock gate needs a verified provider | @@ -327,23 +327,23 @@ release addresses must be supplied by the boot loader. | admac-dispext3 | disabled resource description | `&hw_admac_dispext3` | | admac-dispext3-ced-ssw | disabled resource description | `&hw_admac_dispext3_ced_ssw` | | dart-scaler | disabled resource description | `&hw_dart_scaler`; power/clock gate needs a verified provider | -| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider | +| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-scaler0 | disabled resource description | `&hw_dart_scaler0`; power/clock gate needs a verified provider | -| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider | +| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-scaler1 | disabled resource description | `&hw_dart_scaler1`; power/clock gate needs a verified provider | -| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider | +| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ave0 | disabled resource description | `&hw_dart_ave0`; power/clock gate needs a verified provider | -| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider | +| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ave1 | disabled resource description | `&hw_dart_ave1`; power/clock gate needs a verified provider | | apr0 | disabled resource description | `&hw_apr0`; power/clock gate needs a verified provider | | dart-apr0 | disabled resource description | `&hw_dart_apr0`; power/clock gate needs a verified provider | | dart-apr1 | disabled resource description | `&hw_dart_apr1`; power/clock gate needs a verified provider | -| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider | -| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider | +| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider; clock provider not yet translated | +| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-jpeg0 | disabled resource description | `&hw_dart_jpeg0`; power/clock gate needs a verified provider | -| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider | +| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ane0 | disabled resource description | `&hw_dart_ane0`; power/clock gate needs a verified provider | -| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider | +| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider; clock provider not yet translated | | sgx | disabled resource description | `&hw_sgx`; power/clock gate needs a verified provider | | gfx-asc | disabled resource description | `&hw_gfx_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | | gfx1-asc | disabled resource description | `&hw_gfx1_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | @@ -351,3 +351,444 @@ release addresses must be supplied by the boot loader. | admac-aop-ced-ssw | disabled resource description | `&hw_admac_aop_ced_ssw` | | dbgCPU | disabled resource description | `&hw_dbgCPU` | | apple-processor-trace | disabled resource description | `&hw_apple_processor_trace` | + +## Child devices and service interfaces + +These entries require an endpoint/transport audit in addition to the parent +controller resources above. Mapper records describe stream IDs rather than +independently probed devices. Conditional template records and their tuning +containers are not separate hardware devices; select the silicon variant +using a resolved live tree before changing resources. No tuning properties +from those records are reproduced here. + +| Hardware path below the SoC bus | Classification and remaining audit | +| --- | --- | +| `i2c7/uatcrt4` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c7/uatcrt5` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `dart-scaler2/mapper-scaler2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler2/mapper-scaler-piodma2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler3/mapper-scaler3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler3/mapper-scaler-piodma3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ave2/mapper-ave2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ave3/mapper-ave3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apr2/mapper-apr2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apr3/mapper-apr3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd1/mapper-avd1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd1/mapper-avd1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd1/mapper-avd1-adsbuf` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-jpeg1/mapper-jpeg2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-jpeg1/mapper-jpeg3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `nub-spmi1/spmi-abbeyF1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi1/spmi-mosquitoM1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi4/spmi-jerezC0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a2/hpm4` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a2/hpm5` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `die1-nub-spmi0/spmi-abbeyL2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `die1-nub-spmi1/spmi-abbeyF2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `die1-nub-spmi2/spmi-jerezD2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `die1-nub-spmi2/spmi-jerezD4` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `die1-nub-spmi3/spmi-jerezD1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `die1-nub-spmi3/spmi-jerezD3` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `die1-nub-spmi4/spmi-jerezD0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu4/iop-aciophy4-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu5/iop-aciophy5-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-ane1/mapper-ane1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `i2c0/sync-hub-config` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c2/audio-codec-output` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c4/sd-card` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c5/aqc-a` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c8/pcon1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `apcie0/pci-bridge0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-control` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-alpha` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-beta` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge1/pcie-sdreader` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge3` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge3/pcie-xhci` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge3/pcie-xhci/pcie-xhci-hs-port3` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge3/pcie-xhci/pcie-xhci-hs-port4` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge3/pcie-xhci/pcie-xhci-ss-port1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge3/pcie-xhci/pcie-xhci-ss-port2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apcie0/mapper-apcie0-control` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-alpha` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-beta` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie1/mapper-apcie1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie1/mapper-apcie1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie2/mapper-apcie2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie2/mapper-apcie2-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie3/mapper-apcie3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie3/mapper-apcie3-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-phy-cpu0/iop-aciophy0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu1/iop-aciophy1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu2/iop-aciophy2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu3/iop-aciophy3-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec0/pcic0-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec0/mapper-apciec0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu0/iop-acio0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec1/pcic1-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec1/mapper-apciec1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu1/iop-acio1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec2/pcic2-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec2/mapper-apciec2-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu2/iop-acio2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec3/pcic3-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec3/mapper-apciec3-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio3/mapper-acio3-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu3/iop-acio3-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec4/pcic4-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec4/mapper-apciec4-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio4/mapper-acio4-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio4/mapper-acio4-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio4/mapper-acio4-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio4/mapper-acio4-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio4/mapper-acio4-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio4/mapper-acio4-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio4/mapper-acio4-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio4/mapper-acio4-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio4/mapper-acio4-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio4/mapper-acio4-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio4/mapper-acio4-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio4/mapper-acio4-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio4/mapper-acio4-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio4/mapper-acio4-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio4/mapper-acio4-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio4/mapper-acio4-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio4/mapper-acio4-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio4/mapper-acio4-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio4/mapper-acio4-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio4/mapper-acio4-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio4/mapper-acio4-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio4/mapper-acio4-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio4/mapper-acio4-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio4/mapper-acio4-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu4/iop-acio4-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec5/pcic5-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec5/mapper-apciec5-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio5/mapper-acio5-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio5/mapper-acio5-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio5/mapper-acio5-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio5/mapper-acio5-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio5/mapper-acio5-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio5/mapper-acio5-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio5/mapper-acio5-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio5/mapper-acio5-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio5/mapper-acio5-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio5/mapper-acio5-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio5/mapper-acio5-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio5/mapper-acio5-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio5/mapper-acio5-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio5/mapper-acio5-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio5/mapper-acio5-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio5/mapper-acio5-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio5/mapper-acio5-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio5/mapper-acio5-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio5/mapper-acio5-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio5/mapper-acio5-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio5/mapper-acio5-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio5/mapper-acio5-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio5/mapper-acio5-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio5/mapper-acio5-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu5/iop-acio5-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/amcc-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/dcs-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/pmgr-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afxni-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins0-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins1-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins2-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins3-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins4-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins5-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins6-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins7-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins8-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins9-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins10-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins11-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins12-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins13-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins14-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins15-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns0-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns1-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns2-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns3-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns4-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns5-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns6-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns7-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns8-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns9-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns10-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/sep-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/cllt-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/piogw-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/sram-parity-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/axi2af-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `auss-cpu0/auss-cpu0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `auss-cpu1/auss-cpu1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/aop-audio` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/accel` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/gyro` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-aop/mapper-aop` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-exclave-aop` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-aop2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-leap-ns` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-base-ns` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-leap-s` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-base-s` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-scm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `aop2/iop-aop2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `pmgr/soc-tuner` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/clpc` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/ppm` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/pmgrtools` | Power/firmware interface; provider topology and handoff pending. | +| `sio/iop-sio-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `sio/iop-sio-nub/sio-dma` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-sio/mapper-sio` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-sio/mapper-aes` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pmp0/iop-pmp0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-pmp0/mapper-pmp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-pmp0/mapper-pmp0-ptd-fwd` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pmp1/iop-pmp1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-pmp1/mapper-pmp1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-pmp1/mapper-pmp1-ptd-fwd` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `sep/iop-sep-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-sep/mapper-sep` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-sep/mapper-sep-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `ans/iop-ans-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `ans/ans-pcie` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-pmu` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-rsm/mapper-rsm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `qspi/spinor` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `qspi/spinor/firmware` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `qspi/spinor/anvram` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `qspi/spinor/syscfg` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-usb0/mapper-usb0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb1/mapper-usb1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb2/mapper-usb2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb3/mapper-usb3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-auss0/mapper-auss0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-auss1/mapper-auss1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb4/mapper-usb4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb5/mapper-usb5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `nub-spmi0/spmi-abbeyL1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi0/spmi-mosquitoM0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi0/btm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi2/spmi-jerezC2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi2/spmi-jerezC4` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi3/spmi-jerezC1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi3/spmi-jerezC3` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm3` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop-spmi0/stockholm-spmi` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop-spmi0/stockholm-spmi/stockholm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx0-aux/dptx0-aux-core` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx0-aux/dptx0-aux-ufp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx1-aux/dptx1-aux-core` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx1-aux/dptx1-aux-ufp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx2-aux/dptx2-aux-core` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx2-aux/dptx2-aux-ufp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx3-aux/dptx3-aux-core` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx3-aux/dptx3-aux-ufp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dcpext0/iop-dcpext0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext0/mapper-dcpext0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext0/mapper-dcpext0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0/mapper-dispext0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0/mapper-dispext0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0-isoc/mapper-dispext0-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext1/iop-dcpext1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext1/mapper-dcpext1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext1/mapper-dcpext1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1/mapper-dispext1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1/mapper-dispext1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1-isoc/mapper-dispext1-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext2/iop-dcpext2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext2/mapper-dcpext2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext2/mapper-dcpext2-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2/mapper-dispext2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2/mapper-dispext2-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2-isoc/mapper-dispext2-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext3/iop-dcpext3-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext3/mapper-dcpext3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext3/mapper-dcpext3-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3/mapper-dispext3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3/mapper-dispext3-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3-isoc/mapper-dispext3-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext4/iop-dcpext4-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext4/mapper-dcpext4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext4/mapper-dcpext4-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext4/mapper-dispext4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext4/mapper-dispext4-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext5/iop-dcpext5-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext5/mapper-dcpext5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext5/mapper-dcpext5-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext5/mapper-dispext5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext5/mapper-dispext5-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext6/iop-dcpext6-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext6/mapper-dcpext6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext6/mapper-dcpext6-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext6/mapper-dispext6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext6/mapper-dispext6-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext7/iop-dcpext7-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext7/mapper-dcpext7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext7/mapper-dcpext7-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext7/mapper-dispext7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext7/mapper-dispext7-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext4-isoc/mapper-dispext4-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext5-isoc/mapper-dispext5-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext6-isoc/mapper-dispext6-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext7-isoc/mapper-dispext7-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler/mapper-scaler` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler/mapper-scaler-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler0/mapper-scaler0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler0/mapper-scaler-piodma0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler1/mapper-scaler1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler1/mapper-scaler-piodma1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ave0/mapper-ave0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ave1/mapper-ave1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apr0/mapper-apr0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apr1/mapper-apr1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-jpeg0/mapper-jpeg0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-jpeg0/mapper-jpeg1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-mpm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0-adsbuf` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `gfx-asc/iop-gfx-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `gfx1-asc/iop-gfx1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-input` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-input/audio-codec-input` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-output` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-output/audio-codec-output` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-mca-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-mca-loopback/audio-mca-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker/audio-speaker` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `admac-base-ns/base-ns-adma-tx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-rx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-tx-4` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-rx-4` | Subdevice register interface; binding, parent translation and ownership audit pending. | diff --git a/docs/devicetree/DT-GAPS-j873s.md b/docs/devicetree/DT-GAPS-j873s.md index 5999fb7360c5f..a114033e7426b 100644 --- a/docs/devicetree/DT-GAPS-j873s.md +++ b/docs/devicetree/DT-GAPS-j873s.md @@ -157,16 +157,16 @@ release addresses must be supplied by the boot loader. | aop-exclave-mailbox | disabled resource description | `&hw_aop_exclave_mailbox` | | aop2 | disabled resource description | `&hw_aop2` | | event-log-handler | disabled resource description | `&hw_event_log_handler` | -| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider | +| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-sio | disabled resource description | `&hw_dart_sio`; power/clock gate needs a verified provider | | pmp0 | disabled resource description | `&hw_pmp0`; power/clock gate needs a verified provider | | dart-pmp0 | disabled resource description | `&hw_dart_pmp0` | -| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider | +| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-sep | disabled resource description | `&hw_dart_sep` | | aon-ptd | disabled resource description | `&hw_aon_ptd` | | rsm | disabled resource description | `&hw_rsm`; power/clock gate needs a verified provider | | dart-rsm | disabled resource description | `&hw_dart_rsm` | -| spi3 | disabled resource description | `&hw_spi3`; power/clock gate needs a verified provider | +| spi3 | disabled resource description | `&hw_spi3`; power/clock gate needs a verified provider; clock provider not yet translated | | atc-phy0 | disabled resource description | `&hw_atc_phy0`; power/clock gate needs a verified provider | | dart-usb0 | disabled resource description | `&hw_dart_usb0`; power/clock gate needs a verified provider | | usb-drd0 | disabled resource description | `&hw_usb_drd0`; power/clock gate needs a verified provider | @@ -176,7 +176,7 @@ release addresses must be supplied by the boot loader. | aop-spmi0 | disabled resource description | `&hw_aop_spmi0`; mixed/non-AIC interrupt routing needs decoding | | dptx0-aux | disabled resource description | `&hw_dptx0_aux`; power/clock gate needs a verified provider | | dptx1-aux | disabled resource description | `&hw_dptx1_aux`; power/clock gate needs a verified provider | -| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider | +| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-disp0 | disabled resource description | `&hw_dart_disp0` | | dcp0-expert | disabled resource description | `&hw_dcp0_expert` | | dcp | disabled resource description | `&hw_dcp`; power/clock gate needs a verified provider | @@ -213,23 +213,23 @@ release addresses must be supplied by the boot loader. | admac-dispext3 | disabled resource description | `&hw_admac_dispext3` | | admac-dispext3-ced-ssw | disabled resource description | `&hw_admac_dispext3_ced_ssw` | | dart-scaler | disabled resource description | `&hw_dart_scaler`; power/clock gate needs a verified provider | -| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider | +| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-scaler0 | disabled resource description | `&hw_dart_scaler0`; power/clock gate needs a verified provider | -| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider | +| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-scaler1 | disabled resource description | `&hw_dart_scaler1`; power/clock gate needs a verified provider | -| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider | +| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ave0 | disabled resource description | `&hw_dart_ave0`; power/clock gate needs a verified provider | -| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider | +| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ave1 | disabled resource description | `&hw_dart_ave1`; power/clock gate needs a verified provider | | apr0 | disabled resource description | `&hw_apr0`; power/clock gate needs a verified provider | | dart-apr0 | disabled resource description | `&hw_dart_apr0`; power/clock gate needs a verified provider | | dart-apr1 | disabled resource description | `&hw_dart_apr1`; power/clock gate needs a verified provider | -| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider | -| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider | +| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider; clock provider not yet translated | +| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-jpeg0 | disabled resource description | `&hw_dart_jpeg0`; power/clock gate needs a verified provider | -| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider | +| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ane0 | disabled resource description | `&hw_dart_ane0`; power/clock gate needs a verified provider | -| avd0 | disabled resource description | `&hw_avd0`; DMA mapper is not resolved, power/clock gate needs a verified provider | +| avd0 | disabled resource description | `&hw_avd0`; DMA mapper is not resolved, power/clock gate needs a verified provider; clock provider not yet translated | | dart-avd0 | disabled resource description | `&hw_dart_avd0`; power/clock gate needs a verified provider | | sgx | disabled resource description | `&hw_sgx`; power/clock gate needs a verified provider | | gfx-asc | disabled resource description | `&hw_gfx_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | @@ -238,3 +238,297 @@ release addresses must be supplied by the boot loader. | admac-aop-ced-ssw | disabled resource description | `&hw_admac_aop_ced_ssw` | | dbgCPU | disabled resource description | `&hw_dbgCPU` | | apple-processor-trace | disabled resource description | `&hw_apple_processor_trace` | + +## Child devices and service interfaces + +These entries require an endpoint/transport audit in addition to the parent +controller resources above. Mapper records describe stream IDs rather than +independently probed devices. Conditional template records and their tuning +containers are not separate hardware devices; select the silicon variant +using a resolved live tree before changing resources. No tuning properties +from those records are reproduced here. + +| Hardware path below the SoC bus | Classification and remaining audit | +| --- | --- | +| `i2c1/audio-speaker` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `i2c2/audio-codec-output` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `i2c5/aqc-a` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `i2c6/uatcrt0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `i2c6/uatcrt1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `i2c6/uatcrt2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-control` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-alpha` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-beta` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apcie0/mapper-apcie0-control` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-alpha` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-beta` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie2/mapper-apcie2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie2/mapper-apcie2-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-phy-cpu0/iop-aciophy0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu1/iop-aciophy1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu2/iop-aciophy2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu3/iop-aciophy3-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec0/pcic0-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec0/mapper-apciec0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu0/iop-acio0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec1/pcic1-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec1/mapper-apciec1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu1/iop-acio1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec2/pcic2-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec2/mapper-apciec2-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu2/iop-acio2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/amcc-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/dcs-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/pmgr-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afxni-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afins0-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afins1-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afins2-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afins3-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afins4-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afins5-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afins6-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afins7-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afins8-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afins9-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afins10-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afins11-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afins12-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afins13-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afins14-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afins15-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afcns0-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afcns1-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afcns2-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afcns3-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afcns4-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afcns5-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afcns6-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afcns7-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afcns8-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afcns9-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/afcns10-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/sep-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/cllt-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/piogw-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/sram-parity-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/axi2af-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `auss-cpu0/auss-cpu0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/aop-audio` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/accel` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/gyro` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-aop/mapper-aop` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-exclave-aop` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-aop2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-leap-ns` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-base-ns` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-leap-s` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-base-s` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-scm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `aop2/iop-aop2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `pmgr/soc-tuner` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/clpc` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/ppm` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/pmgrtools` | Power/firmware interface; provider topology and handoff pending. | +| `sio/iop-sio-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `sio/iop-sio-nub/sio-dma` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-sio/mapper-sio` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-sio/mapper-aes` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pmp0/iop-pmp0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-pmp0/mapper-pmp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-pmp0/mapper-pmp0-ptd-fwd` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pmp1/iop-pmp1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-pmp1/mapper-pmp1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-pmp1/mapper-pmp1-ptd-fwd` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `sep/iop-sep-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-sep/mapper-sep` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-sep/mapper-sep-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `ans/iop-ans-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `ans/ans-pcie` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-pmu` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-rsm/mapper-rsm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `qspi/spinor` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `qspi/spinor/firmware` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `qspi/spinor/anvram` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `qspi/spinor/syscfg` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi3/usb3hub-flash` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi3/usb3hub-flash/usb3hub-fw` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-usb0/mapper-usb0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb1/mapper-usb1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb2/mapper-usb2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb3/mapper-usb3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `usb-drd3/usb-drd3-port-hs` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `usb-drd3/usb-drd3-port-hs/usb2-hub-port1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `usb-drd3/usb-drd3-port-hs/usb2-hub-port4` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `usb-drd3/usb-drd3-port-ss` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `usb-drd3/usb-drd3-port-ss/usb3-hub-port1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `usb-drd3/usb-drd3-port-ss/usb3-hub-port4` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-auss0/mapper-auss0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `nub-spmi0/spmi-abbeyL1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi0/btm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi2/spmi-abbeyF1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi3/spmi-abbeyF2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop-spmi0/stockholm-spmi` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop-spmi0/stockholm-spmi/stockholm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx0-aux/dptx0-aux-core` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx0-aux/dptx0-aux-ufp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx1-aux/dptx1-aux-core` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx1-aux/dptx1-aux-ufp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-disp0/mapper-disp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-scl` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-sca` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcp/iop-dcp-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcp/mapper-dcp` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcp/mapper-dcp-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0-isoc/mapper-disp0-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext0/iop-dcpext0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext0/mapper-dcpext0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext0/mapper-dcpext0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0/mapper-dispext0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0/mapper-dispext0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0-isoc/mapper-dispext0-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext1/iop-dcpext1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext1/mapper-dcpext1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext1/mapper-dcpext1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1/mapper-dispext1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1/mapper-dispext1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1-isoc/mapper-dispext1-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext2/iop-dcpext2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext2/mapper-dcpext2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext2/mapper-dcpext2-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2/mapper-dispext2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2/mapper-dispext2-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2-isoc/mapper-dispext2-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext3/iop-dcpext3-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext3/mapper-dcpext3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext3/mapper-dcpext3-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3/mapper-dispext3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3/mapper-dispext3-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3-isoc/mapper-dispext3-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler/mapper-scaler` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler/mapper-scaler-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler0/mapper-scaler0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler0/mapper-scaler-piodma0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler1/mapper-scaler1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler1/mapper-scaler-piodma1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ave0/mapper-ave0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ave1/mapper-ave1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apr0/mapper-apr0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apr1/mapper-apr1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-jpeg0/mapper-jpeg0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-jpeg0/mapper-jpeg1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-mpm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0-adsbuf` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `gfx-asc/iop-gfx-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `gfx1-asc/iop-gfx1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-input` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-input/audio-codec-input` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-output` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-output/audio-codec-output` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-mca-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-mca-loopback/audio-mca-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker/audio-speaker` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `admac-base-ns/base-ns-adma-tx-0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `admac-base-ns/base-ns-adma-rx-0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `admac-base-ns/base-ns-adma-tx-2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `admac-base-ns/base-ns-adma-rx-2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `admac-base-ns/base-ns-adma-tx-3` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `admac-base-ns/base-ns-adma-rx-3` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `admac-leap-ns/leap-ns-adma-rx-0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `admac-leap-ns/leap-ns-adma-tx-4` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `admac-leap-ns/leap-ns-adma-rx-4` | Attached device or firmware service; endpoint binding and board wiring audit pending. | diff --git a/docs/devicetree/DT-GAPS-k114c.md b/docs/devicetree/DT-GAPS-k114c.md index f47217b91b208..bca1a02ad56d8 100644 --- a/docs/devicetree/DT-GAPS-k114c.md +++ b/docs/devicetree/DT-GAPS-k114c.md @@ -134,8 +134,8 @@ release addresses must be supplied by the boot loader. | i2c4 | disabled resource description | `&hw_i2c4`; power/clock gate needs a verified provider | | i2c6 | disabled resource description | `&hw_i2c6`; power/clock gate needs a verified provider | | i2c8 | disabled resource description | `&hw_i2c8`; power/clock gate needs a verified provider | -| spi2 | disabled resource description | `&hw_spi2`; power/clock gate needs a verified provider | -| spi4 | disabled resource description | `&hw_spi4`; power/clock gate needs a verified provider | +| spi2 | disabled resource description | `&hw_spi2`; power/clock gate needs a verified provider; clock provider not yet translated | +| spi4 | disabled resource description | `&hw_spi4`; power/clock gate needs a verified provider; clock provider not yet translated | | nub-spmi-a1 | disabled resource description | `&hw_nub_spmi_a1`; mixed/non-AIC interrupt routing needs decoding | | dart-isp0 | disabled resource description | `&hw_dart_isp0`; power/clock gate needs a verified provider | | apcie0-piodma | disabled resource description | `&hw_apcie0_piodma` | @@ -182,11 +182,11 @@ release addresses must be supplied by the boot loader. | aop-exclave-mailbox | disabled resource description | `&hw_aop_exclave_mailbox` | | aop2 | disabled resource description | `&hw_aop2` | | event-log-handler | disabled resource description | `&hw_event_log_handler` | -| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider | +| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-sio | disabled resource description | `&hw_dart_sio`; power/clock gate needs a verified provider | | pmp0 | disabled resource description | `&hw_pmp0`; power/clock gate needs a verified provider | | dart-pmp0 | disabled resource description | `&hw_dart_pmp0` | -| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider | +| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-sep | disabled resource description | `&hw_dart_sep` | | aon-ptd | disabled resource description | `&hw_aon_ptd` | | rsm | disabled resource description | `&hw_rsm`; power/clock gate needs a verified provider | @@ -200,7 +200,7 @@ release addresses must be supplied by the boot loader. | aop-spmi0 | disabled resource description | `&hw_aop_spmi0`; mixed/non-AIC interrupt routing needs decoding | | dptx0-aux | disabled resource description | `&hw_dptx0_aux`; power/clock gate needs a verified provider | | dptx1-aux | disabled resource description | `&hw_dptx1_aux`; power/clock gate needs a verified provider | -| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider | +| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-disp0 | disabled resource description | `&hw_dart_disp0` | | dcp0-expert | disabled resource description | `&hw_dcp0_expert` | | dcp | disabled resource description | `&hw_dcp`; power/clock gate needs a verified provider | @@ -237,23 +237,23 @@ release addresses must be supplied by the boot loader. | admac-dispext3 | disabled resource description | `&hw_admac_dispext3` | | admac-dispext3-ced-ssw | disabled resource description | `&hw_admac_dispext3_ced_ssw` | | dart-scaler | disabled resource description | `&hw_dart_scaler`; power/clock gate needs a verified provider | -| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider | +| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-scaler0 | disabled resource description | `&hw_dart_scaler0`; power/clock gate needs a verified provider | -| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider | +| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-scaler1 | disabled resource description | `&hw_dart_scaler1`; power/clock gate needs a verified provider | -| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider | +| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ave0 | disabled resource description | `&hw_dart_ave0`; power/clock gate needs a verified provider | -| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider | +| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ave1 | disabled resource description | `&hw_dart_ave1`; power/clock gate needs a verified provider | | apr0 | disabled resource description | `&hw_apr0`; power/clock gate needs a verified provider | | dart-apr0 | disabled resource description | `&hw_dart_apr0`; power/clock gate needs a verified provider | | dart-apr1 | disabled resource description | `&hw_dart_apr1`; power/clock gate needs a verified provider | -| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider | -| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider | +| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider; clock provider not yet translated | +| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-jpeg0 | disabled resource description | `&hw_dart_jpeg0`; power/clock gate needs a verified provider | -| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider | +| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ane0 | disabled resource description | `&hw_dart_ane0`; power/clock gate needs a verified provider | -| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider | +| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-avd0 | disabled resource description | `&hw_dart_avd0`; power/clock gate needs a verified provider | | sgx | disabled resource description | `&hw_sgx`; power/clock gate needs a verified provider | | gfx-asc | disabled resource description | `&hw_gfx_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | @@ -265,3 +265,359 @@ release addresses must be supplied by the boot loader. | admac-sllb-ec-proxy | disabled resource description | `&hw_admac_sllb_ec_proxy` | | dbgCPU | disabled resource description | `&hw_dbgCPU` | | apple-processor-trace | disabled resource description | `&hw_apple_processor_trace` | + +## Child devices and service interfaces + +These entries require an endpoint/transport audit in addition to the parent +controller resources above. Mapper records describe stream IDs rather than +independently probed devices. Conditional template records and their tuning +containers are not separate hardware devices; select the silicon variant +using a resolved live tree before changing resources. No tuning properties +from those records are reproduced here. + +| Hardware path below the SoC bus | Classification and remaining audit | +| --- | --- | +| `nub-spmi1/spmi-mosquitoM1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi4/spmi-jerezC0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi4/spmi-jerezC1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `pwm2/mesa-backlight` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `i2c0/sync-hub-config` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c0/sync-hub-prog` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker-left-woofer-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker-left-tweeter` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c2/audio-codec-output` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c3/audio-speaker-right-woofer-1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c3/audio-speaker-right-woofer-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c3/audio-speaker-right-tweeter` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `iop-voicetrigger-controller/audio-vt-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `i2c4/sd-card` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c8/pcon0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi2/mesa` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/ixora` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/ixora/lcd-pmicwp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-pmic` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-pmic1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-pmic2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-pls` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-sswp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-ss` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/tcon-registers` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-eeprom` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/display-temp-sens1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/display-temp-sens2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/display-temp-sens3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/displayNAND` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `nub-spmi-a1/hpm2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-isp0/mapper-isp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-mpm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-epipe0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-epipe1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-piodma0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-piodma1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pwm0/kbd-backlight` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-control` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-alpha` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-beta` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge1/pcie-sdreader` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apcie0/mapper-apcie0-control` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-alpha` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-beta` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie1/mapper-apcie1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie1/mapper-apcie1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-phy-cpu0/iop-aciophy0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu1/iop-aciophy1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu2/iop-aciophy2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu3/iop-aciophy3-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/multi-touch` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/kiwi` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/keyboard` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/stm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/actuator` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/tp-accel` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `mtp/iop-mtp-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-mtp/mapper-mtp` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `apciec0/pcic0-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec0/mapper-apciec0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu0/iop-acio0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec1/pcic1-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec1/mapper-apciec1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu1/iop-acio1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec2/pcic2-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec2/mapper-apciec2-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu2/iop-acio2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/amcc-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/dcs-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/pmgr-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afxni-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins0-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins1-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins2-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins3-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins4-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins5-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins6-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins7-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins8-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins9-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins10-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins11-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins12-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins13-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins14-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins15-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns0-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns1-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns2-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns3-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns4-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns5-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns6-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns7-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns8-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns9-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns10-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/sep-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/cllt-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/piogw-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/sram-parity-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/axi2af-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `auss-cpu0/auss-cpu0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/aop-audio` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/aop-voicetrigger` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/dcp-control` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/als` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/spherecontrol` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/accel` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/gyro` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-aop/mapper-aop` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-exclave-aop` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-aop2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-leap-ns` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-base-ns` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-leap-s` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-base-s` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-scm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `aop2/iop-aop2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `pmgr/soc-tuner` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/clpc` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/ppm` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/pmgrtools` | Power/firmware interface; provider topology and handoff pending. | +| `sio/iop-sio-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `sio/iop-sio-nub/sio-dma` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-sio/mapper-sio` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-sio/mapper-aes` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pmp0/iop-pmp0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-pmp0/mapper-pmp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-pmp0/mapper-pmp0-ptd-fwd` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pmp1/iop-pmp1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-pmp1/mapper-pmp1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-pmp1/mapper-pmp1-ptd-fwd` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `sep/iop-sep-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-sep/mapper-sep` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-sep/mapper-sep-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `ans/iop-ans-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `ans/ans-pcie` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-pmu` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-area51` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `dart-rsm/mapper-rsm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `qspi/spinor` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `qspi/spinor/firmware` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `qspi/spinor/anvram` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `qspi/spinor/syscfg` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-usb0/mapper-usb0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb1/mapper-usb1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb2/mapper-usb2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-auss0/mapper-auss0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `nub-spmi0/spmi-abbeyL1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi0/spmi-mosquitoM0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi0/btm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi2/spmi-abbeyF1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi3/spmi-abbeyF2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm5` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop-spmi0/stockholm-spmi` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop-spmi0/stockholm-spmi/stockholm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx0-aux/dptx0-aux-core` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx0-aux/dptx0-aux-ufp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx1-aux/dptx1-aux-core` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx1-aux/dptx1-aux-ufp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-disp0/mapper-disp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-scl` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-sca` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcp/iop-dcp-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcp/mapper-dcp` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcp/mapper-dcp-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0-isoc/mapper-disp0-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext0/iop-dcpext0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext0/mapper-dcpext0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext0/mapper-dcpext0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0/mapper-dispext0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0/mapper-dispext0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0-isoc/mapper-dispext0-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext1/iop-dcpext1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext1/mapper-dcpext1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext1/mapper-dcpext1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1/mapper-dispext1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1/mapper-dispext1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1-isoc/mapper-dispext1-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext2/iop-dcpext2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext2/mapper-dcpext2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext2/mapper-dcpext2-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2/mapper-dispext2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2/mapper-dispext2-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2-isoc/mapper-dispext2-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext3/iop-dcpext3-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext3/mapper-dcpext3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext3/mapper-dcpext3-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3/mapper-dispext3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3/mapper-dispext3-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3-isoc/mapper-dispext3-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler/mapper-scaler` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler/mapper-scaler-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler0/mapper-scaler0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler0/mapper-scaler-piodma0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler1/mapper-scaler1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler1/mapper-scaler-piodma1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ave0/mapper-ave0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ave1/mapper-ave1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apr0/mapper-apr0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apr1/mapper-apr1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-jpeg0/mapper-jpeg0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-jpeg0/mapper-jpeg1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-mpm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0-adsbuf` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `gfx-asc/iop-gfx-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `gfx1-asc/iop-gfx1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-hp-mic` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-hp-mic/audio-hp-mic` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-input` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-input/audio-codec-input` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-output` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-output/audio-codec-output` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-leap-internal-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-leap-internal-loopback/audio-leap-internal-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-secure-leap-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-secure-leap-loopback/audio-secure-leap-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-mca-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-mca-loopback/audio-mca-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker/audio-speaker` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker-tap` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker-tap/audio-speaker-tap` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-io-buffer-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/siri-listening-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-injection-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-injection-device/lp-mic-injection-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `admac-base-ns/base-ns-adma-tx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-5` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-tx-4` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-rx-4` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-tx-5` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-s/leap-s-adma-rx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-s/leap-s-adma-rx-5` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `pwm1/bklb-backlight` | Attached device or firmware service; endpoint binding and board wiring audit pending. | diff --git a/docs/devicetree/DT-GAPS-k114s.md b/docs/devicetree/DT-GAPS-k114s.md index cf0adac406880..78e7a9c3ab90a 100644 --- a/docs/devicetree/DT-GAPS-k114s.md +++ b/docs/devicetree/DT-GAPS-k114s.md @@ -132,8 +132,8 @@ release addresses must be supplied by the boot loader. | i2c4 | disabled resource description | `&hw_i2c4`; power/clock gate needs a verified provider | | i2c6 | disabled resource description | `&hw_i2c6`; power/clock gate needs a verified provider | | i2c8 | disabled resource description | `&hw_i2c8`; power/clock gate needs a verified provider | -| spi2 | disabled resource description | `&hw_spi2`; power/clock gate needs a verified provider | -| spi4 | disabled resource description | `&hw_spi4`; power/clock gate needs a verified provider | +| spi2 | disabled resource description | `&hw_spi2`; power/clock gate needs a verified provider; clock provider not yet translated | +| spi4 | disabled resource description | `&hw_spi4`; power/clock gate needs a verified provider; clock provider not yet translated | | nub-spmi-a1 | disabled resource description | `&hw_nub_spmi_a1`; mixed/non-AIC interrupt routing needs decoding | | dart-isp0 | disabled resource description | `&hw_dart_isp0`; power/clock gate needs a verified provider | | apcie0-piodma | disabled resource description | `&hw_apcie0_piodma` | @@ -180,11 +180,11 @@ release addresses must be supplied by the boot loader. | aop-exclave-mailbox | disabled resource description | `&hw_aop_exclave_mailbox` | | aop2 | disabled resource description | `&hw_aop2` | | event-log-handler | disabled resource description | `&hw_event_log_handler` | -| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider | +| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-sio | disabled resource description | `&hw_dart_sio`; power/clock gate needs a verified provider | | pmp0 | disabled resource description | `&hw_pmp0`; power/clock gate needs a verified provider | | dart-pmp0 | disabled resource description | `&hw_dart_pmp0` | -| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider | +| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-sep | disabled resource description | `&hw_dart_sep` | | aon-ptd | disabled resource description | `&hw_aon_ptd` | | rsm | disabled resource description | `&hw_rsm`; power/clock gate needs a verified provider | @@ -198,7 +198,7 @@ release addresses must be supplied by the boot loader. | aop-spmi0 | disabled resource description | `&hw_aop_spmi0`; mixed/non-AIC interrupt routing needs decoding | | dptx0-aux | disabled resource description | `&hw_dptx0_aux`; power/clock gate needs a verified provider | | dptx1-aux | disabled resource description | `&hw_dptx1_aux`; power/clock gate needs a verified provider | -| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider | +| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-disp0 | disabled resource description | `&hw_dart_disp0` | | dcp0-expert | disabled resource description | `&hw_dcp0_expert` | | dcp | disabled resource description | `&hw_dcp`; power/clock gate needs a verified provider | @@ -235,23 +235,23 @@ release addresses must be supplied by the boot loader. | admac-dispext3 | disabled resource description | `&hw_admac_dispext3` | | admac-dispext3-ced-ssw | disabled resource description | `&hw_admac_dispext3_ced_ssw` | | dart-scaler | disabled resource description | `&hw_dart_scaler`; power/clock gate needs a verified provider | -| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider | +| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-scaler0 | disabled resource description | `&hw_dart_scaler0`; power/clock gate needs a verified provider | -| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider | +| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-scaler1 | disabled resource description | `&hw_dart_scaler1`; power/clock gate needs a verified provider | -| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider | +| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ave0 | disabled resource description | `&hw_dart_ave0`; power/clock gate needs a verified provider | -| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider | +| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ave1 | disabled resource description | `&hw_dart_ave1`; power/clock gate needs a verified provider | | apr0 | disabled resource description | `&hw_apr0`; power/clock gate needs a verified provider | | dart-apr0 | disabled resource description | `&hw_dart_apr0`; power/clock gate needs a verified provider | | dart-apr1 | disabled resource description | `&hw_dart_apr1`; power/clock gate needs a verified provider | -| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider | -| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider | +| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider; clock provider not yet translated | +| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-jpeg0 | disabled resource description | `&hw_dart_jpeg0`; power/clock gate needs a verified provider | -| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider | +| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ane0 | disabled resource description | `&hw_dart_ane0`; power/clock gate needs a verified provider | -| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider | +| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-avd0 | disabled resource description | `&hw_dart_avd0`; power/clock gate needs a verified provider | | sgx | disabled resource description | `&hw_sgx`; power/clock gate needs a verified provider | | gfx-asc | disabled resource description | `&hw_gfx_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | @@ -263,3 +263,356 @@ release addresses must be supplied by the boot loader. | admac-sllb-ec-proxy | disabled resource description | `&hw_admac_sllb_ec_proxy` | | dbgCPU | disabled resource description | `&hw_dbgCPU` | | apple-processor-trace | disabled resource description | `&hw_apple_processor_trace` | + +## Child devices and service interfaces + +These entries require an endpoint/transport audit in addition to the parent +controller resources above. Mapper records describe stream IDs rather than +independently probed devices. Conditional template records and their tuning +containers are not separate hardware devices; select the silicon variant +using a resolved live tree before changing resources. No tuning properties +from those records are reproduced here. + +| Hardware path below the SoC bus | Classification and remaining audit | +| --- | --- | +| `pwm2/mesa-backlight` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `i2c0/sync-hub-config` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c0/sync-hub-prog` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker-left-woofer-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker-left-tweeter` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c2/audio-codec-output` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c3/audio-speaker-right-woofer-1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c3/audio-speaker-right-woofer-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c3/audio-speaker-right-tweeter` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `iop-voicetrigger-controller/audio-vt-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `i2c4/sd-card` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c8/pcon0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi2/mesa` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/ixora` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/ixora/lcd-pmicwp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-pmic` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-pmic1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-pmic2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-pls` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-sswp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-ss` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/tcon-registers` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-eeprom` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/display-temp-sens1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/display-temp-sens2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/display-temp-sens3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/displayNAND` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `nub-spmi-a1/hpm2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-isp0/mapper-isp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-mpm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-epipe0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-epipe1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-piodma0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-piodma1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pwm0/kbd-backlight` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-control` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-alpha` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-beta` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge1/pcie-sdreader` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apcie0/mapper-apcie0-control` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-alpha` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-beta` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie1/mapper-apcie1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie1/mapper-apcie1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-phy-cpu0/iop-aciophy0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu1/iop-aciophy1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu2/iop-aciophy2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu3/iop-aciophy3-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/multi-touch` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/kiwi` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/keyboard` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/stm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/actuator` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/tp-accel` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `mtp/iop-mtp-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-mtp/mapper-mtp` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `apciec0/pcic0-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec0/mapper-apciec0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu0/iop-acio0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec1/pcic1-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec1/mapper-apciec1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu1/iop-acio1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec2/pcic2-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec2/mapper-apciec2-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu2/iop-acio2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/amcc-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/dcs-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/pmgr-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afxni-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins0-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins1-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins2-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins3-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins4-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins5-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins6-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins7-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins8-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins9-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins10-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins11-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins12-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins13-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins14-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins15-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns0-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns1-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns2-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns3-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns4-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns5-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns6-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns7-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns8-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns9-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns10-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/sep-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/cllt-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/piogw-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/sram-parity-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/axi2af-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `auss-cpu0/auss-cpu0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/aop-audio` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/aop-voicetrigger` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/dcp-control` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/als` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/spherecontrol` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/accel` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/gyro` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-aop/mapper-aop` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-exclave-aop` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-aop2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-leap-ns` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-base-ns` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-leap-s` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-base-s` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-scm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `aop2/iop-aop2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `pmgr/soc-tuner` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/clpc` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/ppm` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/pmgrtools` | Power/firmware interface; provider topology and handoff pending. | +| `sio/iop-sio-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `sio/iop-sio-nub/sio-dma` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-sio/mapper-sio` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-sio/mapper-aes` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pmp0/iop-pmp0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-pmp0/mapper-pmp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-pmp0/mapper-pmp0-ptd-fwd` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pmp1/iop-pmp1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-pmp1/mapper-pmp1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-pmp1/mapper-pmp1-ptd-fwd` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `sep/iop-sep-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-sep/mapper-sep` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-sep/mapper-sep-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `ans/iop-ans-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `ans/ans-pcie` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-pmu` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-area51` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `dart-rsm/mapper-rsm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `qspi/spinor` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `qspi/spinor/firmware` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `qspi/spinor/anvram` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `qspi/spinor/syscfg` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-usb0/mapper-usb0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb1/mapper-usb1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb2/mapper-usb2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-auss0/mapper-auss0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `nub-spmi0/spmi-abbeyL1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi0/spmi-mosquitoM0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi0/btm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi2/spmi-abbeyF1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi3/spmi-abbeyF2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm5` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop-spmi0/stockholm-spmi` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop-spmi0/stockholm-spmi/stockholm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx0-aux/dptx0-aux-core` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx0-aux/dptx0-aux-ufp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx1-aux/dptx1-aux-core` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx1-aux/dptx1-aux-ufp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-disp0/mapper-disp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-scl` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-sca` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcp/iop-dcp-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcp/mapper-dcp` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcp/mapper-dcp-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0-isoc/mapper-disp0-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext0/iop-dcpext0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext0/mapper-dcpext0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext0/mapper-dcpext0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0/mapper-dispext0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0/mapper-dispext0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0-isoc/mapper-dispext0-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext1/iop-dcpext1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext1/mapper-dcpext1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext1/mapper-dcpext1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1/mapper-dispext1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1/mapper-dispext1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1-isoc/mapper-dispext1-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext2/iop-dcpext2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext2/mapper-dcpext2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext2/mapper-dcpext2-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2/mapper-dispext2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2/mapper-dispext2-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2-isoc/mapper-dispext2-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext3/iop-dcpext3-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext3/mapper-dcpext3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext3/mapper-dcpext3-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3/mapper-dispext3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3/mapper-dispext3-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3-isoc/mapper-dispext3-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler/mapper-scaler` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler/mapper-scaler-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler0/mapper-scaler0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler0/mapper-scaler-piodma0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler1/mapper-scaler1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler1/mapper-scaler-piodma1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ave0/mapper-ave0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ave1/mapper-ave1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apr0/mapper-apr0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apr1/mapper-apr1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-jpeg0/mapper-jpeg0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-jpeg0/mapper-jpeg1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-mpm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0-adsbuf` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `gfx-asc/iop-gfx-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `gfx1-asc/iop-gfx1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-hp-mic` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-hp-mic/audio-hp-mic` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-input` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-input/audio-codec-input` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-output` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-output/audio-codec-output` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-leap-internal-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-leap-internal-loopback/audio-leap-internal-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-secure-leap-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-secure-leap-loopback/audio-secure-leap-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-mca-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-mca-loopback/audio-mca-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker/audio-speaker` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker-tap` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker-tap/audio-speaker-tap` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-io-buffer-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/siri-listening-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-injection-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-injection-device/lp-mic-injection-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `admac-base-ns/base-ns-adma-tx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-5` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-tx-4` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-rx-4` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-tx-5` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-s/leap-s-adma-rx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-s/leap-s-adma-rx-5` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `pwm1/bklb-backlight` | Attached device or firmware service; endpoint binding and board wiring audit pending. | diff --git a/docs/devicetree/DT-GAPS-k116c.md b/docs/devicetree/DT-GAPS-k116c.md index 5904b1c8a6d65..337a80c34f7ca 100644 --- a/docs/devicetree/DT-GAPS-k116c.md +++ b/docs/devicetree/DT-GAPS-k116c.md @@ -134,8 +134,8 @@ release addresses must be supplied by the boot loader. | i2c4 | disabled resource description | `&hw_i2c4`; power/clock gate needs a verified provider | | i2c6 | disabled resource description | `&hw_i2c6`; power/clock gate needs a verified provider | | i2c8 | disabled resource description | `&hw_i2c8`; power/clock gate needs a verified provider | -| spi2 | disabled resource description | `&hw_spi2`; power/clock gate needs a verified provider | -| spi4 | disabled resource description | `&hw_spi4`; power/clock gate needs a verified provider | +| spi2 | disabled resource description | `&hw_spi2`; power/clock gate needs a verified provider; clock provider not yet translated | +| spi4 | disabled resource description | `&hw_spi4`; power/clock gate needs a verified provider; clock provider not yet translated | | nub-spmi-a1 | disabled resource description | `&hw_nub_spmi_a1`; mixed/non-AIC interrupt routing needs decoding | | dart-isp0 | disabled resource description | `&hw_dart_isp0`; power/clock gate needs a verified provider | | apcie0-piodma | disabled resource description | `&hw_apcie0_piodma` | @@ -182,11 +182,11 @@ release addresses must be supplied by the boot loader. | aop-exclave-mailbox | disabled resource description | `&hw_aop_exclave_mailbox` | | aop2 | disabled resource description | `&hw_aop2` | | event-log-handler | disabled resource description | `&hw_event_log_handler` | -| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider | +| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-sio | disabled resource description | `&hw_dart_sio`; power/clock gate needs a verified provider | | pmp0 | disabled resource description | `&hw_pmp0`; power/clock gate needs a verified provider | | dart-pmp0 | disabled resource description | `&hw_dart_pmp0` | -| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider | +| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-sep | disabled resource description | `&hw_dart_sep` | | aon-ptd | disabled resource description | `&hw_aon_ptd` | | rsm | disabled resource description | `&hw_rsm`; power/clock gate needs a verified provider | @@ -200,7 +200,7 @@ release addresses must be supplied by the boot loader. | aop-spmi0 | disabled resource description | `&hw_aop_spmi0`; mixed/non-AIC interrupt routing needs decoding | | dptx0-aux | disabled resource description | `&hw_dptx0_aux`; power/clock gate needs a verified provider | | dptx1-aux | disabled resource description | `&hw_dptx1_aux`; power/clock gate needs a verified provider | -| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider | +| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-disp0 | disabled resource description | `&hw_dart_disp0` | | dcp0-expert | disabled resource description | `&hw_dcp0_expert` | | dcp | disabled resource description | `&hw_dcp`; power/clock gate needs a verified provider | @@ -237,23 +237,23 @@ release addresses must be supplied by the boot loader. | admac-dispext3 | disabled resource description | `&hw_admac_dispext3` | | admac-dispext3-ced-ssw | disabled resource description | `&hw_admac_dispext3_ced_ssw` | | dart-scaler | disabled resource description | `&hw_dart_scaler`; power/clock gate needs a verified provider | -| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider | +| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-scaler0 | disabled resource description | `&hw_dart_scaler0`; power/clock gate needs a verified provider | -| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider | +| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-scaler1 | disabled resource description | `&hw_dart_scaler1`; power/clock gate needs a verified provider | -| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider | +| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ave0 | disabled resource description | `&hw_dart_ave0`; power/clock gate needs a verified provider | -| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider | +| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ave1 | disabled resource description | `&hw_dart_ave1`; power/clock gate needs a verified provider | | apr0 | disabled resource description | `&hw_apr0`; power/clock gate needs a verified provider | | dart-apr0 | disabled resource description | `&hw_dart_apr0`; power/clock gate needs a verified provider | | dart-apr1 | disabled resource description | `&hw_dart_apr1`; power/clock gate needs a verified provider | -| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider | -| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider | +| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider; clock provider not yet translated | +| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-jpeg0 | disabled resource description | `&hw_dart_jpeg0`; power/clock gate needs a verified provider | -| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider | +| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ane0 | disabled resource description | `&hw_dart_ane0`; power/clock gate needs a verified provider | -| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider | +| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-avd0 | disabled resource description | `&hw_dart_avd0`; power/clock gate needs a verified provider | | sgx | disabled resource description | `&hw_sgx`; power/clock gate needs a verified provider | | gfx-asc | disabled resource description | `&hw_gfx_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | @@ -265,3 +265,359 @@ release addresses must be supplied by the boot loader. | admac-sllb-ec-proxy | disabled resource description | `&hw_admac_sllb_ec_proxy` | | dbgCPU | disabled resource description | `&hw_dbgCPU` | | apple-processor-trace | disabled resource description | `&hw_apple_processor_trace` | + +## Child devices and service interfaces + +These entries require an endpoint/transport audit in addition to the parent +controller resources above. Mapper records describe stream IDs rather than +independently probed devices. Conditional template records and their tuning +containers are not separate hardware devices; select the silicon variant +using a resolved live tree before changing resources. No tuning properties +from those records are reproduced here. + +| Hardware path below the SoC bus | Classification and remaining audit | +| --- | --- | +| `nub-spmi1/spmi-mosquitoM1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi4/spmi-jerezC0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi4/spmi-jerezC1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `pwm2/mesa-backlight` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `i2c0/sync-hub-config` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c0/sync-hub-prog` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker-left-woofer-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker-left-tweeter` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c2/audio-codec-output` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c3/audio-speaker-right-woofer-1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c3/audio-speaker-right-woofer-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c3/audio-speaker-right-tweeter` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `iop-voicetrigger-controller/audio-vt-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `i2c4/sd-card` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c8/pcon0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi2/mesa` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/ixora` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/ixora/lcd-pmicwp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-pmic` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-pmic1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-pmic2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-pls` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-sswp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-ss` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/tcon-registers` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-eeprom` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/display-temp-sens1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/display-temp-sens2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/display-temp-sens3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/displayNAND` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `nub-spmi-a1/hpm2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-isp0/mapper-isp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-mpm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-epipe0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-epipe1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-piodma0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-piodma1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pwm0/kbd-backlight` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-control` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-alpha` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-beta` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge1/pcie-sdreader` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apcie0/mapper-apcie0-control` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-alpha` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-beta` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie1/mapper-apcie1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie1/mapper-apcie1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-phy-cpu0/iop-aciophy0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu1/iop-aciophy1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu2/iop-aciophy2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu3/iop-aciophy3-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/multi-touch` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/kiwi` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/keyboard` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/stm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/actuator` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/tp-accel` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `mtp/iop-mtp-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-mtp/mapper-mtp` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `apciec0/pcic0-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec0/mapper-apciec0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu0/iop-acio0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec1/pcic1-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec1/mapper-apciec1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu1/iop-acio1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec2/pcic2-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec2/mapper-apciec2-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu2/iop-acio2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/amcc-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/dcs-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/pmgr-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afxni-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins0-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins1-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins2-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins3-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins4-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins5-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins6-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins7-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins8-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins9-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins10-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins11-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins12-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins13-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins14-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins15-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns0-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns1-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns2-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns3-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns4-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns5-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns6-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns7-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns8-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns9-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns10-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/sep-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/cllt-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/piogw-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/sram-parity-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/axi2af-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `auss-cpu0/auss-cpu0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/aop-audio` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/aop-voicetrigger` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/dcp-control` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/als` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/spherecontrol` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/accel` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/gyro` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-aop/mapper-aop` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-exclave-aop` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-aop2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-leap-ns` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-base-ns` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-leap-s` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-base-s` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-scm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `aop2/iop-aop2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `pmgr/soc-tuner` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/clpc` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/ppm` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/pmgrtools` | Power/firmware interface; provider topology and handoff pending. | +| `sio/iop-sio-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `sio/iop-sio-nub/sio-dma` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-sio/mapper-sio` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-sio/mapper-aes` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pmp0/iop-pmp0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-pmp0/mapper-pmp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-pmp0/mapper-pmp0-ptd-fwd` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pmp1/iop-pmp1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-pmp1/mapper-pmp1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-pmp1/mapper-pmp1-ptd-fwd` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `sep/iop-sep-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-sep/mapper-sep` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-sep/mapper-sep-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `ans/iop-ans-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `ans/ans-pcie` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-pmu` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-area51` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `dart-rsm/mapper-rsm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `qspi/spinor` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `qspi/spinor/firmware` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `qspi/spinor/anvram` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `qspi/spinor/syscfg` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-usb0/mapper-usb0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb1/mapper-usb1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb2/mapper-usb2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-auss0/mapper-auss0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `nub-spmi0/spmi-abbeyL1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi0/spmi-mosquitoM0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi0/btm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi2/spmi-abbeyF1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi3/spmi-abbeyF2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm5` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop-spmi0/stockholm-spmi` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop-spmi0/stockholm-spmi/stockholm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx0-aux/dptx0-aux-core` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx0-aux/dptx0-aux-ufp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx1-aux/dptx1-aux-core` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx1-aux/dptx1-aux-ufp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-disp0/mapper-disp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-scl` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-sca` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcp/iop-dcp-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcp/mapper-dcp` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcp/mapper-dcp-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0-isoc/mapper-disp0-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext0/iop-dcpext0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext0/mapper-dcpext0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext0/mapper-dcpext0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0/mapper-dispext0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0/mapper-dispext0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0-isoc/mapper-dispext0-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext1/iop-dcpext1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext1/mapper-dcpext1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext1/mapper-dcpext1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1/mapper-dispext1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1/mapper-dispext1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1-isoc/mapper-dispext1-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext2/iop-dcpext2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext2/mapper-dcpext2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext2/mapper-dcpext2-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2/mapper-dispext2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2/mapper-dispext2-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2-isoc/mapper-dispext2-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext3/iop-dcpext3-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext3/mapper-dcpext3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext3/mapper-dcpext3-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3/mapper-dispext3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3/mapper-dispext3-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3-isoc/mapper-dispext3-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler/mapper-scaler` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler/mapper-scaler-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler0/mapper-scaler0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler0/mapper-scaler-piodma0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler1/mapper-scaler1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler1/mapper-scaler-piodma1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ave0/mapper-ave0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ave1/mapper-ave1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apr0/mapper-apr0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apr1/mapper-apr1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-jpeg0/mapper-jpeg0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-jpeg0/mapper-jpeg1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-mpm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0-adsbuf` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `gfx-asc/iop-gfx-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `gfx1-asc/iop-gfx1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-hp-mic` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-hp-mic/audio-hp-mic` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-input` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-input/audio-codec-input` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-output` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-output/audio-codec-output` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-leap-internal-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-leap-internal-loopback/audio-leap-internal-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-secure-leap-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-secure-leap-loopback/audio-secure-leap-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-mca-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-mca-loopback/audio-mca-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker/audio-speaker` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker-tap` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker-tap/audio-speaker-tap` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-io-buffer-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/siri-listening-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-injection-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-injection-device/lp-mic-injection-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `admac-base-ns/base-ns-adma-tx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-5` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-tx-4` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-rx-4` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-tx-5` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-s/leap-s-adma-rx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-s/leap-s-adma-rx-5` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `pwm1/bklb-backlight` | Attached device or firmware service; endpoint binding and board wiring audit pending. | diff --git a/docs/devicetree/DT-GAPS-k116s.md b/docs/devicetree/DT-GAPS-k116s.md index 18c373b54e696..8edd2fd2eeecc 100644 --- a/docs/devicetree/DT-GAPS-k116s.md +++ b/docs/devicetree/DT-GAPS-k116s.md @@ -132,8 +132,8 @@ release addresses must be supplied by the boot loader. | i2c4 | disabled resource description | `&hw_i2c4`; power/clock gate needs a verified provider | | i2c6 | disabled resource description | `&hw_i2c6`; power/clock gate needs a verified provider | | i2c8 | disabled resource description | `&hw_i2c8`; power/clock gate needs a verified provider | -| spi2 | disabled resource description | `&hw_spi2`; power/clock gate needs a verified provider | -| spi4 | disabled resource description | `&hw_spi4`; power/clock gate needs a verified provider | +| spi2 | disabled resource description | `&hw_spi2`; power/clock gate needs a verified provider; clock provider not yet translated | +| spi4 | disabled resource description | `&hw_spi4`; power/clock gate needs a verified provider; clock provider not yet translated | | nub-spmi-a1 | disabled resource description | `&hw_nub_spmi_a1`; mixed/non-AIC interrupt routing needs decoding | | dart-isp0 | disabled resource description | `&hw_dart_isp0`; power/clock gate needs a verified provider | | apcie0-piodma | disabled resource description | `&hw_apcie0_piodma` | @@ -180,11 +180,11 @@ release addresses must be supplied by the boot loader. | aop-exclave-mailbox | disabled resource description | `&hw_aop_exclave_mailbox` | | aop2 | disabled resource description | `&hw_aop2` | | event-log-handler | disabled resource description | `&hw_event_log_handler` | -| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider | +| sio | disabled resource description | `&hw_sio`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-sio | disabled resource description | `&hw_dart_sio`; power/clock gate needs a verified provider | | pmp0 | disabled resource description | `&hw_pmp0`; power/clock gate needs a verified provider | | dart-pmp0 | disabled resource description | `&hw_dart_pmp0` | -| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider | +| sep | disabled resource description | `&hw_sep`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-sep | disabled resource description | `&hw_dart_sep` | | aon-ptd | disabled resource description | `&hw_aon_ptd` | | rsm | disabled resource description | `&hw_rsm`; power/clock gate needs a verified provider | @@ -198,7 +198,7 @@ release addresses must be supplied by the boot loader. | aop-spmi0 | disabled resource description | `&hw_aop_spmi0`; mixed/non-AIC interrupt routing needs decoding | | dptx0-aux | disabled resource description | `&hw_dptx0_aux`; power/clock gate needs a verified provider | | dptx1-aux | disabled resource description | `&hw_dptx1_aux`; power/clock gate needs a verified provider | -| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider | +| disp0 | disabled resource description | `&hw_disp0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-disp0 | disabled resource description | `&hw_dart_disp0` | | dcp0-expert | disabled resource description | `&hw_dcp0_expert` | | dcp | disabled resource description | `&hw_dcp`; power/clock gate needs a verified provider | @@ -235,23 +235,23 @@ release addresses must be supplied by the boot loader. | admac-dispext3 | disabled resource description | `&hw_admac_dispext3` | | admac-dispext3-ced-ssw | disabled resource description | `&hw_admac_dispext3_ced_ssw` | | dart-scaler | disabled resource description | `&hw_dart_scaler`; power/clock gate needs a verified provider | -| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider | +| scaler0 | disabled resource description | `&hw_scaler0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-scaler0 | disabled resource description | `&hw_dart_scaler0`; power/clock gate needs a verified provider | -| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider | +| scaler1 | disabled resource description | `&hw_scaler1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-scaler1 | disabled resource description | `&hw_dart_scaler1`; power/clock gate needs a verified provider | -| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider | +| ave0 | disabled resource description | `&hw_ave0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ave0 | disabled resource description | `&hw_dart_ave0`; power/clock gate needs a verified provider | -| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider | +| ave1 | disabled resource description | `&hw_ave1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ave1 | disabled resource description | `&hw_dart_ave1`; power/clock gate needs a verified provider | | apr0 | disabled resource description | `&hw_apr0`; power/clock gate needs a verified provider | | dart-apr0 | disabled resource description | `&hw_dart_apr0`; power/clock gate needs a verified provider | | dart-apr1 | disabled resource description | `&hw_dart_apr1`; power/clock gate needs a verified provider | -| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider | -| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider | +| jpeg0 | disabled resource description | `&hw_jpeg0`; power/clock gate needs a verified provider; clock provider not yet translated | +| jpeg1 | disabled resource description | `&hw_jpeg1`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-jpeg0 | disabled resource description | `&hw_dart_jpeg0`; power/clock gate needs a verified provider | -| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider | +| ane0 | disabled resource description | `&hw_ane0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-ane0 | disabled resource description | `&hw_dart_ane0`; power/clock gate needs a verified provider | -| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider | +| avd0 | disabled resource description | `&hw_avd0`; power/clock gate needs a verified provider; clock provider not yet translated | | dart-avd0 | disabled resource description | `&hw_dart_avd0`; power/clock gate needs a verified provider | | sgx | disabled resource description | `&hw_sgx`; power/clock gate needs a verified provider | | gfx-asc | disabled resource description | `&hw_gfx_asc`; DMA mapper requires an IP-specific split, power/clock gate needs a verified provider | @@ -263,3 +263,356 @@ release addresses must be supplied by the boot loader. | admac-sllb-ec-proxy | disabled resource description | `&hw_admac_sllb_ec_proxy` | | dbgCPU | disabled resource description | `&hw_dbgCPU` | | apple-processor-trace | disabled resource description | `&hw_apple_processor_trace` | + +## Child devices and service interfaces + +These entries require an endpoint/transport audit in addition to the parent +controller resources above. Mapper records describe stream IDs rather than +independently probed devices. Conditional template records and their tuning +containers are not separate hardware devices; select the silicon variant +using a resolved live tree before changing resources. No tuning properties +from those records are reproduced here. + +| Hardware path below the SoC bus | Classification and remaining audit | +| --- | --- | +| `pwm2/mesa-backlight` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `i2c0/sync-hub-config` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c0/sync-hub-prog` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker-left-woofer-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c1/audio-speaker-left-tweeter` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c2/audio-codec-output` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c3/audio-speaker-right-woofer-1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c3/audio-speaker-right-woofer-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c3/audio-speaker-right-tweeter` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `iop-voicetrigger-controller/audio-vt-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `i2c4/sd-card` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c6/uatcrt2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `i2c8/pcon0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi2/mesa` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/ixora` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/ixora/lcd-pmicwp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-pmic` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-pmic1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-pmic2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-pls` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-sswp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-ss` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/tcon-registers` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/ixora/lcd-eeprom` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `spi4/display-temp-sens1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/display-temp-sens2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/display-temp-sens3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `spi4/displayNAND` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `nub-spmi-a1/hpm2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-isp0/mapper-isp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-mpm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-epipe0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-epipe1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-piodma0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-isp0/mapper-isp-piodma1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pwm0/kbd-backlight` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-control` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-alpha` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge0/centauri-beta` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apcie0/pci-bridge1/pcie-sdreader` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apcie0/mapper-apcie0-control` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-alpha` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-beta` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie0/mapper-apcie0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie1/mapper-apcie1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apcie1/mapper-apcie1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-phy-cpu0/iop-aciophy0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu1/iop-aciophy1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu2/iop-aciophy2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `acio-phy-cpu3/iop-aciophy3-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/multi-touch` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/kiwi` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/keyboard` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/stm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/actuator` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dockchannel-mtp/mtp-transport/tp-accel` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `mtp/iop-mtp-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-mtp/mapper-mtp` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `apciec0/pcic0-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec0/mapper-apciec0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio0/mapper-acio0-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu0/iop-acio0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec1/pcic1-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec1/mapper-apciec1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio1/mapper-acio1-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu1/iop-acio1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `apciec2/pcic2-bridge` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-apciec2/mapper-apciec2-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-tx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-8` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-9` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-10` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-acio2/mapper-acio2-rx-11` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `acio-cpu2/iop-acio2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/amcc-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/dcs-error-handler` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `error-handler/pmgr-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afxni-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins0-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins1-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins2-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins3-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins4-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins5-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins6-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins7-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins8-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins9-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins10-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins11-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins12-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins13-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins14-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afins15-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns0-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns1-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns2-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns3-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns4-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns5-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns6-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns7-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns8-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns9-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/afcns10-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/sep-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/cllt-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/piogw-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/sram-parity-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `error-handler/axi2af-error-handler` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `auss-cpu0/auss-cpu0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/aop-audio` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/aop-voicetrigger` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/dcp-control` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/als` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/spherecontrol` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/accel` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop/iop-aop-nub/gyro` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-aop/mapper-aop` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-exclave-aop` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-aop2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-leap-ns` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-base-ns` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-leap-s` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-admac-base-s` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-aop/mapper-scm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `aop2/iop-aop2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `pmgr/soc-tuner` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/clpc` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/ppm` | Power/firmware interface; provider topology and handoff pending. | +| `pmgr/pmgrtools` | Power/firmware interface; provider topology and handoff pending. | +| `sio/iop-sio-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `sio/iop-sio-nub/sio-dma` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-sio/mapper-sio` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-sio/mapper-aes` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pmp0/iop-pmp0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-pmp0/mapper-pmp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-pmp0/mapper-pmp0-ptd-fwd` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `pmp1/iop-pmp1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-pmp1/mapper-pmp1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-pmp1/mapper-pmp1-ptd-fwd` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `sep/iop-sep-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-sep/mapper-sep` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-sep/mapper-sep-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `ans/iop-ans-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `ans/ans-pcie` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-pmu` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util-2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-charger-util` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `smc/iop-smc-nub/smc-area51` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `dart-rsm/mapper-rsm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `qspi/spinor` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `qspi/spinor/firmware` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `qspi/spinor/anvram` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `qspi/spinor/syscfg` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-usb0/mapper-usb0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb1/mapper-usb1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-usb2/mapper-usb2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-auss0/mapper-auss0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `nub-spmi0/spmi-abbeyL1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi0/spmi-mosquitoM0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi0/btm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi2/spmi-abbeyF1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi3/spmi-abbeyF2` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `nub-spmi-a0/hpm5` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop-spmi0/stockholm-spmi` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `aop-spmi0/stockholm-spmi/stockholm` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx0-aux/dptx0-aux-core` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx0-aux/dptx0-aux-ufp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx1-aux/dptx1-aux-core` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dptx1-aux/dptx1-aux-ufp` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-disp0/mapper-disp0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-scl` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0/mapper-disp0-sca` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcp/iop-dcp-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcp/mapper-dcp` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcp/mapper-dcp-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-disp0-isoc/mapper-disp0-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext0/iop-dcpext0-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext0/mapper-dcpext0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext0/mapper-dcpext0-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0/mapper-dispext0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0/mapper-dispext0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext0-isoc/mapper-dispext0-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext1/iop-dcpext1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext1/mapper-dcpext1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext1/mapper-dcpext1-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1/mapper-dispext1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1/mapper-dispext1-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext1-isoc/mapper-dispext1-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext2/iop-dcpext2-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext2/mapper-dcpext2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext2/mapper-dcpext2-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2/mapper-dispext2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2/mapper-dispext2-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext2-isoc/mapper-dispext2-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dcpext3/iop-dcpext3-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `dart-dcpext3/mapper-dcpext3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dcpext3/mapper-dcpext3-exclave` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3/mapper-dispext3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3/mapper-dispext3-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-dispext3-isoc/mapper-dispext3-dpa` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler/mapper-scaler` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler/mapper-scaler-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler0/mapper-scaler0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler0/mapper-scaler-piodma0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler1/mapper-scaler1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-scaler1/mapper-scaler-piodma1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ave0/mapper-ave0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ave1/mapper-ave1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apr0/mapper-apr0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-apr1/mapper-apr1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-jpeg0/mapper-jpeg0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-jpeg0/mapper-jpeg1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso1` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso2` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso3` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso4` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso5` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso6` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-iso7` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-ane0/mapper-ane0-mpm` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0-piodma` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `dart-avd0/mapper-avd0-adsbuf` | DMA stream metadata; check the master IOMMU reference and stream ownership. | +| `gfx-asc/iop-gfx-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `gfx1-asc/iop-gfx1-nub` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-hp-mic` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-hp-mic/audio-hp-mic` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-input` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-input/audio-codec-input` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-output` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-codec-output/audio-codec-output` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-leap-internal-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-leap-internal-loopback/audio-leap-internal-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-secure-leap-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-secure-leap-loopback/audio-secure-leap-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-mca-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-mca-loopback/audio-mca-loopback` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker/audio-speaker` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker-tap` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/audio-speaker-tap/audio-speaker-tap` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-io-buffer-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/siri-listening-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-injection-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `iop-audio-controller/lp-mic-injection-device/lp-mic-injection-device` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `admac-base-ns/base-ns-adma-tx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-1` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-2` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-rx-3` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-base-ns/base-ns-adma-tx-5` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-tx-4` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-rx-4` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-ns/leap-ns-adma-tx-5` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-s/leap-s-adma-rx-0` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `admac-leap-s/leap-s-adma-rx-5` | Subdevice register interface; binding, parent translation and ownership audit pending. | +| `pwm1/bklb-backlight` | Attached device or firmware service; endpoint binding and board wiring audit pending. | From 312f2084f78c7b5e8c1d76135623bcacf0ffc296 Mon Sep 17 00:00:00 2001 From: Ryan Murray <81541646+RyanTheTide@users.noreply.github.com> Date: Sat, 7 Nov 2026 22:53:53 +1100 Subject: [PATCH 3/4] arm64: dts: apple: describe T6050 board resources Add conservative board scaffolding, disabled peripheral resource descriptions and per-board coverage ledgers. Unresolved providers, transport children and handoff requirements remain explicit review gaps. Signed-off-by: Ryan Murray <81541646+RyanTheTide@users.noreply.github.com> Assisted-by: LLM --- .../devicetree/bindings/i2c/apple,i2c.yaml | 1 + .../soc/apple/apple,t6050-i2c-controller.yaml | 52 ------------- .../dts/apple/t6050-j714c-audio-topology.dtsi | 73 +++++++++++++++++++ .../dts/apple/t6050-j714c-peripherals.dtsi | 24 ++++-- arch/arm64/boot/dts/apple/t6050-j714c.dts | 2 + .../dts/apple/t6050-j714s-audio-topology.dtsi | 73 +++++++++++++++++++ .../dts/apple/t6050-j714s-peripherals.dtsi | 24 ++++-- arch/arm64/boot/dts/apple/t6050-j714s.dts | 2 + .../dts/apple/t6050-j716c-audio-topology.dtsi | 73 +++++++++++++++++++ .../dts/apple/t6050-j716c-peripherals.dtsi | 24 ++++-- arch/arm64/boot/dts/apple/t6050-j716c.dts | 2 + .../dts/apple/t6050-j716s-audio-topology.dtsi | 73 +++++++++++++++++++ .../dts/apple/t6050-j716s-peripherals.dtsi | 24 ++++-- arch/arm64/boot/dts/apple/t6050-j716s.dts | 2 + .../dts/apple/t6050-j775c-audio-topology.dtsi | 28 +++++++ .../dts/apple/t6050-j775c-peripherals.dtsi | 12 ++- arch/arm64/boot/dts/apple/t6050-j775c.dts | 2 + .../dts/apple/t6050-j775d-audio-topology.dtsi | 28 +++++++ .../dts/apple/t6050-j775d-peripherals.dtsi | 18 +++-- arch/arm64/boot/dts/apple/t6050-j775d.dts | 2 + .../dts/apple/t6050-j873s-audio-topology.dtsi | 28 +++++++ .../dts/apple/t6050-j873s-peripherals.dtsi | 6 +- arch/arm64/boot/dts/apple/t6050-j873s.dts | 2 + .../dts/apple/t6050-k114c-audio-topology.dtsi | 73 +++++++++++++++++++ .../dts/apple/t6050-k114c-peripherals.dtsi | 12 ++- arch/arm64/boot/dts/apple/t6050-k114c.dts | 2 + .../dts/apple/t6050-k114s-audio-topology.dtsi | 73 +++++++++++++++++++ .../dts/apple/t6050-k114s-peripherals.dtsi | 12 ++- arch/arm64/boot/dts/apple/t6050-k114s.dts | 2 + .../dts/apple/t6050-k116c-audio-topology.dtsi | 73 +++++++++++++++++++ .../dts/apple/t6050-k116c-peripherals.dtsi | 12 ++- arch/arm64/boot/dts/apple/t6050-k116c.dts | 2 + .../dts/apple/t6050-k116s-audio-topology.dtsi | 73 +++++++++++++++++++ .../dts/apple/t6050-k116s-peripherals.dtsi | 12 ++- arch/arm64/boot/dts/apple/t6050-k116s.dts | 2 + .../boot/dts/apple/t6050-peripherals.dtsi | 18 +++-- docs/devicetree/DT-GAPS-j714c.md | 2 + docs/devicetree/DT-GAPS-j714s.md | 2 + docs/devicetree/DT-GAPS-j716c.md | 2 + docs/devicetree/DT-GAPS-j716s.md | 2 + docs/devicetree/DT-GAPS-j775c.md | 2 + docs/devicetree/DT-GAPS-j775d.md | 2 + docs/devicetree/DT-GAPS-j873s.md | 6 +- docs/devicetree/DT-GAPS-k114c.md | 2 + docs/devicetree/DT-GAPS-k114s.md | 2 + docs/devicetree/DT-GAPS-k116c.md | 2 + docs/devicetree/DT-GAPS-k116s.md | 2 + 47 files changed, 847 insertions(+), 120 deletions(-) delete mode 100644 Documentation/devicetree/bindings/soc/apple/apple,t6050-i2c-controller.yaml create mode 100644 arch/arm64/boot/dts/apple/t6050-j714c-audio-topology.dtsi create mode 100644 arch/arm64/boot/dts/apple/t6050-j714s-audio-topology.dtsi create mode 100644 arch/arm64/boot/dts/apple/t6050-j716c-audio-topology.dtsi create mode 100644 arch/arm64/boot/dts/apple/t6050-j716s-audio-topology.dtsi create mode 100644 arch/arm64/boot/dts/apple/t6050-j775c-audio-topology.dtsi create mode 100644 arch/arm64/boot/dts/apple/t6050-j775d-audio-topology.dtsi create mode 100644 arch/arm64/boot/dts/apple/t6050-j873s-audio-topology.dtsi create mode 100644 arch/arm64/boot/dts/apple/t6050-k114c-audio-topology.dtsi create mode 100644 arch/arm64/boot/dts/apple/t6050-k114s-audio-topology.dtsi create mode 100644 arch/arm64/boot/dts/apple/t6050-k116c-audio-topology.dtsi create mode 100644 arch/arm64/boot/dts/apple/t6050-k116s-audio-topology.dtsi diff --git a/Documentation/devicetree/bindings/i2c/apple,i2c.yaml b/Documentation/devicetree/bindings/i2c/apple,i2c.yaml index 5c827af153cb5..c95596690e574 100644 --- a/Documentation/devicetree/bindings/i2c/apple,i2c.yaml +++ b/Documentation/devicetree/bindings/i2c/apple,i2c.yaml @@ -30,6 +30,7 @@ properties: - apple,t8122-i2c - apple,t8132-i2c - apple,t8140-i2c + - apple,t6050-i2c - const: apple,t8103-i2c - items: - enum: diff --git a/Documentation/devicetree/bindings/soc/apple/apple,t6050-i2c-controller.yaml b/Documentation/devicetree/bindings/soc/apple/apple,t6050-i2c-controller.yaml deleted file mode 100644 index cae50231e5a2a..0000000000000 --- a/Documentation/devicetree/bindings/soc/apple/apple,t6050-i2c-controller.yaml +++ /dev/null @@ -1,52 +0,0 @@ -# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) -%YAML 1.2 ---- -$id: http://devicetree.org/schemas/soc/apple/apple,t6050-i2c-controller.yaml# -$schema: http://devicetree.org/meta-schemas/core.yaml# - -title: Apple T6050 i2c controller - -maintainers: - - Ryan Murray - -description: | - I2C controller on T6050. This describes the complete register complex, - including auxiliary control and status apertures shared with firmware. - It does not imply compatibility with an earlier generation's driver. - The node remains disabled until ownership of the register windows and - the firmware handoff have been established. Calibration, firmware and - programming sequences are supplied separately by the boot environment. - -select: - properties: - compatible: - contains: - const: apple,t6050-i2c-controller - required: - - compatible - -properties: - compatible: - items: - - const: apple,t6050-i2c-controller - - const: apple,i2c-controller - - reg: - description: Controller register apertures, in hardware interface order. - minItems: 1 - maxItems: 1 - - interrupts: - description: Interrupt lines wired to the system interrupt controller. - minItems: 1 - maxItems: 1 - - clocks: - description: The 24 MHz reference clock. - maxItems: 1 - -required: - - compatible - - reg - -additionalProperties: false diff --git a/arch/arm64/boot/dts/apple/t6050-j714c-audio-topology.dtsi b/arch/arm64/boot/dts/apple/t6050-j714c-audio-topology.dtsi new file mode 100644 index 0000000000000..3d71f5dcb667a --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-j714c-audio-topology.dtsi @@ -0,0 +1,73 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* Codec identities only; no amplifier programming or acoustic configuration. */ + +&i2c1 { + #address-cells = <1>; + #size-cells = <0>; + + hw_audio_speaker: codec@38 { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x38>; + #sound-dai-cells = <0>; + sound-name-prefix = "Speaker 0"; + status = "disabled"; + }; + + hw_audio_speaker_left_woofer_2: codec@39 { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x39>; + #sound-dai-cells = <0>; + sound-name-prefix = "Left Woofer 2"; + status = "disabled"; + }; + + hw_audio_speaker_left_tweeter: codec@3a { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3a>; + #sound-dai-cells = <0>; + sound-name-prefix = "Left Tweeter"; + status = "disabled"; + }; +}; + +&i2c2 { + #address-cells = <1>; + #size-cells = <0>; + + hw_jack_codec: codec@4b { + compatible = "cirrus,cs42l84"; + reg = <0x4b>; + #sound-dai-cells = <0>; + sound-name-prefix = "Jack"; + status = "disabled"; + }; +}; + +&hw_i2c3 { + #address-cells = <1>; + #size-cells = <0>; + + hw_audio_speaker_right_woofer_1: codec@3b { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3b>; + #sound-dai-cells = <0>; + sound-name-prefix = "Right Woofer 1"; + status = "disabled"; + }; + + hw_audio_speaker_right_woofer_2: codec@3c { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3c>; + #sound-dai-cells = <0>; + sound-name-prefix = "Right Woofer 2"; + status = "disabled"; + }; + + hw_audio_speaker_right_tweeter: codec@3d { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3d>; + #sound-dai-cells = <0>; + sound-name-prefix = "Right Tweeter"; + status = "disabled"; + }; +}; diff --git a/arch/arm64/boot/dts/apple/t6050-j714c-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j714c-peripherals.dtsi index 9417cef58074c..ba306591ba145 100644 --- a/arch/arm64/boot/dts/apple/t6050-j714c-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-j714c-peripherals.dtsi @@ -20,36 +20,44 @@ status = "disabled"; }; - hw_i2c5: i2c-controller@505024000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c5: i2c@505024000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x5024000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; - hw_i2c7: i2c-controller@50502c000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c7: i2c@50502c000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x502c000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; - hw_i2c3: i2c-controller@50501c000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c3: i2c@50501c000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x501c000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; - hw_i2c4: i2c-controller@505020000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c4: i2c@505020000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x5020000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; hw_spi2: spi-controller@505108000 { diff --git a/arch/arm64/boot/dts/apple/t6050-j714c.dts b/arch/arm64/boot/dts/apple/t6050-j714c.dts index 91d8e9204ef0e..c122a168ba8d8 100644 --- a/arch/arm64/boot/dts/apple/t6050-j714c.dts +++ b/arch/arm64/boot/dts/apple/t6050-j714c.dts @@ -223,3 +223,5 @@ }; #include "t6050-j714c-peripherals.dtsi" + +#include "t6050-j714c-audio-topology.dtsi" diff --git a/arch/arm64/boot/dts/apple/t6050-j714s-audio-topology.dtsi b/arch/arm64/boot/dts/apple/t6050-j714s-audio-topology.dtsi new file mode 100644 index 0000000000000..3d71f5dcb667a --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-j714s-audio-topology.dtsi @@ -0,0 +1,73 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* Codec identities only; no amplifier programming or acoustic configuration. */ + +&i2c1 { + #address-cells = <1>; + #size-cells = <0>; + + hw_audio_speaker: codec@38 { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x38>; + #sound-dai-cells = <0>; + sound-name-prefix = "Speaker 0"; + status = "disabled"; + }; + + hw_audio_speaker_left_woofer_2: codec@39 { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x39>; + #sound-dai-cells = <0>; + sound-name-prefix = "Left Woofer 2"; + status = "disabled"; + }; + + hw_audio_speaker_left_tweeter: codec@3a { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3a>; + #sound-dai-cells = <0>; + sound-name-prefix = "Left Tweeter"; + status = "disabled"; + }; +}; + +&i2c2 { + #address-cells = <1>; + #size-cells = <0>; + + hw_jack_codec: codec@4b { + compatible = "cirrus,cs42l84"; + reg = <0x4b>; + #sound-dai-cells = <0>; + sound-name-prefix = "Jack"; + status = "disabled"; + }; +}; + +&hw_i2c3 { + #address-cells = <1>; + #size-cells = <0>; + + hw_audio_speaker_right_woofer_1: codec@3b { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3b>; + #sound-dai-cells = <0>; + sound-name-prefix = "Right Woofer 1"; + status = "disabled"; + }; + + hw_audio_speaker_right_woofer_2: codec@3c { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3c>; + #sound-dai-cells = <0>; + sound-name-prefix = "Right Woofer 2"; + status = "disabled"; + }; + + hw_audio_speaker_right_tweeter: codec@3d { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3d>; + #sound-dai-cells = <0>; + sound-name-prefix = "Right Tweeter"; + status = "disabled"; + }; +}; diff --git a/arch/arm64/boot/dts/apple/t6050-j714s-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j714s-peripherals.dtsi index 0eb162684b0c4..2e9db8c38646c 100644 --- a/arch/arm64/boot/dts/apple/t6050-j714s-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-j714s-peripherals.dtsi @@ -4,36 +4,44 @@ /* Register and interrupt resources; ownership-sensitive blocks stay disabled. */ &die0 { - hw_i2c5: i2c-controller@505024000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c5: i2c@505024000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x5024000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; - hw_i2c7: i2c-controller@50502c000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c7: i2c@50502c000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x502c000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; - hw_i2c3: i2c-controller@50501c000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c3: i2c@50501c000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x501c000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; - hw_i2c4: i2c-controller@505020000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c4: i2c@505020000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x5020000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; hw_spi2: spi-controller@505108000 { diff --git a/arch/arm64/boot/dts/apple/t6050-j714s.dts b/arch/arm64/boot/dts/apple/t6050-j714s.dts index d37e10f1133c6..cba3b0ceb889c 100644 --- a/arch/arm64/boot/dts/apple/t6050-j714s.dts +++ b/arch/arm64/boot/dts/apple/t6050-j714s.dts @@ -61,3 +61,5 @@ &smc_mbox { status = "disabled"; }; + +#include "t6050-j714s-audio-topology.dtsi" diff --git a/arch/arm64/boot/dts/apple/t6050-j716c-audio-topology.dtsi b/arch/arm64/boot/dts/apple/t6050-j716c-audio-topology.dtsi new file mode 100644 index 0000000000000..3d71f5dcb667a --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-j716c-audio-topology.dtsi @@ -0,0 +1,73 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* Codec identities only; no amplifier programming or acoustic configuration. */ + +&i2c1 { + #address-cells = <1>; + #size-cells = <0>; + + hw_audio_speaker: codec@38 { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x38>; + #sound-dai-cells = <0>; + sound-name-prefix = "Speaker 0"; + status = "disabled"; + }; + + hw_audio_speaker_left_woofer_2: codec@39 { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x39>; + #sound-dai-cells = <0>; + sound-name-prefix = "Left Woofer 2"; + status = "disabled"; + }; + + hw_audio_speaker_left_tweeter: codec@3a { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3a>; + #sound-dai-cells = <0>; + sound-name-prefix = "Left Tweeter"; + status = "disabled"; + }; +}; + +&i2c2 { + #address-cells = <1>; + #size-cells = <0>; + + hw_jack_codec: codec@4b { + compatible = "cirrus,cs42l84"; + reg = <0x4b>; + #sound-dai-cells = <0>; + sound-name-prefix = "Jack"; + status = "disabled"; + }; +}; + +&hw_i2c3 { + #address-cells = <1>; + #size-cells = <0>; + + hw_audio_speaker_right_woofer_1: codec@3b { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3b>; + #sound-dai-cells = <0>; + sound-name-prefix = "Right Woofer 1"; + status = "disabled"; + }; + + hw_audio_speaker_right_woofer_2: codec@3c { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3c>; + #sound-dai-cells = <0>; + sound-name-prefix = "Right Woofer 2"; + status = "disabled"; + }; + + hw_audio_speaker_right_tweeter: codec@3d { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3d>; + #sound-dai-cells = <0>; + sound-name-prefix = "Right Tweeter"; + status = "disabled"; + }; +}; diff --git a/arch/arm64/boot/dts/apple/t6050-j716c-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j716c-peripherals.dtsi index 9417cef58074c..ba306591ba145 100644 --- a/arch/arm64/boot/dts/apple/t6050-j716c-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-j716c-peripherals.dtsi @@ -20,36 +20,44 @@ status = "disabled"; }; - hw_i2c5: i2c-controller@505024000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c5: i2c@505024000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x5024000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; - hw_i2c7: i2c-controller@50502c000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c7: i2c@50502c000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x502c000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; - hw_i2c3: i2c-controller@50501c000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c3: i2c@50501c000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x501c000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; - hw_i2c4: i2c-controller@505020000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c4: i2c@505020000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x5020000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; hw_spi2: spi-controller@505108000 { diff --git a/arch/arm64/boot/dts/apple/t6050-j716c.dts b/arch/arm64/boot/dts/apple/t6050-j716c.dts index 1b956b6fffc20..b6cc295a9f614 100644 --- a/arch/arm64/boot/dts/apple/t6050-j716c.dts +++ b/arch/arm64/boot/dts/apple/t6050-j716c.dts @@ -223,3 +223,5 @@ }; #include "t6050-j716c-peripherals.dtsi" + +#include "t6050-j716c-audio-topology.dtsi" diff --git a/arch/arm64/boot/dts/apple/t6050-j716s-audio-topology.dtsi b/arch/arm64/boot/dts/apple/t6050-j716s-audio-topology.dtsi new file mode 100644 index 0000000000000..3d71f5dcb667a --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-j716s-audio-topology.dtsi @@ -0,0 +1,73 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* Codec identities only; no amplifier programming or acoustic configuration. */ + +&i2c1 { + #address-cells = <1>; + #size-cells = <0>; + + hw_audio_speaker: codec@38 { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x38>; + #sound-dai-cells = <0>; + sound-name-prefix = "Speaker 0"; + status = "disabled"; + }; + + hw_audio_speaker_left_woofer_2: codec@39 { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x39>; + #sound-dai-cells = <0>; + sound-name-prefix = "Left Woofer 2"; + status = "disabled"; + }; + + hw_audio_speaker_left_tweeter: codec@3a { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3a>; + #sound-dai-cells = <0>; + sound-name-prefix = "Left Tweeter"; + status = "disabled"; + }; +}; + +&i2c2 { + #address-cells = <1>; + #size-cells = <0>; + + hw_jack_codec: codec@4b { + compatible = "cirrus,cs42l84"; + reg = <0x4b>; + #sound-dai-cells = <0>; + sound-name-prefix = "Jack"; + status = "disabled"; + }; +}; + +&hw_i2c3 { + #address-cells = <1>; + #size-cells = <0>; + + hw_audio_speaker_right_woofer_1: codec@3b { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3b>; + #sound-dai-cells = <0>; + sound-name-prefix = "Right Woofer 1"; + status = "disabled"; + }; + + hw_audio_speaker_right_woofer_2: codec@3c { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3c>; + #sound-dai-cells = <0>; + sound-name-prefix = "Right Woofer 2"; + status = "disabled"; + }; + + hw_audio_speaker_right_tweeter: codec@3d { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3d>; + #sound-dai-cells = <0>; + sound-name-prefix = "Right Tweeter"; + status = "disabled"; + }; +}; diff --git a/arch/arm64/boot/dts/apple/t6050-j716s-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j716s-peripherals.dtsi index 0eb162684b0c4..2e9db8c38646c 100644 --- a/arch/arm64/boot/dts/apple/t6050-j716s-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-j716s-peripherals.dtsi @@ -4,36 +4,44 @@ /* Register and interrupt resources; ownership-sensitive blocks stay disabled. */ &die0 { - hw_i2c5: i2c-controller@505024000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c5: i2c@505024000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x5024000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; - hw_i2c7: i2c-controller@50502c000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c7: i2c@50502c000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x502c000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; - hw_i2c3: i2c-controller@50501c000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c3: i2c@50501c000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x501c000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; - hw_i2c4: i2c-controller@505020000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c4: i2c@505020000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x5020000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; hw_spi2: spi-controller@505108000 { diff --git a/arch/arm64/boot/dts/apple/t6050-j716s.dts b/arch/arm64/boot/dts/apple/t6050-j716s.dts index f8bb47f346a93..d3c1eb0588c48 100644 --- a/arch/arm64/boot/dts/apple/t6050-j716s.dts +++ b/arch/arm64/boot/dts/apple/t6050-j716s.dts @@ -61,3 +61,5 @@ &smc_mbox { status = "disabled"; }; + +#include "t6050-j716s-audio-topology.dtsi" diff --git a/arch/arm64/boot/dts/apple/t6050-j775c-audio-topology.dtsi b/arch/arm64/boot/dts/apple/t6050-j775c-audio-topology.dtsi new file mode 100644 index 0000000000000..42a5a4622f312 --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-j775c-audio-topology.dtsi @@ -0,0 +1,28 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* Codec identities only; no amplifier programming or acoustic configuration. */ + +&i2c1 { + #address-cells = <1>; + #size-cells = <0>; + + hw_audio_speaker: codec@38 { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x38>; + #sound-dai-cells = <0>; + sound-name-prefix = "Speaker 0"; + status = "disabled"; + }; +}; + +&i2c2 { + #address-cells = <1>; + #size-cells = <0>; + + hw_jack_codec: codec@4b { + compatible = "cirrus,cs42l84"; + reg = <0x4b>; + #sound-dai-cells = <0>; + sound-name-prefix = "Jack"; + status = "disabled"; + }; +}; diff --git a/arch/arm64/boot/dts/apple/t6050-j775c-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j775c-peripherals.dtsi index ecd7db27331ad..424bf64fe0b15 100644 --- a/arch/arm64/boot/dts/apple/t6050-j775c-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-j775c-peripherals.dtsi @@ -20,20 +20,24 @@ status = "disabled"; }; - hw_i2c4: i2c-controller@505020000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c4: i2c@505020000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x5020000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; - hw_i2c5: i2c-controller@505024000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c5: i2c@505024000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x5024000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; hw_dart_apcie1: dart-complex@411000000 { diff --git a/arch/arm64/boot/dts/apple/t6050-j775c.dts b/arch/arm64/boot/dts/apple/t6050-j775c.dts index 57c965935dd2c..b2ec8b8d2efa2 100644 --- a/arch/arm64/boot/dts/apple/t6050-j775c.dts +++ b/arch/arm64/boot/dts/apple/t6050-j775c.dts @@ -61,3 +61,5 @@ &smc_mbox { status = "disabled"; }; + +#include "t6050-j775c-audio-topology.dtsi" diff --git a/arch/arm64/boot/dts/apple/t6050-j775d-audio-topology.dtsi b/arch/arm64/boot/dts/apple/t6050-j775d-audio-topology.dtsi new file mode 100644 index 0000000000000..42a5a4622f312 --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-j775d-audio-topology.dtsi @@ -0,0 +1,28 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* Codec identities only; no amplifier programming or acoustic configuration. */ + +&i2c1 { + #address-cells = <1>; + #size-cells = <0>; + + hw_audio_speaker: codec@38 { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x38>; + #sound-dai-cells = <0>; + sound-name-prefix = "Speaker 0"; + status = "disabled"; + }; +}; + +&i2c2 { + #address-cells = <1>; + #size-cells = <0>; + + hw_jack_codec: codec@4b { + compatible = "cirrus,cs42l84"; + reg = <0x4b>; + #sound-dai-cells = <0>; + sound-name-prefix = "Jack"; + status = "disabled"; + }; +}; diff --git a/arch/arm64/boot/dts/apple/t6050-j775d-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j775d-peripherals.dtsi index da62c95445c5c..679f10eba2d76 100644 --- a/arch/arm64/boot/dts/apple/t6050-j775d-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-j775d-peripherals.dtsi @@ -4,12 +4,14 @@ /* Register and interrupt resources; ownership-sensitive blocks stay disabled. */ &die0 { - hw_i2c7: i2c-controller@50502c000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c7: i2c@50502c000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x502c000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; hw_nub_spmi1: spmi-complex@28a054000 { @@ -28,20 +30,24 @@ status = "disabled"; }; - hw_i2c4: i2c-controller@505020000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c4: i2c@505020000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x5020000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; - hw_i2c5: i2c-controller@505024000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c5: i2c@505024000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x5024000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; hw_dart_apcie1: dart-complex@411000000 { diff --git a/arch/arm64/boot/dts/apple/t6050-j775d.dts b/arch/arm64/boot/dts/apple/t6050-j775d.dts index 5f0878afcc350..ba07b2dda1629 100644 --- a/arch/arm64/boot/dts/apple/t6050-j775d.dts +++ b/arch/arm64/boot/dts/apple/t6050-j775d.dts @@ -701,3 +701,5 @@ }; #include "t6050-j775d-peripherals.dtsi" + +#include "t6050-j775d-audio-topology.dtsi" diff --git a/arch/arm64/boot/dts/apple/t6050-j873s-audio-topology.dtsi b/arch/arm64/boot/dts/apple/t6050-j873s-audio-topology.dtsi new file mode 100644 index 0000000000000..42a5a4622f312 --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-j873s-audio-topology.dtsi @@ -0,0 +1,28 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* Codec identities only; no amplifier programming or acoustic configuration. */ + +&i2c1 { + #address-cells = <1>; + #size-cells = <0>; + + hw_audio_speaker: codec@38 { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x38>; + #sound-dai-cells = <0>; + sound-name-prefix = "Speaker 0"; + status = "disabled"; + }; +}; + +&i2c2 { + #address-cells = <1>; + #size-cells = <0>; + + hw_jack_codec: codec@4b { + compatible = "cirrus,cs42l84"; + reg = <0x4b>; + #sound-dai-cells = <0>; + sound-name-prefix = "Jack"; + status = "disabled"; + }; +}; diff --git a/arch/arm64/boot/dts/apple/t6050-j873s-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j873s-peripherals.dtsi index e1bda9a6f3fd4..522fd8f4b95f3 100644 --- a/arch/arm64/boot/dts/apple/t6050-j873s-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-j873s-peripherals.dtsi @@ -5,12 +5,14 @@ &die0 { - hw_i2c5: i2c-controller@505024000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c5: i2c@505024000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x5024000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; hw_apcie2_piodma: pcie-piodma@412030000 { diff --git a/arch/arm64/boot/dts/apple/t6050-j873s.dts b/arch/arm64/boot/dts/apple/t6050-j873s.dts index f5b5588fa39f2..88e3b43732f21 100644 --- a/arch/arm64/boot/dts/apple/t6050-j873s.dts +++ b/arch/arm64/boot/dts/apple/t6050-j873s.dts @@ -61,3 +61,5 @@ &smc_mbox { status = "disabled"; }; + +#include "t6050-j873s-audio-topology.dtsi" diff --git a/arch/arm64/boot/dts/apple/t6050-k114c-audio-topology.dtsi b/arch/arm64/boot/dts/apple/t6050-k114c-audio-topology.dtsi new file mode 100644 index 0000000000000..3d71f5dcb667a --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-k114c-audio-topology.dtsi @@ -0,0 +1,73 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* Codec identities only; no amplifier programming or acoustic configuration. */ + +&i2c1 { + #address-cells = <1>; + #size-cells = <0>; + + hw_audio_speaker: codec@38 { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x38>; + #sound-dai-cells = <0>; + sound-name-prefix = "Speaker 0"; + status = "disabled"; + }; + + hw_audio_speaker_left_woofer_2: codec@39 { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x39>; + #sound-dai-cells = <0>; + sound-name-prefix = "Left Woofer 2"; + status = "disabled"; + }; + + hw_audio_speaker_left_tweeter: codec@3a { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3a>; + #sound-dai-cells = <0>; + sound-name-prefix = "Left Tweeter"; + status = "disabled"; + }; +}; + +&i2c2 { + #address-cells = <1>; + #size-cells = <0>; + + hw_jack_codec: codec@4b { + compatible = "cirrus,cs42l84"; + reg = <0x4b>; + #sound-dai-cells = <0>; + sound-name-prefix = "Jack"; + status = "disabled"; + }; +}; + +&hw_i2c3 { + #address-cells = <1>; + #size-cells = <0>; + + hw_audio_speaker_right_woofer_1: codec@3b { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3b>; + #sound-dai-cells = <0>; + sound-name-prefix = "Right Woofer 1"; + status = "disabled"; + }; + + hw_audio_speaker_right_woofer_2: codec@3c { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3c>; + #sound-dai-cells = <0>; + sound-name-prefix = "Right Woofer 2"; + status = "disabled"; + }; + + hw_audio_speaker_right_tweeter: codec@3d { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3d>; + #sound-dai-cells = <0>; + sound-name-prefix = "Right Tweeter"; + status = "disabled"; + }; +}; diff --git a/arch/arm64/boot/dts/apple/t6050-k114c-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-k114c-peripherals.dtsi index 53fb92270161e..04b7c170ab401 100644 --- a/arch/arm64/boot/dts/apple/t6050-k114c-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-k114c-peripherals.dtsi @@ -20,20 +20,24 @@ status = "disabled"; }; - hw_i2c3: i2c-controller@50501c000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c3: i2c@50501c000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x501c000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; - hw_i2c4: i2c-controller@505020000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c4: i2c@505020000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x5020000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; hw_spi2: spi-controller@505108000 { diff --git a/arch/arm64/boot/dts/apple/t6050-k114c.dts b/arch/arm64/boot/dts/apple/t6050-k114c.dts index 96d241e9b04d2..955055c5220ba 100644 --- a/arch/arm64/boot/dts/apple/t6050-k114c.dts +++ b/arch/arm64/boot/dts/apple/t6050-k114c.dts @@ -21,3 +21,5 @@ }; #include "t6050-k114c-peripherals.dtsi" + +#include "t6050-k114c-audio-topology.dtsi" diff --git a/arch/arm64/boot/dts/apple/t6050-k114s-audio-topology.dtsi b/arch/arm64/boot/dts/apple/t6050-k114s-audio-topology.dtsi new file mode 100644 index 0000000000000..3d71f5dcb667a --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-k114s-audio-topology.dtsi @@ -0,0 +1,73 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* Codec identities only; no amplifier programming or acoustic configuration. */ + +&i2c1 { + #address-cells = <1>; + #size-cells = <0>; + + hw_audio_speaker: codec@38 { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x38>; + #sound-dai-cells = <0>; + sound-name-prefix = "Speaker 0"; + status = "disabled"; + }; + + hw_audio_speaker_left_woofer_2: codec@39 { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x39>; + #sound-dai-cells = <0>; + sound-name-prefix = "Left Woofer 2"; + status = "disabled"; + }; + + hw_audio_speaker_left_tweeter: codec@3a { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3a>; + #sound-dai-cells = <0>; + sound-name-prefix = "Left Tweeter"; + status = "disabled"; + }; +}; + +&i2c2 { + #address-cells = <1>; + #size-cells = <0>; + + hw_jack_codec: codec@4b { + compatible = "cirrus,cs42l84"; + reg = <0x4b>; + #sound-dai-cells = <0>; + sound-name-prefix = "Jack"; + status = "disabled"; + }; +}; + +&hw_i2c3 { + #address-cells = <1>; + #size-cells = <0>; + + hw_audio_speaker_right_woofer_1: codec@3b { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3b>; + #sound-dai-cells = <0>; + sound-name-prefix = "Right Woofer 1"; + status = "disabled"; + }; + + hw_audio_speaker_right_woofer_2: codec@3c { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3c>; + #sound-dai-cells = <0>; + sound-name-prefix = "Right Woofer 2"; + status = "disabled"; + }; + + hw_audio_speaker_right_tweeter: codec@3d { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3d>; + #sound-dai-cells = <0>; + sound-name-prefix = "Right Tweeter"; + status = "disabled"; + }; +}; diff --git a/arch/arm64/boot/dts/apple/t6050-k114s-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-k114s-peripherals.dtsi index e694c8d9796cd..1555e600a604a 100644 --- a/arch/arm64/boot/dts/apple/t6050-k114s-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-k114s-peripherals.dtsi @@ -5,20 +5,24 @@ &die0 { - hw_i2c3: i2c-controller@50501c000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c3: i2c@50501c000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x501c000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; - hw_i2c4: i2c-controller@505020000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c4: i2c@505020000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x5020000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; hw_spi2: spi-controller@505108000 { diff --git a/arch/arm64/boot/dts/apple/t6050-k114s.dts b/arch/arm64/boot/dts/apple/t6050-k114s.dts index 986ce6390a0bd..e9225b45a7208 100644 --- a/arch/arm64/boot/dts/apple/t6050-k114s.dts +++ b/arch/arm64/boot/dts/apple/t6050-k114s.dts @@ -21,3 +21,5 @@ }; #include "t6050-k114s-peripherals.dtsi" + +#include "t6050-k114s-audio-topology.dtsi" diff --git a/arch/arm64/boot/dts/apple/t6050-k116c-audio-topology.dtsi b/arch/arm64/boot/dts/apple/t6050-k116c-audio-topology.dtsi new file mode 100644 index 0000000000000..3d71f5dcb667a --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-k116c-audio-topology.dtsi @@ -0,0 +1,73 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* Codec identities only; no amplifier programming or acoustic configuration. */ + +&i2c1 { + #address-cells = <1>; + #size-cells = <0>; + + hw_audio_speaker: codec@38 { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x38>; + #sound-dai-cells = <0>; + sound-name-prefix = "Speaker 0"; + status = "disabled"; + }; + + hw_audio_speaker_left_woofer_2: codec@39 { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x39>; + #sound-dai-cells = <0>; + sound-name-prefix = "Left Woofer 2"; + status = "disabled"; + }; + + hw_audio_speaker_left_tweeter: codec@3a { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3a>; + #sound-dai-cells = <0>; + sound-name-prefix = "Left Tweeter"; + status = "disabled"; + }; +}; + +&i2c2 { + #address-cells = <1>; + #size-cells = <0>; + + hw_jack_codec: codec@4b { + compatible = "cirrus,cs42l84"; + reg = <0x4b>; + #sound-dai-cells = <0>; + sound-name-prefix = "Jack"; + status = "disabled"; + }; +}; + +&hw_i2c3 { + #address-cells = <1>; + #size-cells = <0>; + + hw_audio_speaker_right_woofer_1: codec@3b { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3b>; + #sound-dai-cells = <0>; + sound-name-prefix = "Right Woofer 1"; + status = "disabled"; + }; + + hw_audio_speaker_right_woofer_2: codec@3c { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3c>; + #sound-dai-cells = <0>; + sound-name-prefix = "Right Woofer 2"; + status = "disabled"; + }; + + hw_audio_speaker_right_tweeter: codec@3d { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3d>; + #sound-dai-cells = <0>; + sound-name-prefix = "Right Tweeter"; + status = "disabled"; + }; +}; diff --git a/arch/arm64/boot/dts/apple/t6050-k116c-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-k116c-peripherals.dtsi index 53fb92270161e..04b7c170ab401 100644 --- a/arch/arm64/boot/dts/apple/t6050-k116c-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-k116c-peripherals.dtsi @@ -20,20 +20,24 @@ status = "disabled"; }; - hw_i2c3: i2c-controller@50501c000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c3: i2c@50501c000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x501c000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; - hw_i2c4: i2c-controller@505020000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c4: i2c@505020000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x5020000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; hw_spi2: spi-controller@505108000 { diff --git a/arch/arm64/boot/dts/apple/t6050-k116c.dts b/arch/arm64/boot/dts/apple/t6050-k116c.dts index f34ae2b5829e9..d9d393d5eeef4 100644 --- a/arch/arm64/boot/dts/apple/t6050-k116c.dts +++ b/arch/arm64/boot/dts/apple/t6050-k116c.dts @@ -21,3 +21,5 @@ }; #include "t6050-k116c-peripherals.dtsi" + +#include "t6050-k116c-audio-topology.dtsi" diff --git a/arch/arm64/boot/dts/apple/t6050-k116s-audio-topology.dtsi b/arch/arm64/boot/dts/apple/t6050-k116s-audio-topology.dtsi new file mode 100644 index 0000000000000..3d71f5dcb667a --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6050-k116s-audio-topology.dtsi @@ -0,0 +1,73 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* Codec identities only; no amplifier programming or acoustic configuration. */ + +&i2c1 { + #address-cells = <1>; + #size-cells = <0>; + + hw_audio_speaker: codec@38 { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x38>; + #sound-dai-cells = <0>; + sound-name-prefix = "Speaker 0"; + status = "disabled"; + }; + + hw_audio_speaker_left_woofer_2: codec@39 { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x39>; + #sound-dai-cells = <0>; + sound-name-prefix = "Left Woofer 2"; + status = "disabled"; + }; + + hw_audio_speaker_left_tweeter: codec@3a { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3a>; + #sound-dai-cells = <0>; + sound-name-prefix = "Left Tweeter"; + status = "disabled"; + }; +}; + +&i2c2 { + #address-cells = <1>; + #size-cells = <0>; + + hw_jack_codec: codec@4b { + compatible = "cirrus,cs42l84"; + reg = <0x4b>; + #sound-dai-cells = <0>; + sound-name-prefix = "Jack"; + status = "disabled"; + }; +}; + +&hw_i2c3 { + #address-cells = <1>; + #size-cells = <0>; + + hw_audio_speaker_right_woofer_1: codec@3b { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3b>; + #sound-dai-cells = <0>; + sound-name-prefix = "Right Woofer 1"; + status = "disabled"; + }; + + hw_audio_speaker_right_woofer_2: codec@3c { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3c>; + #sound-dai-cells = <0>; + sound-name-prefix = "Right Woofer 2"; + status = "disabled"; + }; + + hw_audio_speaker_right_tweeter: codec@3d { + compatible = "ti,sn012776", "ti,tas2764"; + reg = <0x3d>; + #sound-dai-cells = <0>; + sound-name-prefix = "Right Tweeter"; + status = "disabled"; + }; +}; diff --git a/arch/arm64/boot/dts/apple/t6050-k116s-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-k116s-peripherals.dtsi index e694c8d9796cd..1555e600a604a 100644 --- a/arch/arm64/boot/dts/apple/t6050-k116s-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-k116s-peripherals.dtsi @@ -5,20 +5,24 @@ &die0 { - hw_i2c3: i2c-controller@50501c000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c3: i2c@50501c000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x501c000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; - hw_i2c4: i2c-controller@505020000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c4: i2c@505020000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x5020000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; hw_spi2: spi-controller@505108000 { diff --git a/arch/arm64/boot/dts/apple/t6050-k116s.dts b/arch/arm64/boot/dts/apple/t6050-k116s.dts index 7a85f5f719dd6..5f2b00c736b51 100644 --- a/arch/arm64/boot/dts/apple/t6050-k116s.dts +++ b/arch/arm64/boot/dts/apple/t6050-k116s.dts @@ -21,3 +21,5 @@ }; #include "t6050-k116s-peripherals.dtsi" + +#include "t6050-k116s-audio-topology.dtsi" diff --git a/arch/arm64/boot/dts/apple/t6050-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-peripherals.dtsi index 0cd4619661a1b..422a25aaf80ed 100644 --- a/arch/arm64/boot/dts/apple/t6050-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-peripherals.dtsi @@ -2,28 +2,34 @@ /* Shared disabled peripheral resources. */ &die0 { - hw_i2c0: i2c-controller@505010000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c0: i2c@505010000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x5010000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; - hw_i2c6: i2c-controller@505028000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c6: i2c@505028000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x5028000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; - hw_i2c8: i2c-controller@505030000 { - compatible = "apple,t6050-i2c-controller", "apple,i2c-controller"; + hw_i2c8: i2c@505030000 { + compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x5030000 0x0 0x4000>; interrupts = ; clocks = <&clkref>; status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; }; hw_apcie0_piodma: pcie-piodma@410030000 { diff --git a/docs/devicetree/DT-GAPS-j714c.md b/docs/devicetree/DT-GAPS-j714c.md index 5455d66cf054d..bf02542c5fdbb 100644 --- a/docs/devicetree/DT-GAPS-j714c.md +++ b/docs/devicetree/DT-GAPS-j714c.md @@ -19,6 +19,8 @@ No firmware, calibration or register programming values are included. - Complete the transport children and firmware-service bindings, pinmux, port graphs and board wiring. Listing a controller does not cover its attached peripherals. +- Audit the parent dependencies of new disabled PMGR gates before enabling + a gate or its consumer. - Resolve every provider/routing gap called out below. No guessed address, interrupt parent or power-domain relationship was substituted. - Validate on this board; no boot or peripheral test was performed. diff --git a/docs/devicetree/DT-GAPS-j714s.md b/docs/devicetree/DT-GAPS-j714s.md index 80ceaa9ffd7c4..4e1e75c758dba 100644 --- a/docs/devicetree/DT-GAPS-j714s.md +++ b/docs/devicetree/DT-GAPS-j714s.md @@ -19,6 +19,8 @@ No firmware, calibration or register programming values are included. - Complete the transport children and firmware-service bindings, pinmux, port graphs and board wiring. Listing a controller does not cover its attached peripherals. +- Audit the parent dependencies of new disabled PMGR gates before enabling + a gate or its consumer. - Resolve every provider/routing gap called out below. No guessed address, interrupt parent or power-domain relationship was substituted. - Validate on this board; no boot or peripheral test was performed. diff --git a/docs/devicetree/DT-GAPS-j716c.md b/docs/devicetree/DT-GAPS-j716c.md index 46e87cbf8bac9..b354082a44bcc 100644 --- a/docs/devicetree/DT-GAPS-j716c.md +++ b/docs/devicetree/DT-GAPS-j716c.md @@ -19,6 +19,8 @@ No firmware, calibration or register programming values are included. - Complete the transport children and firmware-service bindings, pinmux, port graphs and board wiring. Listing a controller does not cover its attached peripherals. +- Audit the parent dependencies of new disabled PMGR gates before enabling + a gate or its consumer. - Resolve every provider/routing gap called out below. No guessed address, interrupt parent or power-domain relationship was substituted. - Validate on this board; no boot or peripheral test was performed. diff --git a/docs/devicetree/DT-GAPS-j716s.md b/docs/devicetree/DT-GAPS-j716s.md index 86e2387add1b8..1879e0d1d5f3a 100644 --- a/docs/devicetree/DT-GAPS-j716s.md +++ b/docs/devicetree/DT-GAPS-j716s.md @@ -19,6 +19,8 @@ No firmware, calibration or register programming values are included. - Complete the transport children and firmware-service bindings, pinmux, port graphs and board wiring. Listing a controller does not cover its attached peripherals. +- Audit the parent dependencies of new disabled PMGR gates before enabling + a gate or its consumer. - Resolve every provider/routing gap called out below. No guessed address, interrupt parent or power-domain relationship was substituted. - Validate on this board; no boot or peripheral test was performed. diff --git a/docs/devicetree/DT-GAPS-j775c.md b/docs/devicetree/DT-GAPS-j775c.md index fe3420959a4e0..82b28a5eec202 100644 --- a/docs/devicetree/DT-GAPS-j775c.md +++ b/docs/devicetree/DT-GAPS-j775c.md @@ -19,6 +19,8 @@ No firmware, calibration or register programming values are included. - Complete the transport children and firmware-service bindings, pinmux, port graphs and board wiring. Listing a controller does not cover its attached peripherals. +- Audit the parent dependencies of new disabled PMGR gates before enabling + a gate or its consumer. - Resolve every provider/routing gap called out below. No guessed address, interrupt parent or power-domain relationship was substituted. - Validate on this board; no boot or peripheral test was performed. diff --git a/docs/devicetree/DT-GAPS-j775d.md b/docs/devicetree/DT-GAPS-j775d.md index c9a6bdfbe348e..ae5792f671e9d 100644 --- a/docs/devicetree/DT-GAPS-j775d.md +++ b/docs/devicetree/DT-GAPS-j775d.md @@ -19,6 +19,8 @@ No firmware, calibration or register programming values are included. - Complete the transport children and firmware-service bindings, pinmux, port graphs and board wiring. Listing a controller does not cover its attached peripherals. +- Audit the parent dependencies of new disabled PMGR gates before enabling + a gate or its consumer. - Resolve every provider/routing gap called out below. No guessed address, interrupt parent or power-domain relationship was substituted. - Validate on this board; no boot or peripheral test was performed. diff --git a/docs/devicetree/DT-GAPS-j873s.md b/docs/devicetree/DT-GAPS-j873s.md index a114033e7426b..ff0f5113411d2 100644 --- a/docs/devicetree/DT-GAPS-j873s.md +++ b/docs/devicetree/DT-GAPS-j873s.md @@ -19,6 +19,8 @@ No firmware, calibration or register programming values are included. - Complete the transport children and firmware-service bindings, pinmux, port graphs and board wiring. Listing a controller does not cover its attached peripherals. +- Audit the parent dependencies of new disabled PMGR gates before enabling + a gate or its consumer. - Resolve every provider/routing gap called out below. No guessed address, interrupt parent or power-domain relationship was substituted. - Validate on this board; no boot or peripheral test was performed. @@ -250,8 +252,8 @@ from those records are reproduced here. | Hardware path below the SoC bus | Classification and remaining audit | | --- | --- | -| `i2c1/audio-speaker` | Attached device or firmware service; endpoint binding and board wiring audit pending. | -| `i2c2/audio-codec-output` | Attached device or firmware service; endpoint binding and board wiring audit pending. | +| `i2c1/audio-speaker` | `&hw_audio_speaker` identifies the disabled codec; reset, interrupt, power and audio routing audit pending. | +| `i2c2/audio-codec-output` | `&hw_jack_codec` identifies the disabled codec; reset, interrupt, power and audio routing audit pending. | | `i2c5/aqc-a` | Attached device or firmware service; endpoint binding and board wiring audit pending. | | `i2c6/uatcrt0` | Attached device or firmware service; endpoint binding and board wiring audit pending. | | `i2c6/uatcrt1` | Attached device or firmware service; endpoint binding and board wiring audit pending. | diff --git a/docs/devicetree/DT-GAPS-k114c.md b/docs/devicetree/DT-GAPS-k114c.md index bca1a02ad56d8..d9a9b242e8100 100644 --- a/docs/devicetree/DT-GAPS-k114c.md +++ b/docs/devicetree/DT-GAPS-k114c.md @@ -19,6 +19,8 @@ No firmware, calibration or register programming values are included. - Complete the transport children and firmware-service bindings, pinmux, port graphs and board wiring. Listing a controller does not cover its attached peripherals. +- Audit the parent dependencies of new disabled PMGR gates before enabling + a gate or its consumer. - Resolve every provider/routing gap called out below. No guessed address, interrupt parent or power-domain relationship was substituted. - Validate on this board; no boot or peripheral test was performed. diff --git a/docs/devicetree/DT-GAPS-k114s.md b/docs/devicetree/DT-GAPS-k114s.md index 78e7a9c3ab90a..d795237cbc6d6 100644 --- a/docs/devicetree/DT-GAPS-k114s.md +++ b/docs/devicetree/DT-GAPS-k114s.md @@ -19,6 +19,8 @@ No firmware, calibration or register programming values are included. - Complete the transport children and firmware-service bindings, pinmux, port graphs and board wiring. Listing a controller does not cover its attached peripherals. +- Audit the parent dependencies of new disabled PMGR gates before enabling + a gate or its consumer. - Resolve every provider/routing gap called out below. No guessed address, interrupt parent or power-domain relationship was substituted. - Validate on this board; no boot or peripheral test was performed. diff --git a/docs/devicetree/DT-GAPS-k116c.md b/docs/devicetree/DT-GAPS-k116c.md index 337a80c34f7ca..0e1004be54e8f 100644 --- a/docs/devicetree/DT-GAPS-k116c.md +++ b/docs/devicetree/DT-GAPS-k116c.md @@ -19,6 +19,8 @@ No firmware, calibration or register programming values are included. - Complete the transport children and firmware-service bindings, pinmux, port graphs and board wiring. Listing a controller does not cover its attached peripherals. +- Audit the parent dependencies of new disabled PMGR gates before enabling + a gate or its consumer. - Resolve every provider/routing gap called out below. No guessed address, interrupt parent or power-domain relationship was substituted. - Validate on this board; no boot or peripheral test was performed. diff --git a/docs/devicetree/DT-GAPS-k116s.md b/docs/devicetree/DT-GAPS-k116s.md index 8edd2fd2eeecc..f5fae60673688 100644 --- a/docs/devicetree/DT-GAPS-k116s.md +++ b/docs/devicetree/DT-GAPS-k116s.md @@ -19,6 +19,8 @@ No firmware, calibration or register programming values are included. - Complete the transport children and firmware-service bindings, pinmux, port graphs and board wiring. Listing a controller does not cover its attached peripherals. +- Audit the parent dependencies of new disabled PMGR gates before enabling + a gate or its consumer. - Resolve every provider/routing gap called out below. No guessed address, interrupt parent or power-domain relationship was substituted. - Validate on this board; no boot or peripheral test was performed. From d3776b1063e9dd2bbbd295742f0dceace70630dc Mon Sep 17 00:00:00 2001 From: Ryan Murray <81541646+RyanTheTide@users.noreply.github.com> Date: Sat, 7 Nov 2026 23:25:18 +1100 Subject: [PATCH 4/4] arm64: dts: apple: describe T6050 board resources Add conservative board scaffolding, disabled peripheral resource descriptions and per-board coverage ledgers. Unresolved providers, transport children and handoff requirements remain explicit review gaps. Signed-off-by: Ryan Murray <81541646+RyanTheTide@users.noreply.github.com> Assisted-by: LLM --- .../boot/dts/apple/t6050-j714c-peripherals.dtsi | 2 +- .../boot/dts/apple/t6050-j714s-peripherals.dtsi | 2 +- .../boot/dts/apple/t6050-j716c-peripherals.dtsi | 2 +- .../boot/dts/apple/t6050-j716s-peripherals.dtsi | 2 +- .../boot/dts/apple/t6050-j775c-peripherals.dtsi | 2 +- .../boot/dts/apple/t6050-j775d-peripherals.dtsi | 2 +- .../boot/dts/apple/t6050-j873s-peripherals.dtsi | 2 +- .../boot/dts/apple/t6050-k114c-peripherals.dtsi | 2 +- .../boot/dts/apple/t6050-k114s-peripherals.dtsi | 2 +- .../boot/dts/apple/t6050-k116c-peripherals.dtsi | 2 +- .../boot/dts/apple/t6050-k116s-peripherals.dtsi | 2 +- arch/arm64/boot/dts/apple/t6050-peripherals.dtsi | 12 +++++++++++- 12 files changed, 22 insertions(+), 12 deletions(-) diff --git a/arch/arm64/boot/dts/apple/t6050-j714c-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j714c-peripherals.dtsi index 1023bab4665dd..cc94b94dbe369 100644 --- a/arch/arm64/boot/dts/apple/t6050-j714c-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-j714c-peripherals.dtsi @@ -3,7 +3,7 @@ // SPDX-License-Identifier: GPL-2.0+ OR MIT /* Register and interrupt resources; ownership-sensitive blocks stay disabled. */ -&die0 { +&{/soc} { hw_nub_spmi1: spmi@28a054000 { compatible = "apple,t6050-spmi", "apple,spmi"; reg = <0x2 0x8a054000 0x0 0x4000>, diff --git a/arch/arm64/boot/dts/apple/t6050-j714s-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j714s-peripherals.dtsi index 287a75c8443f4..9c5fa96442532 100644 --- a/arch/arm64/boot/dts/apple/t6050-j714s-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-j714s-peripherals.dtsi @@ -3,7 +3,7 @@ // SPDX-License-Identifier: GPL-2.0+ OR MIT /* Register and interrupt resources; ownership-sensitive blocks stay disabled. */ -&die0 { +&{/soc} { hw_i2c5: i2c@505024000 { compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x5024000 0x0 0x4000>; diff --git a/arch/arm64/boot/dts/apple/t6050-j716c-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j716c-peripherals.dtsi index 1023bab4665dd..cc94b94dbe369 100644 --- a/arch/arm64/boot/dts/apple/t6050-j716c-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-j716c-peripherals.dtsi @@ -3,7 +3,7 @@ // SPDX-License-Identifier: GPL-2.0+ OR MIT /* Register and interrupt resources; ownership-sensitive blocks stay disabled. */ -&die0 { +&{/soc} { hw_nub_spmi1: spmi@28a054000 { compatible = "apple,t6050-spmi", "apple,spmi"; reg = <0x2 0x8a054000 0x0 0x4000>, diff --git a/arch/arm64/boot/dts/apple/t6050-j716s-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j716s-peripherals.dtsi index 287a75c8443f4..9c5fa96442532 100644 --- a/arch/arm64/boot/dts/apple/t6050-j716s-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-j716s-peripherals.dtsi @@ -3,7 +3,7 @@ // SPDX-License-Identifier: GPL-2.0+ OR MIT /* Register and interrupt resources; ownership-sensitive blocks stay disabled. */ -&die0 { +&{/soc} { hw_i2c5: i2c@505024000 { compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x5024000 0x0 0x4000>; diff --git a/arch/arm64/boot/dts/apple/t6050-j775c-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j775c-peripherals.dtsi index c6573d604bd47..5e0181f5a938e 100644 --- a/arch/arm64/boot/dts/apple/t6050-j775c-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-j775c-peripherals.dtsi @@ -3,7 +3,7 @@ // SPDX-License-Identifier: GPL-2.0+ OR MIT /* Register and interrupt resources; ownership-sensitive blocks stay disabled. */ -&die0 { +&{/soc} { hw_nub_spmi1: spmi@28a054000 { compatible = "apple,t6050-spmi", "apple,spmi"; reg = <0x2 0x8a054000 0x0 0x4000>, diff --git a/arch/arm64/boot/dts/apple/t6050-j775d-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j775d-peripherals.dtsi index ae4c2885e5238..76111d20a3d36 100644 --- a/arch/arm64/boot/dts/apple/t6050-j775d-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-j775d-peripherals.dtsi @@ -3,7 +3,7 @@ // SPDX-License-Identifier: GPL-2.0+ OR MIT /* Register and interrupt resources; ownership-sensitive blocks stay disabled. */ -&die0 { +&{/soc} { hw_i2c7: i2c@50502c000 { compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x502c000 0x0 0x4000>; diff --git a/arch/arm64/boot/dts/apple/t6050-j873s-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-j873s-peripherals.dtsi index 8cbd0980d3569..b2c5056d7b9f3 100644 --- a/arch/arm64/boot/dts/apple/t6050-j873s-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-j873s-peripherals.dtsi @@ -3,7 +3,7 @@ // SPDX-License-Identifier: GPL-2.0+ OR MIT /* Register and interrupt resources; ownership-sensitive blocks stay disabled. */ -&die0 { +&{/soc} { hw_i2c5: i2c@505024000 { compatible = "apple,t6050-i2c", "apple,t8103-i2c"; diff --git a/arch/arm64/boot/dts/apple/t6050-k114c-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-k114c-peripherals.dtsi index 355c16b3ce7ee..aab50432c6474 100644 --- a/arch/arm64/boot/dts/apple/t6050-k114c-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-k114c-peripherals.dtsi @@ -3,7 +3,7 @@ // SPDX-License-Identifier: GPL-2.0+ OR MIT /* Register and interrupt resources; ownership-sensitive blocks stay disabled. */ -&die0 { +&{/soc} { hw_nub_spmi1: spmi@28a054000 { compatible = "apple,t6050-spmi", "apple,spmi"; reg = <0x2 0x8a054000 0x0 0x4000>, diff --git a/arch/arm64/boot/dts/apple/t6050-k114s-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-k114s-peripherals.dtsi index c86d817e2d36d..5608179f160e9 100644 --- a/arch/arm64/boot/dts/apple/t6050-k114s-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-k114s-peripherals.dtsi @@ -3,7 +3,7 @@ // SPDX-License-Identifier: GPL-2.0+ OR MIT /* Register and interrupt resources; ownership-sensitive blocks stay disabled. */ -&die0 { +&{/soc} { hw_i2c3: i2c@50501c000 { compatible = "apple,t6050-i2c", "apple,t8103-i2c"; diff --git a/arch/arm64/boot/dts/apple/t6050-k116c-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-k116c-peripherals.dtsi index 355c16b3ce7ee..aab50432c6474 100644 --- a/arch/arm64/boot/dts/apple/t6050-k116c-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-k116c-peripherals.dtsi @@ -3,7 +3,7 @@ // SPDX-License-Identifier: GPL-2.0+ OR MIT /* Register and interrupt resources; ownership-sensitive blocks stay disabled. */ -&die0 { +&{/soc} { hw_nub_spmi1: spmi@28a054000 { compatible = "apple,t6050-spmi", "apple,spmi"; reg = <0x2 0x8a054000 0x0 0x4000>, diff --git a/arch/arm64/boot/dts/apple/t6050-k116s-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-k116s-peripherals.dtsi index c86d817e2d36d..5608179f160e9 100644 --- a/arch/arm64/boot/dts/apple/t6050-k116s-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-k116s-peripherals.dtsi @@ -3,7 +3,7 @@ // SPDX-License-Identifier: GPL-2.0+ OR MIT /* Register and interrupt resources; ownership-sensitive blocks stay disabled. */ -&die0 { +&{/soc} { hw_i2c3: i2c@50501c000 { compatible = "apple,t6050-i2c", "apple,t8103-i2c"; diff --git a/arch/arm64/boot/dts/apple/t6050-peripherals.dtsi b/arch/arm64/boot/dts/apple/t6050-peripherals.dtsi index 4444257780881..7ad3b1802979e 100644 --- a/arch/arm64/boot/dts/apple/t6050-peripherals.dtsi +++ b/arch/arm64/boot/dts/apple/t6050-peripherals.dtsi @@ -1,7 +1,17 @@ // SPDX-License-Identifier: GPL-2.0+ OR MIT /* Shared disabled peripheral resources. */ -&die0 { +/ { + soc { + compatible = "simple-bus"; + #address-cells = <2>; + #size-cells = <2>; + ranges; + nonposted-mmio; + }; +}; + +&{/soc} { hw_i2c0: i2c@505010000 { compatible = "apple,t6050-i2c", "apple,t8103-i2c"; reg = <0x5 0x5010000 0x0 0x4000>;