~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/remoteproc/ti,omap-remoteproc.yaml

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /Documentation/devicetree/bindings/remoteproc/ti,omap-remoteproc.yaml (Version linux-6.12-rc7) and /Documentation/devicetree/bindings/remoteproc/ti,omap-remoteproc.yaml (Version linux-5.12.19)


  1 # SPDX-License-Identifier: (GPL-2.0-only OR BS !!   1 # SPDX-License-Identifier: (GPL-2.0-only or BSD-2-Clause)
  2 %YAML 1.2                                           2 %YAML 1.2
  3 ---                                                 3 ---
  4 $id: http://devicetree.org/schemas/remoteproc/      4 $id: http://devicetree.org/schemas/remoteproc/ti,omap-remoteproc.yaml#
  5 $schema: http://devicetree.org/meta-schemas/co      5 $schema: http://devicetree.org/meta-schemas/core.yaml#
  6                                                     6 
  7 title: OMAP4+ Remoteproc Devices                    7 title: OMAP4+ Remoteproc Devices
  8                                                     8 
  9 maintainers:                                        9 maintainers:
 10   - Suman Anna <s-anna@ti.com>                      10   - Suman Anna <s-anna@ti.com>
 11                                                    11 
 12 description:                                       12 description:
 13   The OMAP family of SoCs usually have one or      13   The OMAP family of SoCs usually have one or more slave processor sub-systems
 14   that are used to offload some of the process     14   that are used to offload some of the processor-intensive tasks, or to manage
 15   other hardware accelerators, for achieving v     15   other hardware accelerators, for achieving various system level goals.
 16                                                    16 
 17   The processor cores in the sub-system are us     17   The processor cores in the sub-system are usually behind an IOMMU, and may
 18   contain additional sub-modules like Internal     18   contain additional sub-modules like Internal RAM and/or ROMs, L1 and/or L2
 19   caches, an Interrupt Controller, a Cache Con     19   caches, an Interrupt Controller, a Cache Controller etc.
 20                                                    20 
 21   The OMAP SoCs usually have a DSP processor s     21   The OMAP SoCs usually have a DSP processor sub-system and/or an IPU processor
 22   sub-system. The DSP processor sub-system can     22   sub-system. The DSP processor sub-system can contain any of the TI's C64x,
 23   C66x or C67x family of DSP cores as the main     23   C66x or C67x family of DSP cores as the main execution unit. The IPU processor
 24   sub-system usually contains either a Dual-Co     24   sub-system usually contains either a Dual-Core Cortex-M3 or Dual-Core
 25   Cortex-M4 processors.                            25   Cortex-M4 processors.
 26                                                    26 
 27   Each remote processor sub-system is represen     27   Each remote processor sub-system is represented as a single DT node. Each node
 28   has a number of required or optional propert     28   has a number of required or optional properties that enable the OS running on
 29   the host processor (MPU) to perform the devi     29   the host processor (MPU) to perform the device management of the remote
 30   processor and to communicate with the remote     30   processor and to communicate with the remote processor. The various properties
 31   can be classified as constant or variable. T     31   can be classified as constant or variable. The constant properties are
 32   dictated by the SoC and does not change from     32   dictated by the SoC and does not change from one board to another having the
 33   same SoC. Examples of constant properties in     33   same SoC. Examples of constant properties include 'iommus', 'reg'. The
 34   variable properties are dictated by the syst     34   variable properties are dictated by the system integration aspects such as
 35   memory on the board, or configuration used w     35   memory on the board, or configuration used within the corresponding firmware
 36   image. Examples of variable properties inclu     36   image. Examples of variable properties include 'mboxes', 'memory-region',
 37   'timers', 'watchdog-timers' etc.                 37   'timers', 'watchdog-timers' etc.
 38                                                    38 
 39 properties:                                        39 properties:
 40   compatible:                                      40   compatible:
 41     enum:                                          41     enum:
 42       - ti,omap4-dsp                               42       - ti,omap4-dsp
 43       - ti,omap5-dsp                               43       - ti,omap5-dsp
 44       - ti,dra7-dsp                                44       - ti,dra7-dsp
 45       - ti,omap4-ipu                               45       - ti,omap4-ipu
 46       - ti,omap5-ipu                               46       - ti,omap5-ipu
 47       - ti,dra7-ipu                                47       - ti,dra7-ipu
 48                                                    48 
 49   iommus:                                          49   iommus:
 50     minItems: 1                                    50     minItems: 1
 51     maxItems: 2                                    51     maxItems: 2
 52     description: |                                 52     description: |
 53       phandles to OMAP IOMMU nodes, that need      53       phandles to OMAP IOMMU nodes, that need to be programmed
 54       for this remote processor to access any      54       for this remote processor to access any external RAM memory or
 55       other peripheral device address spaces.      55       other peripheral device address spaces. This property usually
 56       has only a single phandle. Multiple phan     56       has only a single phandle. Multiple phandles are used only in
 57       cases where the sub-system has different     57       cases where the sub-system has different ports for different
 58       sub-modules within the processor sub-sys     58       sub-modules within the processor sub-system (eg: DRA7 DSPs),
 59       and need the same programming in both th     59       and need the same programming in both the MMUs.
 60                                                    60 
 61   mboxes:                                          61   mboxes:
 62     minItems: 1                                    62     minItems: 1
 63     maxItems: 2                                    63     maxItems: 2
 64     description: |                                 64     description: |
 65       OMAP Mailbox specifier denoting the sub-     65       OMAP Mailbox specifier denoting the sub-mailbox, to be used for
 66       communication with the remote processor.     66       communication with the remote processor. The specifier format is
 67       as per the bindings,                         67       as per the bindings,
 68       Documentation/devicetree/bindings/mailbo !!  68       Documentation/devicetree/bindings/mailbox/omap-mailbox.txt
 69       This property should match with the sub-     69       This property should match with the sub-mailbox node used in
 70       the firmware image.                          70       the firmware image.
 71                                                    71 
 72   clocks:                                          72   clocks:
 73     maxItems: 1                                    73     maxItems: 1
 74     description: |                                 74     description: |
 75       Main functional clock for the remote pro     75       Main functional clock for the remote processor
 76                                                    76 
 77   resets:                                          77   resets:
 78     minItems: 1                                    78     minItems: 1
 79     maxItems: 2                                    79     maxItems: 2
 80     description: |                                 80     description: |
 81       Reset handles for the remote processor       81       Reset handles for the remote processor
 82                                                    82 
 83   firmware-name:                                   83   firmware-name:
 84     description: |                                 84     description: |
 85       Default name of the firmware to load to      85       Default name of the firmware to load to the remote processor.
 86                                                    86 
 87 # Optional properties:                             87 # Optional properties:
 88 # --------------------                             88 # --------------------
 89 # Some of these properties are mandatory on so     89 # Some of these properties are mandatory on some SoCs, and some are optional
 90 # depending on the configuration of the firmwa     90 # depending on the configuration of the firmware image to be executed on the
 91 # remote processor. The conditions are mention     91 # remote processor. The conditions are mentioned for each property.
 92 #                                                  92 #
 93 # The following are the optional properties:       93 # The following are the optional properties:
 94                                                    94 
 95   memory-region:                                   95   memory-region:
 96     maxItems: 1                                !!  96     $ref: /schemas/types.yaml#/definitions/phandle
 97     description: |                                 97     description: |
 98       phandle to the reserved memory node to b     98       phandle to the reserved memory node to be associated
 99       with the remoteproc device. The reserved     99       with the remoteproc device. The reserved memory node
100       can be a CMA memory node, and should be     100       can be a CMA memory node, and should be defined as
101       per the bindings,                           101       per the bindings,
102       Documentation/devicetree/bindings/reserv    102       Documentation/devicetree/bindings/reserved-memory/reserved-memory.txt
103                                                   103 
104   reg:                                            104   reg:
105     description: |                                105     description: |
106       Address space for any remoteproc memorie    106       Address space for any remoteproc memories present on
107       the SoC. Should contain an entry for eac    107       the SoC. Should contain an entry for each value in
108       'reg-names'. These are mandatory for all    108       'reg-names'. These are mandatory for all DSP and IPU
109       processors that have them (OMAP4/OMAP5 D    109       processors that have them (OMAP4/OMAP5 DSPs do not have
110       any RAMs)                                   110       any RAMs)
111                                                   111 
112   reg-names:                                      112   reg-names:
113     description: |                                113     description: |
114       Required names for each of the address s    114       Required names for each of the address spaces defined in
115       the 'reg' property. Expects the names fr    115       the 'reg' property. Expects the names from the following
116       list, in the specified order, each repre    116       list, in the specified order, each representing the corresponding
117       internal RAM memory region.                 117       internal RAM memory region.
118     minItems: 1                                   118     minItems: 1
                                                   >> 119     maxItems: 3
119     items:                                        120     items:
120       - const: l2ram                              121       - const: l2ram
121       - const: l1pram                             122       - const: l1pram
122       - const: l1dram                             123       - const: l1dram
123                                                   124 
124   ti,bootreg:                                     125   ti,bootreg:
125     $ref: /schemas/types.yaml#/definitions/pha    126     $ref: /schemas/types.yaml#/definitions/phandle-array
126     items:                                     !! 127     description: |
127       - items:                                 !! 128       Should be a triple of the phandle to the System Control
128           - description: phandle to the System !! 129       Configuration region that contains the boot address
129           - description: register offset of th !! 130       register, the register offset of the boot address
130           - description: the bit shift within  !! 131       register within the System Control module, and the bit
131     description:                               !! 132       shift within the register. This property is required for
132       This property is required for all the DS !! 133       all the DSP instances on OMAP4, OMAP5 and DRA7xx SoCs.
133       and DRA7xx SoCs.                         << 
134                                                   134 
135   ti,autosuspend-delay-ms:                        135   ti,autosuspend-delay-ms:
136     description: |                                136     description: |
137       Custom autosuspend delay for the remotep    137       Custom autosuspend delay for the remoteproc in milliseconds.
138       Recommended values is preferable to be i    138       Recommended values is preferable to be in the order of couple
139       of seconds. A negative value can also be    139       of seconds. A negative value can also be used to disable the
140       autosuspend behavior.                       140       autosuspend behavior.
141                                                   141 
142   ti,timers:                                      142   ti,timers:
143     $ref: /schemas/types.yaml#/definitions/pha    143     $ref: /schemas/types.yaml#/definitions/phandle-array
144     items:                                     << 
145       maxItems: 1                              << 
146     description: |                                144     description: |
147       One or more phandles to OMAP DMTimer nod    145       One or more phandles to OMAP DMTimer nodes, that serve
148       as System/Tick timers for the OS running    146       as System/Tick timers for the OS running on the remote
149       processors. This will usually be a singl    147       processors. This will usually be a single timer if the
150       processor sub-system is running in SMP m    148       processor sub-system is running in SMP mode, or one per
151       core in the processor sub-system. This c    149       core in the processor sub-system. This can also be used
152       to reserve specific timers to be dedicat    150       to reserve specific timers to be dedicated to the
153       remote processors.                          151       remote processors.
154                                                   152 
155       This property is mandatory on remote pro    153       This property is mandatory on remote processors requiring
156       external tick wakeup, and to support Pow    154       external tick wakeup, and to support Power Management
157       features. The timers to be used should m    155       features. The timers to be used should match with the
158       timers used in the firmware image.          156       timers used in the firmware image.
159                                                   157 
160   ti,watchdog-timers:                             158   ti,watchdog-timers:
161     $ref: /schemas/types.yaml#/definitions/pha    159     $ref: /schemas/types.yaml#/definitions/phandle-array
162     items:                                     << 
163       maxItems: 1                              << 
164     description: |                                160     description: |
165       One or more phandles to OMAP DMTimer nod    161       One or more phandles to OMAP DMTimer nodes, used to
166       serve as Watchdog timers for the process    162       serve as Watchdog timers for the processor cores. This
167       will usually be one per executing proces    163       will usually be one per executing processor core, even
168       if the processor sub-system is running a    164       if the processor sub-system is running a SMP OS.
169                                                   165 
170       The timers to be used should match with     166       The timers to be used should match with the watchdog
171       timers used in the firmware image.          167       timers used in the firmware image.
172                                                   168 
173 if:                                               169 if:
174   properties:                                     170   properties:
175     compatible:                                   171     compatible:
176       enum:                                       172       enum:
177         - ti,dra7-dsp                             173         - ti,dra7-dsp
178 then:                                             174 then:
179   properties:                                     175   properties:
180     reg:                                          176     reg:
181       minItems: 3                                 177       minItems: 3
182       maxItems: 3                                 178       maxItems: 3
183   required:                                       179   required:
184     - reg                                         180     - reg
185     - reg-names                                   181     - reg-names
186     - ti,bootreg                                  182     - ti,bootreg
187                                                   183 
188 else:                                             184 else:
189   if:                                             185   if:
190     properties:                                   186     properties:
191       compatible:                                 187       compatible:
192         enum:                                     188         enum:
193           - ti,omap4-ipu                          189           - ti,omap4-ipu
194           - ti,omap5-ipu                          190           - ti,omap5-ipu
195           - ti,dra7-ipu                           191           - ti,dra7-ipu
196   then:                                           192   then:
197     properties:                                   193     properties:
198       reg:                                        194       reg:
199         minItems: 1                               195         minItems: 1
200         maxItems: 1                               196         maxItems: 1
201       ti,bootreg: false                           197       ti,bootreg: false
202     required:                                     198     required:
203       - reg                                       199       - reg
204       - reg-names                                 200       - reg-names
205                                                   201 
206   else:                                           202   else:
207     properties:                                   203     properties:
208       reg: false                                  204       reg: false
209     required:                                     205     required:
210       - ti,bootreg                                206       - ti,bootreg
211                                                   207 
212 required:                                         208 required:
213   - compatible                                    209   - compatible
214   - iommus                                        210   - iommus
215   - mboxes                                        211   - mboxes
216   - clocks                                        212   - clocks
217   - resets                                        213   - resets
218   - firmware-name                                 214   - firmware-name
219                                                   215 
220 additionalProperties: false                       216 additionalProperties: false
221                                                   217 
222 examples:                                         218 examples:
223   - |                                             219   - |
224                                                   220 
225     //Example 1: OMAP4 DSP                        221     //Example 1: OMAP4 DSP
226                                                   222 
227     /* DSP Reserved Memory node */                223     /* DSP Reserved Memory node */
228     #include <dt-bindings/clock/omap4.h>          224     #include <dt-bindings/clock/omap4.h>
229     reserved-memory {                             225     reserved-memory {
230         #address-cells = <1>;                     226         #address-cells = <1>;
231         #size-cells = <1>;                        227         #size-cells = <1>;
232                                                   228 
233         dsp_memory_region: dsp-memory@98000000    229         dsp_memory_region: dsp-memory@98000000 {
234             compatible = "shared-dma-pool";       230             compatible = "shared-dma-pool";
235             reg = <0x98000000 0x800000>;          231             reg = <0x98000000 0x800000>;
236             reusable;                             232             reusable;
237         };                                        233         };
238     };                                            234     };
239                                                   235 
240     /* DSP node */                                236     /* DSP node */
241     ocp {                                         237     ocp {
242         dsp: dsp {                                238         dsp: dsp {
243             compatible = "ti,omap4-dsp";          239             compatible = "ti,omap4-dsp";
244             ti,bootreg = <&scm_conf 0x304 0>;     240             ti,bootreg = <&scm_conf 0x304 0>;
245             iommus = <&mmu_dsp>;                  241             iommus = <&mmu_dsp>;
246             mboxes = <&mailbox &mbox_dsp>;        242             mboxes = <&mailbox &mbox_dsp>;
247             memory-region = <&dsp_memory_regio    243             memory-region = <&dsp_memory_region>;
248             ti,timers = <&timer5>;                244             ti,timers = <&timer5>;
249             ti,watchdog-timers = <&timer6>;       245             ti,watchdog-timers = <&timer6>;
250             clocks = <&tesla_clkctrl OMAP4_DSP    246             clocks = <&tesla_clkctrl OMAP4_DSP_CLKCTRL 0>;
251             resets = <&prm_tesla 0>, <&prm_tes    247             resets = <&prm_tesla 0>, <&prm_tesla 1>;
252             firmware-name = "omap4-dsp-fw.xe64    248             firmware-name = "omap4-dsp-fw.xe64T";
253         };                                        249         };
254     };                                            250     };
255                                                   251 
256   - |+                                            252   - |+
257                                                   253 
258     //Example 2: OMAP5 IPU                        254     //Example 2: OMAP5 IPU
259                                                   255 
260     /* IPU Reserved Memory node */                256     /* IPU Reserved Memory node */
261     #include <dt-bindings/clock/omap5.h>          257     #include <dt-bindings/clock/omap5.h>
262     reserved-memory {                             258     reserved-memory {
263         #address-cells = <2>;                     259         #address-cells = <2>;
264         #size-cells = <2>;                        260         #size-cells = <2>;
265                                                   261 
266         ipu_memory_region: ipu-memory@95800000    262         ipu_memory_region: ipu-memory@95800000 {
267             compatible = "shared-dma-pool";       263             compatible = "shared-dma-pool";
268             reg = <0 0x95800000 0 0x3800000>;     264             reg = <0 0x95800000 0 0x3800000>;
269             reusable;                             265             reusable;
270         };                                        266         };
271     };                                            267     };
272                                                   268 
273     /* IPU node */                                269     /* IPU node */
274     ocp {                                         270     ocp {
275         #address-cells = <1>;                     271         #address-cells = <1>;
276         #size-cells = <1>;                        272         #size-cells = <1>;
277                                                   273 
278         ipu: ipu@55020000 {                       274         ipu: ipu@55020000 {
279             compatible = "ti,omap5-ipu";          275             compatible = "ti,omap5-ipu";
280             reg = <0x55020000 0x10000>;           276             reg = <0x55020000 0x10000>;
281             reg-names = "l2ram";                  277             reg-names = "l2ram";
282             iommus = <&mmu_ipu>;                  278             iommus = <&mmu_ipu>;
283             mboxes = <&mailbox &mbox_ipu>;        279             mboxes = <&mailbox &mbox_ipu>;
284             memory-region = <&ipu_memory_regio    280             memory-region = <&ipu_memory_region>;
285             ti,timers = <&timer3>, <&timer4>;     281             ti,timers = <&timer3>, <&timer4>;
286             ti,watchdog-timers = <&timer9>, <&    282             ti,watchdog-timers = <&timer9>, <&timer11>;
287             clocks = <&ipu_clkctrl OMAP5_MMU_I    283             clocks = <&ipu_clkctrl OMAP5_MMU_IPU_CLKCTRL 0>;
288             resets = <&prm_core 2>;               284             resets = <&prm_core 2>;
289             firmware-name = "omap5-ipu-fw.xem4    285             firmware-name = "omap5-ipu-fw.xem4";
290         };                                        286         };
291     };                                            287     };
292                                                   288 
293   - |+                                            289   - |+
294                                                   290 
295     //Example 3: DRA7xx/AM57xx DSP                291     //Example 3: DRA7xx/AM57xx DSP
296                                                   292 
297     /* DSP1 Reserved Memory node */               293     /* DSP1 Reserved Memory node */
298     #include <dt-bindings/clock/dra7.h>           294     #include <dt-bindings/clock/dra7.h>
299     reserved-memory {                             295     reserved-memory {
300         #address-cells = <2>;                     296         #address-cells = <2>;
301         #size-cells = <2>;                        297         #size-cells = <2>;
302                                                   298 
303         dsp1_memory_region: dsp1-memory@990000    299         dsp1_memory_region: dsp1-memory@99000000 {
304             compatible = "shared-dma-pool";       300             compatible = "shared-dma-pool";
305             reg = <0x0 0x99000000 0x0 0x400000    301             reg = <0x0 0x99000000 0x0 0x4000000>;
306             reusable;                             302             reusable;
307         };                                        303         };
308     };                                            304     };
309                                                   305 
310     /* DSP1 node */                               306     /* DSP1 node */
311     ocp {                                         307     ocp {
312         #address-cells = <1>;                     308         #address-cells = <1>;
313         #size-cells = <1>;                        309         #size-cells = <1>;
314                                                   310 
315         dsp1: dsp@40800000 {                      311         dsp1: dsp@40800000 {
316             compatible = "ti,dra7-dsp";           312             compatible = "ti,dra7-dsp";
317             reg = <0x40800000 0x48000>,           313             reg = <0x40800000 0x48000>,
318                   <0x40e00000 0x8000>,            314                   <0x40e00000 0x8000>,
319                   <0x40f00000 0x8000>;            315                   <0x40f00000 0x8000>;
320             reg-names = "l2ram", "l1pram", "l1    316             reg-names = "l2ram", "l1pram", "l1dram";
321             ti,bootreg = <&scm_conf 0x55c 0>;     317             ti,bootreg = <&scm_conf 0x55c 0>;
322             iommus = <&mmu0_dsp1>, <&mmu1_dsp1    318             iommus = <&mmu0_dsp1>, <&mmu1_dsp1>;
323             mboxes = <&mailbox5 &mbox_dsp1_ipc    319             mboxes = <&mailbox5 &mbox_dsp1_ipc3x>;
324             memory-region = <&dsp1_memory_regi    320             memory-region = <&dsp1_memory_region>;
325             ti,timers = <&timer5>;                321             ti,timers = <&timer5>;
326             ti,watchdog-timers = <&timer10>;      322             ti,watchdog-timers = <&timer10>;
327             resets = <&prm_dsp1 0>;               323             resets = <&prm_dsp1 0>;
328             clocks = <&dsp1_clkctrl DRA7_DSP1_    324             clocks = <&dsp1_clkctrl DRA7_DSP1_MMU0_DSP1_CLKCTRL 0>;
329             firmware-name = "dra7-dsp1-fw.xe66    325             firmware-name = "dra7-dsp1-fw.xe66";
330         };                                        326         };
331     };                                            327     };
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php