diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2023-04-26 02:38:25 +0200 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2023-04-26 02:38:25 +0200 |
commit | 3361e9a4ea957b09c5d6242613360c415194dbb5 (patch) | |
tree | 3af326023edaa8fc12053d3821d8eba2a1926f4c /Documentation/devicetree/bindings/remoteproc/ti,k3-r5f-rproc.yaml | |
parent | Merge tag 'rpmsg-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/remot... (diff) | |
parent | remoteproc: st: Use of_property_present() for testing DT property presence (diff) | |
download | linux-3361e9a4ea957b09c5d6242613360c415194dbb5.tar.xz linux-3361e9a4ea957b09c5d6242613360c415194dbb5.zip |
Merge tag 'rproc-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/remoteproc/linux
Pull remoteproc updates from Bjorn Andersson:
- Unnecessary type casts from the 'void *' rproc->priv pointer are
dropped throughout the subsystem.
- A kernel-doc error is corrected in the Mediatek SCPI IPI
implementation
- The firmware loading onto the IMX DSP remote processors is reworked
to avoid non-32bit memory operations. A module parameter is
introduced to assist development of firmware without communication
abilities in place. Error paths in imx_dsp_rproc_mbox_alloc() is
cleaned up
- The cluster configuration handling in the TI K3 R5 driver is
corrected and support for the single-R5 core found in the TI AM62x
SoC family is introduced
- The TI PRU driver device- to virtual-address translation is updated
to avoid compiler warning about the unsigned device-address always
being larger than 0
- The ST remoteproc driver is transitioned to use of_property_present()
- Issues with kicks arriving after the STM32 remote processor has been
shut down are mitigated by checking the processor's state before
handling them.
- Support for mailbox channels for communication with the remote
processors are added to the Xilinx R5 remoteproc driver. The naming
of carveouts are corrected and their parsing is reworked. For this a
couple of fixes targeting the mailbox subsystem are picked up here as
well.
- Reference counting of of_nodes are corrected in the ST, STM32, RCAR
and IMX remoteproc drivers
* tag 'rproc-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/remoteproc/linux: (24 commits)
remoteproc: st: Use of_property_present() for testing DT property presence
dt-bindings: remoteproc: Drop unneeded quotes
remoteproc: imx_dsp_rproc: Fix kernel test robot sparse warning
remoteproc: imx_dsp_rproc: Improve exception handling in imx_dsp_rproc_mbox_alloc()
remoteproc: pru: Remove always true check positive unsigned value
dt-bindings: remoteproc: stm32-rproc: Typo fix
remoteproc: stm32_rproc: Add mutex protection for workqueue
remoteproc: Remove unnecessary (void*) conversions
remoteproc: imx_dsp_rproc: Call of_node_put() on iteration error
remoteproc: imx_rproc: Call of_node_put() on iteration error
remoteproc: rcar_rproc: Call of_node_put() on iteration error
remoteproc: st: Call of_node_put() on iteration error
remoteproc: stm32: Call of_node_put() on iteration error
remoteproc: k3-r5: Use separate compatible string for TI AM62x SoC family
dt-bindings: remoteproc: ti: Add new compatible for AM62 SoC family
remoteproc: k3-r5: Simplify cluster mode setting usage
remoteproc/mtk_scpi_ipi: Fix one kernel-doc comment
remoteproc: xilinx: Add mailbox channels for rpmsg
drivers: remoteproc: xilinx: Fix carveout names
mailbox: zynqmp: Fix typo in IPI documentation
...
Diffstat (limited to 'Documentation/devicetree/bindings/remoteproc/ti,k3-r5f-rproc.yaml')
-rw-r--r-- | Documentation/devicetree/bindings/remoteproc/ti,k3-r5f-rproc.yaml | 76 |
1 files changed, 55 insertions, 21 deletions
diff --git a/Documentation/devicetree/bindings/remoteproc/ti,k3-r5f-rproc.yaml b/Documentation/devicetree/bindings/remoteproc/ti,k3-r5f-rproc.yaml index fb9605f0655b..fcc3db97fe8f 100644 --- a/Documentation/devicetree/bindings/remoteproc/ti,k3-r5f-rproc.yaml +++ b/Documentation/devicetree/bindings/remoteproc/ti,k3-r5f-rproc.yaml @@ -21,6 +21,9 @@ description: | called "Single-CPU" mode, where only Core0 is used, but with ability to use Core1's TCMs as well. + AM62 SoC family support a single R5F core only which runs Device Manager + firmware and can also be used as a remote processor with IPC communication. + Each Dual-Core R5F sub-system is represented as a single DTS node representing the cluster, with a pair of child DT nodes representing the individual R5F cores. Each node has a number of required or optional @@ -34,10 +37,11 @@ properties: compatible: enum: + - ti,am62-r5fss + - ti,am64-r5fss - ti,am654-r5fss - - ti,j721e-r5fss - ti,j7200-r5fss - - ti,am64-r5fss + - ti,j721e-r5fss - ti,j721s2-r5fss power-domains: @@ -64,10 +68,17 @@ properties: $ref: /schemas/types.yaml#/definitions/uint32 description: | Configuration Mode for the Dual R5F cores within the R5F cluster. - Should be either a value of 1 (LockStep mode) or 0 (Split mode) on + For most SoCs (AM65x, J721E, J7200, J721s2), + It should be either a value of 1 (LockStep mode) or 0 (Split mode) on most SoCs (AM65x, J721E, J7200, J721s2), default is LockStep mode if - omitted; and should be either a value of 0 (Split mode) or 2 - (Single-CPU mode) on AM64x SoCs, default is Split mode if omitted. + omitted. + For AM64x SoCs, + It should be either a value of 0 (Split mode) or 2 (Single-CPU mode) and + default is Split mode if omitted. + For AM62x SoCs, + It should be set as 3 (Single-Core mode) which is also the default if + omitted. + # R5F Processor Child Nodes: # ========================== @@ -80,7 +91,9 @@ patternProperties: node representing a TI instantiation of the Arm Cortex R5F core. There are some specific integration differences for the IP like the usage of a Region Address Translator (RAT) for translating the larger SoC bus - addresses into a 32-bit address space for the processor. + addresses into a 32-bit address space for the processor. For AM62x, + the R5F Sub-System device node should only define one R5F child node + as it has only one core available. Each R5F core has an associated 64 KB of Tightly-Coupled Memory (TCM) internal memories split between two banks - TCMA and TCMB (further @@ -100,10 +113,11 @@ patternProperties: properties: compatible: enum: + - ti,am62-r5f + - ti,am64-r5f - ti,am654-r5f - - ti,j721e-r5f - ti,j7200-r5f - - ti,am64-r5f + - ti,j721e-r5f - ti,j721s2-r5f reg: @@ -208,19 +222,39 @@ patternProperties: unevaluatedProperties: false -if: - properties: - compatible: - enum: - - ti,am64-r5fss -then: - properties: - ti,cluster-mode: - enum: [0, 2] -else: - properties: - ti,cluster-mode: - enum: [0, 1] +allOf: + - if: + properties: + compatible: + enum: + - ti,am64-r5fss + then: + properties: + ti,cluster-mode: + enum: [0, 2] + + - if: + properties: + compatible: + enum: + - ti,am654-r5fss + - ti,j7200-r5fss + - ti,j721e-r5fss + - ti,j721s2-r5fss + then: + properties: + ti,cluster-mode: + enum: [0, 1] + + - if: + properties: + compatible: + enum: + - ti,am62-r5fss + then: + properties: + ti,cluster-mode: + enum: [3] required: - compatible |