Skip to content

Commit 215865e

Browse files
h-nagallapraneethbajjuri
authored andcommitted
fix(U-Boot): Keep MCU-R5 boot specifics only for Jacinto devices
Sitara devices do not use MCU-R5 for boot purposes. So, keep MCU-R5 specifics to Jancinto devices. Signed-off-by: Hari Nagalla <hnagalla@ti.com>
1 parent d3cb382 commit 215865e

1 file changed

Lines changed: 93 additions & 92 deletions

File tree

source/linux/Foundational_Components/U-Boot/UG-RemoteProc.rst

Lines changed: 93 additions & 92 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ The below command will initialize all the available remote cores:
2121

2222
.. code-block:: console
2323
24-
=> rproc init
24+
=> rproc init
2525
2626
The below command will initialize just the given remote core
2727

@@ -53,10 +53,10 @@ image is loaded only after initializing the core.
5353

5454
.. code-block:: console
5555
56-
=> load mmc 1:2 0x90000000 /lib/firmware/j7-main-r5f0_0-fw
57-
2536540 bytes read in 112 ms (21.6 MiB/s)
58-
=> rproc load 2 0x90000000 0x${filesize}
59-
Load Remote Processor 2 with data@addr=0x90000000 2536540 bytes: Success!
56+
=> load mmc 1:2 0x90000000 /lib/firmware/j7-main-r5f0_0-fw
57+
2536540 bytes read in 112 ms (21.6 MiB/s)
58+
=> rproc load 2 0x90000000 0x${filesize}
59+
Load Remote Processor 2 with data@addr=0x90000000 2536540 bytes: Success!
6060
6161
6262
Starting
@@ -66,7 +66,7 @@ Successfully loaded remotecore can be started using the following command.
6666

6767
.. code-block:: console
6868
69-
=> rproc start 2
69+
=> rproc start 2
7070
7171
Stop
7272
^^^^^
@@ -75,18 +75,19 @@ A running remotecore can be stopped using the following command.
7575

7676
.. code-block:: console
7777
78-
=> rproc stop 2
78+
=> rproc stop 2
7979
8080
Make sure all the commands are run in the above given sequence. Currently IPC
8181
is not supported in U-boot.
8282

8383
Lockstep and Split mode
8484
^^^^^^^^^^^^^^^^^^^^^^^
85-
.. ifconfig:: CONFIG_part_variant in ('J722S')
8685

87-
.. note::
86+
.. ifconfig:: (CONFIG_sdk in ('SITARA')) or (CONFIG_part_variant in ('J722S'))
8887

89-
This platform does not have split cores for R5F so below information is just for show.
88+
.. note::
89+
90+
This is not relevant for this platform and is only applicable to R5 clusters with lockstep suport.
9091

9192
Cortex-R5F can be used in both lockstep (both cores run same code) and split
9293
mode (each core runs independently).
@@ -109,105 +110,105 @@ Refer to the below example on K3 J784S4 SoC.
109110

110111
* MAIN R5F:
111112

112-
arch/arm/dts/k3-j784s4-main.dtsi
113+
arch/arm/dts/k3-j784s4-main.dtsi
113114

114-
.. code-block:: dts
115+
.. code-block:: dts
115116
116-
main_r5fss0: r5fss@5c00000 {
117-
compatible = "ti,j721s2-r5fss";
118-
ti,cluster-mode = <1>; # set to lockstep-mode
119-
#address-cells = <1>;
120-
#size-cells = <1>;
121-
ranges = <0x5c00000 0x00 0x5c00000 0x20000>,
122-
<0x5d00000 0x00 0x5d00000 0x20000>;
123-
power-domains = <&k3_pds 336 TI_SCI_PD_EXCLUSIVE>;
124-
...
117+
main_r5fss0: r5fss@5c00000 {
118+
compatible = "ti,j721s2-r5fss";
119+
ti,cluster-mode = <1>; # set to lockstep-mode
120+
#address-cells = <1>;
121+
#size-cells = <1>;
122+
ranges = <0x5c00000 0x00 0x5c00000 0x20000>,
123+
<0x5d00000 0x00 0x5d00000 0x20000>;
124+
power-domains = <&k3_pds 336 TI_SCI_PD_EXCLUSIVE>;
125+
...
125126
126127
* Boot MCU R5F:
127128

128-
arch/arm/dts/k3-j784s4-mcu-wakeup.dtsi
129+
arch/arm/dts/k3-j784s4-mcu-wakeup.dtsi
129130

130-
.. code-block:: dts
131+
.. code-block:: dts
131132
132-
mcu_r5fss0: r5fss@41000000 {
133-
compatible = "ti,j721s2-r5fss";
134-
ti,cluster-mode = <1>; # set to lockstep-mode
135-
#address-cells = <1>;
136-
#size-cells = <1>;
137-
ranges = <0x41000000 0x00 0x41000000 0x20000>,
138-
...
133+
mcu_r5fss0: r5fss@41000000 {
134+
compatible = "ti,j721s2-r5fss";
135+
ti,cluster-mode = <1>; # set to lockstep-mode
136+
#address-cells = <1>;
137+
#size-cells = <1>;
138+
ranges = <0x41000000 0x00 0x41000000 0x20000>,
139+
...
139140
140-
arch/arm/dts/k3-j784s4-binman.dtsi
141+
arch/arm/dts/k3-j784s4-binman.dtsi
141142

142-
.. code-block:: dts
143+
.. code-block:: dts
143144
144-
&binman {
145-
tiboot3-j784s4-gp-evm.bin { # In the case of GP boards
146-
filename = "tiboot3-j784s4-gp-evm.bin";
147-
symlink = "tiboot3.bin";
148-
ti-secure-rom {
149-
content = <&u_boot_spl_unsigned>, <&ti_fs_gp>,
150-
<&combined_tifs_cfg_gp>, <&combined_dm_cfg_gp>;
151-
combined;
152-
dm-data;
153-
core-opts = <0>; # core-opts value should be set to 0 for lockstep-mode on boot core
154-
content-sbl = <&u_boot_spl_unsigned>;
155-
load = <0x41c00000>;
156-
...
145+
&binman {
146+
tiboot3-j784s4-gp-evm.bin { # In the case of GP boards
147+
filename = "tiboot3-j784s4-gp-evm.bin";
148+
symlink = "tiboot3.bin";
149+
ti-secure-rom {
150+
content = <&u_boot_spl_unsigned>, <&ti_fs_gp>,
151+
<&combined_tifs_cfg_gp>, <&combined_dm_cfg_gp>;
152+
combined;
153+
dm-data;
154+
core-opts = <0>; # core-opts value should be set to 0 for lockstep-mode on boot core
155+
content-sbl = <&u_boot_spl_unsigned>;
156+
load = <0x41c00000>;
157+
...
157158
158159
.. rubric:: Split-mode configuration
159160

160161
* MAIN R5F:
161162

162-
arch/arm/dts/k3-j784s4-main.dtsi
163+
arch/arm/dts/k3-j784s4-main.dtsi
163164

164-
.. code-block:: dts
165+
.. code-block:: dts
165166
166-
main_r5fss0: r5fss@5c00000 {
167-
compatible = "ti,j721s2-r5fss";
168-
ti,cluster-mode = <0>; # set to split-mode
169-
#address-cells = <1>;
170-
#size-cells = <1>;
171-
ranges = <0x5c00000 0x00 0x5c00000 0x20000>,
172-
<0x5d00000 0x00 0x5d00000 0x20000>;
173-
power-domains = <&k3_pds 336 TI_SCI_PD_EXCLUSIVE>;
174-
...
167+
main_r5fss0: r5fss@5c00000 {
168+
compatible = "ti,j721s2-r5fss";
169+
ti,cluster-mode = <0>; # set to split-mode
170+
#address-cells = <1>;
171+
#size-cells = <1>;
172+
ranges = <0x5c00000 0x00 0x5c00000 0x20000>,
173+
<0x5d00000 0x00 0x5d00000 0x20000>;
174+
power-domains = <&k3_pds 336 TI_SCI_PD_EXCLUSIVE>;
175+
...
175176
176177
* Boot MCU R5:
177178

178-
arch/arm/dts/k3-j784s4-mcu-wakeup.dtsi
179-
180-
.. code-block:: dts
181-
182-
mcu_r5fss0: r5fss@41000000 {
183-
compatible = "ti,j721s2-r5fss";
184-
ti,cluster-mode = <0>; # set to split-mode
185-
#address-cells = <1>;
186-
#size-cells = <1>;
187-
ranges = <0x41000000 0x00 0x41000000 0x20000>,
179+
arch/arm/dts/k3-j784s4-mcu-wakeup.dtsi
180+
181+
.. code-block:: dts
182+
183+
mcu_r5fss0: r5fss@41000000 {
184+
compatible = "ti,j721s2-r5fss";
185+
ti,cluster-mode = <0>; # set to split-mode
186+
#address-cells = <1>;
187+
#size-cells = <1>;
188+
ranges = <0x41000000 0x00 0x41000000 0x20000>,
189+
...
190+
191+
arch/arm/dts/k3-j784s4-binman.dtsi
192+
193+
.. code-block:: dts
194+
195+
&binman {
196+
tiboot3-j784s4-gp-evm.bin { # In the case of GP boards
197+
filename = "tiboot3-j784s4-gp-evm.bin";
198+
symlink = "tiboot3.bin";
199+
ti-secure-rom {
200+
content = <&u_boot_spl_unsigned>, <&ti_fs_gp>,
201+
<&combined_tifs_cfg_gp>, <&combined_dm_cfg_gp>;
202+
combined;
203+
dm-data;
204+
core-opts = <2>; # core-opts value should be set to 2 for split-mode on boot core
205+
content-sbl = <&u_boot_spl_unsigned>;
206+
load = <0x41c00000>;
188207
...
189208
190-
arch/arm/dts/k3-j784s4-binman.dtsi
191-
192-
.. code-block:: dts
193-
194-
&binman {
195-
tiboot3-j784s4-gp-evm.bin { # In the case of GP boards
196-
filename = "tiboot3-j784s4-gp-evm.bin";
197-
symlink = "tiboot3.bin";
198-
ti-secure-rom {
199-
content = <&u_boot_spl_unsigned>, <&ti_fs_gp>,
200-
<&combined_tifs_cfg_gp>, <&combined_dm_cfg_gp>;
201-
combined;
202-
dm-data;
203-
core-opts = <2>; # core-opts value should be set to 2 for split-mode on boot core
204-
content-sbl = <&u_boot_spl_unsigned>;
205-
load = <0x41c00000>;
206-
...
207-
208209
.. note::
209210

210-
From SDK 9.1 onward, default mode is split mode for boot cores.
211+
From SDK 9.1 onward, default mode is split mode for boot cores.
211212

212213
HS Devices
213214
^^^^^^^^^^
@@ -222,19 +223,19 @@ Steps for signing and updating firmware images in filesystem.
222223

223224
* Getting Security Dev Tool
224225

225-
.. code-block:: console
226+
.. code-block:: console
226227
227-
$ git clone https://git.ti.com/git/security-development-tools/core-secdev-k3.git -b master
228-
$ export TI_SECURE_DEV_PKG=`pwd`/core-secdev-k3
228+
$ git clone https://git.ti.com/git/security-development-tools/core-secdev-k3.git -b master
229+
$ export TI_SECURE_DEV_PKG=`pwd`/core-secdev-k3
229230
230231
* Export the path for secdev
231232

232-
.. code-block:: console
233+
.. code-block:: console
233234
234-
$ ${TI_SECURE_DEV_PKG}/scripts/secure-binary-image.sh $FIRMWARE $FIRMWARE.signed
235+
$ ${TI_SECURE_DEV_PKG}/scripts/secure-binary-image.sh $FIRMWARE $FIRMWARE.signed
235236
236237
* Updating firmware image
237238

238-
.. code-block:: console
239+
.. code-block:: console
239240
240-
$ ln -vfs $FIRMWARE.signed /lib/firmware/j7-main-r5f0_0-fw-sec
241+
$ ln -vfs $FIRMWARE.signed /lib/firmware/j7-main-r5f0_0-fw-sec

0 commit comments

Comments
 (0)