mirror of
https://github.com/linux-msm/laptops-kernel.git
synced 2026-08-13 14:19:53 -07:00
Merge branch 'for-next' of https://git.kernel.org/pub/scm/linux/kernel/git/remoteproc/linux.git
This commit is contained in:
@@ -0,0 +1,105 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/remoteproc/amd,bram-rproc.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: AMD MicroBlaze/V BRAM-based Remote Processor
|
||||
|
||||
maintainers:
|
||||
- Ben Levinsky <ben.levinsky@amd.com>
|
||||
|
||||
description: |
|
||||
Soft-core processor subsystem instantiated in AMD programmable logic and
|
||||
using dual-port BRAM for firmware storage and execution.
|
||||
|
||||
Hardware Architecture:
|
||||
|
||||
Host (PS) Programmable Logic (PL)
|
||||
========= ======================
|
||||
|
||||
AXI Interface -----------------> AXI BRAM Controller (Host Port)
|
||||
|
|
||||
| Port A
|
||||
v
|
||||
+-----------------+
|
||||
| Dual-Port BRAM |
|
||||
| (shared memory) |
|
||||
+-----------------+
|
||||
^
|
||||
| Port B
|
||||
|
|
||||
AXI BRAM Controller (Soft-core Port)
|
||||
^
|
||||
| LMB
|
||||
|
|
||||
Soft-core CPU (MicroBlaze/V)
|
||||
|
||||
GPIO --------------------------> Proc Sys Reset ----> CPU Reset Signal
|
||||
|
||||
Clock -------------------------> Clock Distribution -> CPU Clock
|
||||
|
||||
Memory Architecture:
|
||||
|
||||
The dual-port BRAM allows simultaneous access from both processors:
|
||||
- Port A: Connected to the host AXI BRAM controller for firmware loading
|
||||
- Port B: Connected to the soft-core local memory bus for execution
|
||||
|
||||
The reg property describes the executable BRAM window in the processor-local
|
||||
address space. The parent bus node translates that window to the system
|
||||
physical address space by using standard devicetree address translation
|
||||
through ranges. A clock input and a reset GPIO control the subsystem.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
oneOf:
|
||||
- const: xlnx,zynqmp-bram-rproc
|
||||
- items:
|
||||
- enum:
|
||||
- amd,versal2-bram-rproc
|
||||
- xlnx,versal-bram-rproc
|
||||
- xlnx,versal-net-bram-rproc
|
||||
- const: xlnx,zynqmp-bram-rproc
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
description:
|
||||
Processor-local address and size of the BRAM firmware memory window,
|
||||
as seen by the soft-core processor (typically 0x0 for reset vector).
|
||||
The parent bus ranges property must translate this window to the
|
||||
corresponding system physical address.
|
||||
|
||||
clocks:
|
||||
maxItems: 1
|
||||
description:
|
||||
Clock input for the soft-core processor subsystem.
|
||||
|
||||
firmware-name:
|
||||
maxItems: 1
|
||||
description:
|
||||
Name of the firmware ELF file to load.
|
||||
|
||||
reset-gpios:
|
||||
maxItems: 1
|
||||
description:
|
||||
GPIO specifier controlling the soft-core reset input.
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- clocks
|
||||
- reset-gpios
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
remoteproc@0 {
|
||||
compatible = "xlnx,zynqmp-bram-rproc";
|
||||
reg = <0x0 0x40000>;
|
||||
clocks = <&pl_clk>;
|
||||
firmware-name = "firmware.elf";
|
||||
reset-gpios = <&gpio0 0 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
...
|
||||
@@ -25,7 +25,7 @@ properties:
|
||||
- const: amlogic,meson-mx-ao-arc
|
||||
|
||||
firmware-name:
|
||||
$ref: /schemas/types.yaml#/definitions/string
|
||||
maxItems: 1
|
||||
description:
|
||||
The name of the firmware which should be loaded for this remote
|
||||
processor.
|
||||
|
||||
@@ -32,6 +32,14 @@ properties:
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
clocks:
|
||||
items:
|
||||
- description: XO clock
|
||||
|
||||
clock-names:
|
||||
items:
|
||||
- const: xo
|
||||
|
||||
cx-supply: true
|
||||
|
||||
px-supply:
|
||||
@@ -49,6 +57,30 @@ properties:
|
||||
maxItems: 1
|
||||
description: Firmware name for the Hexagon core
|
||||
|
||||
interrupts:
|
||||
items:
|
||||
- description: Watchdog interrupt
|
||||
- description: Fatal interrupt
|
||||
- description: Ready interrupt
|
||||
- description: Handover interrupt
|
||||
- description: Stop acknowledge interrupt
|
||||
|
||||
interrupt-names:
|
||||
items:
|
||||
- const: wdog
|
||||
- const: fatal
|
||||
- const: ready
|
||||
- const: handover
|
||||
- const: stop-ack
|
||||
|
||||
qcom,smem-states:
|
||||
maxItems: 1
|
||||
description: States used by the AP to signal the Hexagon core
|
||||
|
||||
qcom,smem-state-names:
|
||||
maxItems: 1
|
||||
description: The names of the state bits used for SMP2P output
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- memory-region
|
||||
@@ -57,56 +89,6 @@ unevaluatedProperties: false
|
||||
|
||||
allOf:
|
||||
- $ref: /schemas/remoteproc/qcom,pas-common.yaml#
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
enum:
|
||||
- qcom,msm8226-adsp-pil
|
||||
- qcom,msm8953-adsp-pil
|
||||
- qcom,msm8974-adsp-pil
|
||||
- qcom,msm8996-adsp-pil
|
||||
- qcom,msm8996-slpi-pil
|
||||
- qcom,msm8998-adsp-pas
|
||||
- qcom,msm8998-slpi-pas
|
||||
- qcom,sdm660-adsp-pas
|
||||
- qcom,sdm660-cdsp-pas
|
||||
- qcom,sdm845-adsp-pas
|
||||
- qcom,sdm845-cdsp-pas
|
||||
- qcom,sdm845-slpi-pas
|
||||
then:
|
||||
properties:
|
||||
clocks:
|
||||
items:
|
||||
- description: XO clock
|
||||
clock-names:
|
||||
items:
|
||||
- const: xo
|
||||
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
enum:
|
||||
- qcom,msm8226-adsp-pil
|
||||
- qcom,msm8953-adsp-pil
|
||||
- qcom,msm8974-adsp-pil
|
||||
- qcom,msm8996-adsp-pil
|
||||
- qcom,msm8996-slpi-pil
|
||||
- qcom,msm8998-adsp-pas
|
||||
- qcom,msm8998-slpi-pas
|
||||
- qcom,sdm660-adsp-pas
|
||||
- qcom,sdm660-cdsp-pas
|
||||
- qcom,sdm845-adsp-pas
|
||||
- qcom,sdm845-cdsp-pas
|
||||
- qcom,sdm845-slpi-pas
|
||||
then:
|
||||
properties:
|
||||
interrupts:
|
||||
maxItems: 5
|
||||
interrupt-names:
|
||||
maxItems: 5
|
||||
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
|
||||
@@ -0,0 +1,156 @@
|
||||
# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/remoteproc/qcom,kaanapali-soccp-pas.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Qualcomm Kaanapali SoCCP Peripheral Authentication Service
|
||||
|
||||
maintainers:
|
||||
- Jingyi Wang <jingyi.wang@oss.qualcomm.com>
|
||||
|
||||
description:
|
||||
The SoC Control Processor (SoCCP) is a small RISC-V MCU that controls USB
|
||||
Type-C, battery charging and various other functions on Qualcomm SoCs, somewhat
|
||||
analogous to traditional PC Embedded Controllers. This document describes
|
||||
the Peripheral Authentication Service that loads and boots firmware for SoCCP.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
oneOf:
|
||||
- items:
|
||||
- enum:
|
||||
- qcom,hawi-soccp-pas
|
||||
- qcom,maili-soccp-pas
|
||||
- const: qcom,kaanapali-soccp-pas
|
||||
- enum:
|
||||
- qcom,glymur-soccp-pas
|
||||
- qcom,kaanapali-soccp-pas
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
clocks:
|
||||
items:
|
||||
- description: XO clock
|
||||
|
||||
clock-names:
|
||||
items:
|
||||
- const: xo
|
||||
|
||||
power-domains:
|
||||
items:
|
||||
- description: CX power domain
|
||||
- description: MX power domain
|
||||
|
||||
power-domain-names:
|
||||
items:
|
||||
- const: cx
|
||||
- const: mx
|
||||
|
||||
firmware-name:
|
||||
items:
|
||||
- description: Firmware name of the SoC Control Processor
|
||||
- description: Firmware name of the SoCCP Devicetree
|
||||
|
||||
memory-region:
|
||||
items:
|
||||
- description: Memory region for main Firmware authentication
|
||||
- description: Memory region for Devicetree Firmware authentication
|
||||
|
||||
interrupts:
|
||||
items:
|
||||
- description: Watchdog interrupt
|
||||
- description: Fatal interrupt
|
||||
- description: Ready interrupt
|
||||
- description: Handover interrupt
|
||||
- description: Stop acknowledge interrupt
|
||||
- description: Pong interrupt
|
||||
|
||||
interrupt-names:
|
||||
items:
|
||||
- const: wdog
|
||||
- const: fatal
|
||||
- const: ready
|
||||
- const: handover
|
||||
- const: stop-ack
|
||||
- const: pong
|
||||
|
||||
qcom,smem-states:
|
||||
minItems: 2
|
||||
description: States used by the AP to signal the SoC Control Processor
|
||||
|
||||
qcom,smem-state-names:
|
||||
minItems: 2
|
||||
description: The names of the state bits used for SMP2P output
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- memory-region
|
||||
- power-domains
|
||||
- power-domain-names
|
||||
|
||||
allOf:
|
||||
- $ref: /schemas/remoteproc/qcom,pas-common.yaml#
|
||||
|
||||
unevaluatedProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/clock/qcom,rpmh.h>
|
||||
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
#include <dt-bindings/mailbox/qcom-ipcc.h>
|
||||
#include <dt-bindings/power/qcom-rpmpd.h>
|
||||
#define IPCC_MPROC_SOCCP
|
||||
|
||||
remoteproc@d00000 {
|
||||
compatible = "qcom,kaanapali-soccp-pas";
|
||||
reg = <0x00d00000 0x200000>;
|
||||
|
||||
clocks = <&rpmhcc RPMH_CXO_CLK>;
|
||||
clock-names = "xo";
|
||||
|
||||
interrupts-extended = <&intc GIC_SPI 167 IRQ_TYPE_EDGE_RISING>,
|
||||
<&soccp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
|
||||
<&soccp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
|
||||
<&soccp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
|
||||
<&soccp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>,
|
||||
<&soccp_smp2p_in 9 IRQ_TYPE_EDGE_RISING>;
|
||||
interrupt-names = "wdog",
|
||||
"fatal",
|
||||
"ready",
|
||||
"handover",
|
||||
"stop-ack",
|
||||
"pong";
|
||||
|
||||
memory-region = <&soccp_mem>,
|
||||
<&soccp_dtb_mem_mem>;
|
||||
|
||||
firmware-name = "qcom/kaanapali/soccp.mbn",
|
||||
"qcom/kaanapali/soccp_dtb.mbn";
|
||||
|
||||
power-domains = <&rpmhpd RPMHPD_CX>,
|
||||
<&rpmhpd RPMHPD_MX>;
|
||||
power-domain-names = "cx",
|
||||
"mx";
|
||||
|
||||
qcom,smem-states = <&soccp_smp2p_out 0>,
|
||||
<&soccp_smp2p_out 8>;
|
||||
qcom,smem-state-names = "stop",
|
||||
"ping";
|
||||
|
||||
glink-edge {
|
||||
interrupts-extended = <&ipcc IPCC_MPROC_SOCCP
|
||||
IPCC_MPROC_SIGNAL_GLINK_QMP
|
||||
IRQ_TYPE_EDGE_RISING>;
|
||||
mboxes = <&ipcc IPCC_MPROC_SOCCP
|
||||
IPCC_MPROC_SIGNAL_GLINK_QMP>;
|
||||
|
||||
label = "soccp";
|
||||
qcom,remote-pid = <19>;
|
||||
|
||||
/* ... */
|
||||
};
|
||||
};
|
||||
@@ -16,7 +16,6 @@ description:
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- qcom,eliza-adsp-pas
|
||||
- qcom,milos-adsp-pas
|
||||
- qcom,milos-cdsp-pas
|
||||
- qcom,milos-mpss-pas
|
||||
@@ -34,12 +33,22 @@ properties:
|
||||
- const: xo
|
||||
|
||||
interrupts:
|
||||
minItems: 6
|
||||
maxItems: 6
|
||||
items:
|
||||
- description: Watchdog interrupt
|
||||
- description: Fatal interrupt
|
||||
- description: Ready interrupt
|
||||
- description: Handover interrupt
|
||||
- description: Stop acknowledge interrupt
|
||||
- description: Shutdown acknowledge interrupt
|
||||
|
||||
interrupt-names:
|
||||
minItems: 6
|
||||
maxItems: 6
|
||||
items:
|
||||
- const: wdog
|
||||
- const: fatal
|
||||
- const: ready
|
||||
- const: handover
|
||||
- const: stop-ack
|
||||
- const: shutdown-ack
|
||||
|
||||
qcom,qmp:
|
||||
$ref: /schemas/types.yaml#/definitions/phandle
|
||||
@@ -59,6 +68,14 @@ properties:
|
||||
- description: Memory region for core Firmware authentication
|
||||
- description: Memory region for Devicetree Firmware authentication
|
||||
|
||||
qcom,smem-states:
|
||||
maxItems: 1
|
||||
description: States used by the AP to signal the Hexagon core
|
||||
|
||||
qcom,smem-state-names:
|
||||
maxItems: 1
|
||||
description: The names of the state bits used for SMP2P output
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
@@ -70,7 +87,6 @@ allOf:
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- qcom,eliza-adsp-pas
|
||||
- qcom,milos-adsp-pas
|
||||
- qcom,milos-cdsp-pas
|
||||
then:
|
||||
@@ -91,7 +107,6 @@ allOf:
|
||||
compatible:
|
||||
contains:
|
||||
enum:
|
||||
- qcom,eliza-adsp-pas
|
||||
- qcom,milos-adsp-pas
|
||||
then:
|
||||
properties:
|
||||
|
||||
@@ -0,0 +1,173 @@
|
||||
# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/remoteproc/qcom,nord-pas.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Qualcomm Nord SoC Peripheral Authentication Service
|
||||
|
||||
maintainers:
|
||||
- Shawn Guo <shengchao.guo@oss.qualcomm.com>
|
||||
|
||||
description:
|
||||
Qualcomm Nord SoC Peripheral Authentication Service loads and boots firmware
|
||||
on the Qualcomm DSP Hexagon cores.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- qcom,nord-adsp-pas
|
||||
- qcom,nord-cdsp0-pas
|
||||
- qcom,nord-cdsp1-pas
|
||||
- qcom,nord-cdsp2-pas
|
||||
- qcom,nord-cdsp3-pas
|
||||
|
||||
power-domains:
|
||||
minItems: 2
|
||||
items:
|
||||
- description: CX power domain
|
||||
- description: MX power domain
|
||||
- description: NSP power domain
|
||||
|
||||
power-domain-names:
|
||||
minItems: 2
|
||||
items:
|
||||
- const: cx
|
||||
- const: mx
|
||||
- const: nsp
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
clocks:
|
||||
items:
|
||||
- description: XO clock
|
||||
|
||||
clock-names:
|
||||
items:
|
||||
- const: xo
|
||||
|
||||
qcom,qmp:
|
||||
$ref: /schemas/types.yaml#/definitions/phandle
|
||||
description: Reference to the AOSS side-channel message RAM.
|
||||
|
||||
smd-edge: false
|
||||
|
||||
firmware-name:
|
||||
items:
|
||||
- description: Firmware name of the Hexagon core
|
||||
- description: Firmware name of the Hexagon Devicetree
|
||||
|
||||
memory-region:
|
||||
items:
|
||||
- description: Memory region for main Firmware authentication
|
||||
- description: Memory region for Devicetree Firmware authentication
|
||||
|
||||
interrupts:
|
||||
items:
|
||||
- description: Watchdog interrupt
|
||||
- description: Fatal interrupt
|
||||
- description: Ready interrupt
|
||||
- description: Handover interrupt
|
||||
- description: Stop acknowledge interrupt
|
||||
- description: Shutdown acknowledge interrupt
|
||||
|
||||
interrupt-names:
|
||||
items:
|
||||
- const: wdog
|
||||
- const: fatal
|
||||
- const: ready
|
||||
- const: handover
|
||||
- const: stop-ack
|
||||
- const: shutdown-ack
|
||||
|
||||
qcom,smem-states:
|
||||
maxItems: 1
|
||||
description: States used by the AP to signal the Hexagon core
|
||||
|
||||
qcom,smem-state-names:
|
||||
maxItems: 1
|
||||
description: The names of the state bits used for SMP2P output
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- memory-region
|
||||
|
||||
allOf:
|
||||
- $ref: /schemas/remoteproc/qcom,pas-common.yaml#
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- qcom,nord-adsp-pas
|
||||
then:
|
||||
properties:
|
||||
power-domains:
|
||||
maxItems: 2
|
||||
power-domain-names:
|
||||
maxItems: 2
|
||||
else:
|
||||
properties:
|
||||
power-domains:
|
||||
minItems: 3
|
||||
power-domain-names:
|
||||
minItems: 3
|
||||
|
||||
unevaluatedProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/clock/qcom,rpmh.h>
|
||||
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
#include <dt-bindings/mailbox/qcom-ipcc.h>
|
||||
#include <dt-bindings/power/qcom,rpmhpd.h>
|
||||
#define IPCC_MPROC_ADSP0
|
||||
|
||||
remoteproc@4c00000 {
|
||||
compatible = "qcom,nord-adsp-pas";
|
||||
reg = <0x04c00000 0x10000>;
|
||||
|
||||
clocks = <&rpmhcc RPMH_CXO_CLK>;
|
||||
clock-names = "xo";
|
||||
|
||||
interrupts-extended = <&intc GIC_SPI 159 IRQ_TYPE_EDGE_RISING>,
|
||||
<&smp2p_adsp_in 0 IRQ_TYPE_EDGE_RISING>,
|
||||
<&smp2p_adsp_in 1 IRQ_TYPE_EDGE_RISING>,
|
||||
<&smp2p_adsp_in 2 IRQ_TYPE_EDGE_RISING>,
|
||||
<&smp2p_adsp_in 3 IRQ_TYPE_EDGE_RISING>,
|
||||
<&smp2p_adsp_in 7 IRQ_TYPE_EDGE_RISING>;
|
||||
interrupt-names = "wdog",
|
||||
"fatal",
|
||||
"ready",
|
||||
"handover",
|
||||
"stop-ack",
|
||||
"shutdown-ack";
|
||||
|
||||
memory-region = <&hpass_dsp0_mem>, <&hpass_dsp0_dtb_mem>;
|
||||
|
||||
firmware-name = "qcom/nord/adsp.mbn",
|
||||
"qcom/nord/adsp_dtb.mbn";
|
||||
|
||||
power-domains = <&rpmhpd RPMHPD_CX>,
|
||||
<&rpmhpd RPMHPD_MX>;
|
||||
power-domain-names = "cx",
|
||||
"mx";
|
||||
|
||||
qcom,qmp = <&aoss_qmp>;
|
||||
qcom,smem-states = <&smp2p_adsp_out 0>;
|
||||
qcom,smem-state-names = "stop";
|
||||
|
||||
glink-edge {
|
||||
interrupts-extended = <&ipcc IPCC_MPROC_ADSP0
|
||||
IPCC_MPROC_SIGNAL_GLINK_QMP
|
||||
IRQ_TYPE_EDGE_RISING>;
|
||||
mboxes = <&ipcc IPCC_MPROC_ADSP0 IPCC_MPROC_SIGNAL_GLINK_QMP>;
|
||||
|
||||
label = "adsp";
|
||||
qcom,remote-pid = <2>;
|
||||
|
||||
/* ... */
|
||||
};
|
||||
};
|
||||
@@ -26,23 +26,11 @@ properties:
|
||||
|
||||
interrupts:
|
||||
minItems: 5
|
||||
items:
|
||||
- description: Watchdog interrupt
|
||||
- description: Fatal interrupt
|
||||
- description: Ready interrupt
|
||||
- description: Handover interrupt
|
||||
- description: Stop acknowledge interrupt
|
||||
- description: Shutdown acknowledge interrupt
|
||||
maxItems: 6
|
||||
|
||||
interrupt-names:
|
||||
minItems: 5
|
||||
items:
|
||||
- const: wdog
|
||||
- const: fatal
|
||||
- const: ready
|
||||
- const: handover
|
||||
- const: stop-ack
|
||||
- const: shutdown-ack
|
||||
maxItems: 6
|
||||
|
||||
iommus:
|
||||
maxItems: 1
|
||||
@@ -58,8 +46,16 @@ properties:
|
||||
qcom,smem-states:
|
||||
$ref: /schemas/types.yaml#/definitions/phandle-array
|
||||
description: States used by the AP to signal the Hexagon core
|
||||
minItems: 1
|
||||
items:
|
||||
- description: Stop the modem
|
||||
- description: Stop the remoteproc
|
||||
items:
|
||||
- description: Phandle to the Shared Memory Point 2 Point device
|
||||
handling the communication with a remote processor
|
||||
- description: Single bit index to toggle in the value sent to
|
||||
the remote processor
|
||||
maximum: 32
|
||||
- description: Ping the remoteproc
|
||||
items:
|
||||
- description: Phandle to the Shared Memory Point 2 Point device
|
||||
handling the communication with a remote processor
|
||||
@@ -69,8 +65,10 @@ properties:
|
||||
|
||||
qcom,smem-state-names:
|
||||
description: The names of the state bits used for SMP2P output
|
||||
minItems: 1
|
||||
items:
|
||||
- const: stop
|
||||
- const: ping
|
||||
|
||||
smd-edge:
|
||||
$ref: /schemas/remoteproc/qcom,smd-edge.yaml#
|
||||
|
||||
@@ -32,10 +32,20 @@ properties:
|
||||
- const: xo
|
||||
|
||||
interrupts:
|
||||
maxItems: 5
|
||||
items:
|
||||
- description: Watchdog interrupt
|
||||
- description: Fatal interrupt
|
||||
- description: Ready interrupt
|
||||
- description: Handover interrupt
|
||||
- description: Stop acknowledge interrupt
|
||||
|
||||
interrupt-names:
|
||||
maxItems: 5
|
||||
items:
|
||||
- const: wdog
|
||||
- const: fatal
|
||||
- const: ready
|
||||
- const: handover
|
||||
- const: stop-ack
|
||||
|
||||
power-domains: false
|
||||
power-domain-names: false
|
||||
@@ -49,6 +59,14 @@ properties:
|
||||
maxItems: 1
|
||||
description: Firmware name for the Hexagon core
|
||||
|
||||
qcom,smem-states:
|
||||
maxItems: 1
|
||||
description: States used by the AP to signal the Hexagon core
|
||||
|
||||
qcom,smem-state-names:
|
||||
maxItems: 1
|
||||
description: The names of the state bits used for SMP2P output
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
||||
@@ -59,10 +59,28 @@ properties:
|
||||
- description: Memory region for main Firmware authentication
|
||||
|
||||
interrupts:
|
||||
maxItems: 5
|
||||
items:
|
||||
- description: Watchdog interrupt
|
||||
- description: Fatal interrupt
|
||||
- description: Ready interrupt
|
||||
- description: Handover interrupt
|
||||
- description: Stop acknowledge interrupt
|
||||
|
||||
interrupt-names:
|
||||
maxItems: 5
|
||||
items:
|
||||
- const: wdog
|
||||
- const: fatal
|
||||
- const: ready
|
||||
- const: handover
|
||||
- const: stop-ack
|
||||
|
||||
qcom,smem-states:
|
||||
maxItems: 1
|
||||
description: States used by the AP to signal the Hexagon core
|
||||
|
||||
qcom,smem-state-names:
|
||||
maxItems: 1
|
||||
description: The names of the state bits used for SMP2P output
|
||||
|
||||
required:
|
||||
- compatible
|
||||
|
||||
@@ -48,6 +48,34 @@ properties:
|
||||
maxItems: 1
|
||||
description: Firmware name for the Hexagon core
|
||||
|
||||
interrupts:
|
||||
minItems: 5
|
||||
items:
|
||||
- description: Watchdog interrupt
|
||||
- description: Fatal interrupt
|
||||
- description: Ready interrupt
|
||||
- description: Handover interrupt
|
||||
- description: Stop acknowledge interrupt
|
||||
- description: Shutdown acknowledge interrupt
|
||||
|
||||
interrupt-names:
|
||||
minItems: 5
|
||||
items:
|
||||
- const: wdog
|
||||
- const: fatal
|
||||
- const: ready
|
||||
- const: handover
|
||||
- const: stop-ack
|
||||
- const: shutdown-ack
|
||||
|
||||
qcom,smem-states:
|
||||
maxItems: 1
|
||||
description: States used by the AP to signal the Hexagon core
|
||||
|
||||
qcom,smem-state-names:
|
||||
maxItems: 1
|
||||
description: The names of the state bits used for SMP2P output
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
||||
@@ -45,6 +45,34 @@ properties:
|
||||
maxItems: 1
|
||||
description: Firmware name for the Hexagon core
|
||||
|
||||
interrupts:
|
||||
minItems: 5
|
||||
items:
|
||||
- description: Watchdog interrupt
|
||||
- description: Fatal interrupt
|
||||
- description: Ready interrupt
|
||||
- description: Handover interrupt
|
||||
- description: Stop acknowledge interrupt
|
||||
- description: Shutdown acknowledge interrupt
|
||||
|
||||
interrupt-names:
|
||||
minItems: 5
|
||||
items:
|
||||
- const: wdog
|
||||
- const: fatal
|
||||
- const: ready
|
||||
- const: handover
|
||||
- const: stop-ack
|
||||
- const: shutdown-ack
|
||||
|
||||
qcom,smem-states:
|
||||
maxItems: 1
|
||||
description: States used by the AP to signal the Hexagon core
|
||||
|
||||
qcom,smem-state-names:
|
||||
maxItems: 1
|
||||
description: The names of the state bits used for SMP2P output
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
||||
@@ -30,10 +30,22 @@ properties:
|
||||
- const: xo
|
||||
|
||||
interrupts:
|
||||
minItems: 6
|
||||
items:
|
||||
- description: Watchdog interrupt
|
||||
- description: Fatal interrupt
|
||||
- description: Ready interrupt
|
||||
- description: Handover interrupt
|
||||
- description: Stop acknowledge interrupt
|
||||
- description: Shutdown acknowledge interrupt
|
||||
|
||||
interrupt-names:
|
||||
minItems: 6
|
||||
items:
|
||||
- const: wdog
|
||||
- const: fatal
|
||||
- const: ready
|
||||
- const: handover
|
||||
- const: stop-ack
|
||||
- const: shutdown-ack
|
||||
|
||||
power-domains:
|
||||
items:
|
||||
@@ -59,6 +71,14 @@ properties:
|
||||
maxItems: 1
|
||||
description: Firmware name for the Hexagon core
|
||||
|
||||
qcom,smem-states:
|
||||
maxItems: 1
|
||||
description: States used by the AP to signal the Hexagon core
|
||||
|
||||
qcom,smem-state-names:
|
||||
maxItems: 1
|
||||
description: The names of the state bits used for SMP2P output
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
||||
@@ -51,6 +51,26 @@ properties:
|
||||
and devices related to the remoteproc core.
|
||||
unevaluatedProperties: false
|
||||
|
||||
interrupts:
|
||||
minItems: 5
|
||||
items:
|
||||
- description: Watchdog interrupt
|
||||
- description: Fatal interrupt
|
||||
- description: Ready interrupt
|
||||
- description: Handover interrupt
|
||||
- description: Stop acknowledge interrupt
|
||||
- description: Shutdown acknowledge interrupt
|
||||
|
||||
interrupt-names:
|
||||
minItems: 5
|
||||
items:
|
||||
- const: wdog
|
||||
- const: fatal
|
||||
- const: ready
|
||||
- const: handover
|
||||
- const: stop-ack
|
||||
- const: shutdown-ack
|
||||
|
||||
qcom,smem-states:
|
||||
$ref: /schemas/types.yaml#/definitions/phandle-array
|
||||
description: States used by the AP to signal the Hexagon core
|
||||
|
||||
@@ -51,6 +51,34 @@ properties:
|
||||
maxItems: 1
|
||||
description: Firmware name for the Hexagon core
|
||||
|
||||
interrupts:
|
||||
minItems: 5
|
||||
items:
|
||||
- description: Watchdog interrupt
|
||||
- description: Fatal interrupt
|
||||
- description: Ready interrupt
|
||||
- description: Handover interrupt
|
||||
- description: Stop acknowledge interrupt
|
||||
- description: Shutdown acknowledge interrupt
|
||||
|
||||
interrupt-names:
|
||||
minItems: 5
|
||||
items:
|
||||
- const: wdog
|
||||
- const: fatal
|
||||
- const: ready
|
||||
- const: handover
|
||||
- const: stop-ack
|
||||
- const: shutdown-ack
|
||||
|
||||
qcom,smem-states:
|
||||
maxItems: 1
|
||||
description: States used by the AP to signal the Hexagon core
|
||||
|
||||
qcom,smem-state-names:
|
||||
maxItems: 1
|
||||
description: The names of the state bits used for SMP2P output
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
||||
@@ -45,6 +45,34 @@ properties:
|
||||
maxItems: 1
|
||||
description: Firmware name for the Hexagon core
|
||||
|
||||
interrupts:
|
||||
minItems: 5
|
||||
items:
|
||||
- description: Watchdog interrupt
|
||||
- description: Fatal interrupt
|
||||
- description: Ready interrupt
|
||||
- description: Handover interrupt
|
||||
- description: Stop acknowledge interrupt
|
||||
- description: Shutdown acknowledge interrupt
|
||||
|
||||
interrupt-names:
|
||||
minItems: 5
|
||||
items:
|
||||
- const: wdog
|
||||
- const: fatal
|
||||
- const: ready
|
||||
- const: handover
|
||||
- const: stop-ack
|
||||
- const: shutdown-ack
|
||||
|
||||
qcom,smem-states:
|
||||
maxItems: 1
|
||||
description: States used by the AP to signal the Hexagon core
|
||||
|
||||
qcom,smem-state-names:
|
||||
maxItems: 1
|
||||
description: The names of the state bits used for SMP2P output
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
||||
@@ -39,8 +39,36 @@ properties:
|
||||
maxItems: 1
|
||||
description: Firmware name for the Hexagon core
|
||||
|
||||
interrupts:
|
||||
minItems: 5
|
||||
items:
|
||||
- description: Watchdog interrupt
|
||||
- description: Fatal interrupt
|
||||
- description: Ready interrupt
|
||||
- description: Handover interrupt
|
||||
- description: Stop acknowledge interrupt
|
||||
- description: Shutdown acknowledge interrupt
|
||||
|
||||
interrupt-names:
|
||||
minItems: 5
|
||||
items:
|
||||
- const: wdog
|
||||
- const: fatal
|
||||
- const: ready
|
||||
- const: handover
|
||||
- const: stop-ack
|
||||
- const: shutdown-ack
|
||||
|
||||
smd-edge: false
|
||||
|
||||
qcom,smem-states:
|
||||
maxItems: 1
|
||||
description: States used by the AP to signal the Hexagon core
|
||||
|
||||
qcom,smem-state-names:
|
||||
maxItems: 1
|
||||
description: The names of the state bits used for SMP2P output
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
||||
@@ -61,6 +61,34 @@ properties:
|
||||
maxItems: 1
|
||||
description: Firmware name for the Hexagon core
|
||||
|
||||
interrupts:
|
||||
minItems: 5
|
||||
items:
|
||||
- description: Watchdog interrupt
|
||||
- description: Fatal interrupt
|
||||
- description: Ready interrupt
|
||||
- description: Handover interrupt
|
||||
- description: Stop acknowledge interrupt
|
||||
- description: Shutdown acknowledge interrupt
|
||||
|
||||
interrupt-names:
|
||||
minItems: 5
|
||||
items:
|
||||
- const: wdog
|
||||
- const: fatal
|
||||
- const: ready
|
||||
- const: handover
|
||||
- const: stop-ack
|
||||
- const: shutdown-ack
|
||||
|
||||
qcom,smem-states:
|
||||
maxItems: 1
|
||||
description: States used by the AP to signal the Hexagon core
|
||||
|
||||
qcom,smem-state-names:
|
||||
maxItems: 1
|
||||
description: The names of the state bits used for SMP2P output
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
||||
@@ -55,6 +55,34 @@ properties:
|
||||
maxItems: 1
|
||||
description: Firmware name for the Hexagon core
|
||||
|
||||
interrupts:
|
||||
minItems: 5
|
||||
items:
|
||||
- description: Watchdog interrupt
|
||||
- description: Fatal interrupt
|
||||
- description: Ready interrupt
|
||||
- description: Handover interrupt
|
||||
- description: Stop acknowledge interrupt
|
||||
- description: Shutdown acknowledge interrupt
|
||||
|
||||
interrupt-names:
|
||||
minItems: 5
|
||||
items:
|
||||
- const: wdog
|
||||
- const: fatal
|
||||
- const: ready
|
||||
- const: handover
|
||||
- const: stop-ack
|
||||
- const: shutdown-ack
|
||||
|
||||
qcom,smem-states:
|
||||
maxItems: 1
|
||||
description: States used by the AP to signal the Hexagon core
|
||||
|
||||
qcom,smem-state-names:
|
||||
maxItems: 1
|
||||
description: The names of the state bits used for SMP2P output
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
||||
@@ -17,6 +17,9 @@ properties:
|
||||
compatible:
|
||||
oneOf:
|
||||
- enum:
|
||||
- qcom,eliza-cdsp-pas
|
||||
- qcom,hawi-mpss-pas
|
||||
- qcom,maili-mpss-pas
|
||||
- qcom,sdx75-mpss-pas
|
||||
- qcom,sm8550-adsp-pas
|
||||
- qcom,sm8550-cdsp-pas
|
||||
@@ -29,9 +32,11 @@ properties:
|
||||
- qcom,x1e80100-cdsp-pas
|
||||
- items:
|
||||
- enum:
|
||||
- qcom,eliza-adsp-pas
|
||||
- qcom,glymur-adsp-pas
|
||||
- qcom,hawi-adsp-pas
|
||||
- qcom,kaanapali-adsp-pas
|
||||
- qcom,maili-adsp-pas
|
||||
- qcom,sm8750-adsp-pas
|
||||
- const: qcom,sm8550-adsp-pas
|
||||
- items:
|
||||
@@ -39,6 +44,7 @@ properties:
|
||||
- qcom,glymur-cdsp-pas
|
||||
- qcom,hawi-cdsp-pas
|
||||
- qcom,kaanapali-cdsp-pas
|
||||
- qcom,maili-cdsp-pas
|
||||
- const: qcom,sm8550-cdsp-pas
|
||||
- items:
|
||||
- const: qcom,sm8750-cdsp-pas
|
||||
@@ -75,6 +81,34 @@ properties:
|
||||
- description: DSM Memory region 2
|
||||
- description: Memory region for Qlink Logging
|
||||
|
||||
interrupts:
|
||||
minItems: 5
|
||||
items:
|
||||
- description: Watchdog interrupt
|
||||
- description: Fatal interrupt
|
||||
- description: Ready interrupt
|
||||
- description: Handover interrupt
|
||||
- description: Stop acknowledge interrupt
|
||||
- description: Shutdown acknowledge interrupt
|
||||
|
||||
interrupt-names:
|
||||
minItems: 5
|
||||
items:
|
||||
- const: wdog
|
||||
- const: fatal
|
||||
- const: ready
|
||||
- const: handover
|
||||
- const: stop-ack
|
||||
- const: shutdown-ack
|
||||
|
||||
qcom,smem-states:
|
||||
maxItems: 1
|
||||
description: States used by the AP to signal the Hexagon core
|
||||
|
||||
qcom,smem-state-names:
|
||||
maxItems: 1
|
||||
description: The names of the state bits used for SMP2P output
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
@@ -104,12 +138,15 @@ allOf:
|
||||
compatible:
|
||||
contains:
|
||||
enum:
|
||||
- qcom,eliza-adsp-pas
|
||||
- qcom,glymur-adsp-pas
|
||||
- qcom,glymur-cdsp-pas
|
||||
- qcom,hawi-adsp-pas
|
||||
- qcom,hawi-cdsp-pas
|
||||
- qcom,kaanapali-adsp-pas
|
||||
- qcom,kaanapali-cdsp-pas
|
||||
- qcom,maili-adsp-pas
|
||||
- qcom,maili-cdsp-pas
|
||||
- qcom,sm8750-adsp-pas
|
||||
then:
|
||||
properties:
|
||||
@@ -139,6 +176,7 @@ allOf:
|
||||
compatible:
|
||||
contains:
|
||||
enum:
|
||||
- qcom,eliza-cdsp-pas
|
||||
- qcom,sm8750-cdsp-pas
|
||||
then:
|
||||
properties:
|
||||
@@ -168,6 +206,8 @@ allOf:
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- qcom,hawi-mpss-pas
|
||||
- qcom,maili-mpss-pas
|
||||
- qcom,sdx75-mpss-pas
|
||||
- qcom,sm8650-mpss-pas
|
||||
then:
|
||||
@@ -218,6 +258,8 @@ allOf:
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- qcom,hawi-mpss-pas
|
||||
- qcom,maili-mpss-pas
|
||||
- qcom,sdx75-mpss-pas
|
||||
- qcom,sm8550-mpss-pas
|
||||
- qcom,sm8650-mpss-pas
|
||||
@@ -253,6 +295,25 @@ allOf:
|
||||
- const: mxc
|
||||
- const: nsp
|
||||
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
enum:
|
||||
- qcom,eliza-cdsp-pas
|
||||
then:
|
||||
properties:
|
||||
power-domains:
|
||||
items:
|
||||
- description: CX power domain
|
||||
- description: MX power domain
|
||||
- description: NSP power domain
|
||||
power-domain-names:
|
||||
items:
|
||||
- const: cx
|
||||
- const: mx
|
||||
- const: nsp
|
||||
|
||||
unevaluatedProperties: false
|
||||
|
||||
examples:
|
||||
|
||||
@@ -0,0 +1,89 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/remoteproc/ti,am3352-wkup-m3.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: TI AM33xx/AM43xx Wakeup M3 Remote Processor
|
||||
|
||||
maintainers:
|
||||
- Suman Anna <s-anna@ti.com>
|
||||
- Bhargav Joshi <j.bhargav.u@gmail.com>
|
||||
|
||||
description:
|
||||
The TI AM33xx and AM43xx family of devices use a small Cortex M3 co-processor
|
||||
(commonly referred to as Wakeup M3 or CM3) to help with various low power
|
||||
tasks that cannot be controlled from the MPU. This CM3 processor requires a
|
||||
firmware binary to accomplish this. A wkup_m3 device node is used to
|
||||
represent the Wakeup M3 processor instance within the SoC. It is added as a
|
||||
child node of the parent interconnect bus (l4_wkup) through which it is
|
||||
accessible to the MPU.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- ti,am3352-wkup-m3
|
||||
- ti,am4372-wkup-m3
|
||||
|
||||
reg:
|
||||
items:
|
||||
- description: Address range for UMEM
|
||||
- description: Address range for DMEM
|
||||
|
||||
reg-names:
|
||||
items:
|
||||
- const: umem
|
||||
- const: dmem
|
||||
|
||||
ti,pm-firmware:
|
||||
$ref: /schemas/types.yaml#/definitions/string
|
||||
description:
|
||||
Name of firmware file to be used for loading and booting the wkup_m3
|
||||
remote processor.
|
||||
|
||||
resets:
|
||||
maxItems: 1
|
||||
|
||||
reset-names:
|
||||
items:
|
||||
- const: rstctrl
|
||||
|
||||
ti,hwmods:
|
||||
$ref: /schemas/types.yaml#/definitions/string
|
||||
deprecated: true
|
||||
description:
|
||||
Name of the hwmod associated with the wkupm3 device.
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- reg-names
|
||||
- ti,pm-firmware
|
||||
|
||||
dependencies:
|
||||
resets: [reset-names]
|
||||
reset-names: [resets]
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
target-module@0 {
|
||||
compatible = "ti,sysc-omap4", "ti,sysc";
|
||||
reg = <0x0 0x4>;
|
||||
reg-names = "rev";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
ranges = <0x00000000 0x00000000 0x4000>,
|
||||
<0x00080000 0x00080000 0x2000>;
|
||||
|
||||
cpu@0 {
|
||||
compatible = "ti,am3352-wkup-m3";
|
||||
reg = <0x00000000 0x4000>,
|
||||
<0x00080000 0x2000>;
|
||||
reg-names = "umem", "dmem";
|
||||
resets = <&prm_wkup 3>;
|
||||
reset-names = "rstctrl";
|
||||
ti,pm-firmware = "am335x-pm-firmware.elf";
|
||||
};
|
||||
};
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user