|
3 | 3 | # SPDX-License-Identifier: Apache-2.0
|
4 | 4 |
|
5 | 5 | proc rpu0_core0_rst { {mem "default"} } {
|
6 |
| - targets -set -filter {name =~ "DAP*"} |
7 |
| - #CRL write protect |
8 |
| - mwr -force 0xeb5e001c 0x0 |
9 |
| - mwr -force 0xEB580000 1 |
| 6 | + targets -set -filter {name =~ "Versal Gen 2*"} |
| 7 | + # CRL write protect |
| 8 | + mwr -force 0xeb5e001c 0 |
| 9 | + mwr -force 0xeb580000 1 |
10 | 10 | mwr -force 0xbbf20000 0xeafffffe
|
11 | 11 | # write BASE_HI and BASE_LO
|
12 |
| - if {$mem eq "ddr"} { |
13 |
| - set addr 0x100000 |
14 |
| - } elseif {$mem eq "tcm"} { |
15 |
| - set addr 0x0 |
16 |
| - } elseif {$mem eq "default"} { |
17 |
| - set addr 0xbbf20000 |
18 |
| - } |
19 |
| - mwr -force 0xEB588008 $addr |
| 12 | + if {$mem eq "ddr"} { |
| 13 | + set addr 0x100000 |
| 14 | + } elseif {$mem eq "tcm"} { |
| 15 | + set addr 0 |
| 16 | + } elseif {$mem eq "default"} { |
| 17 | + set addr 0xbbf20000 |
| 18 | + } |
| 19 | + mwr -force 0xeb588008 $addr |
20 | 20 | # write TCMBOOT as one
|
21 |
| - mask_write 0xEB588000 0x10 0x10 |
| 21 | + mask_write 0xeb588000 0x10 0x10 |
22 | 22 | # reset CORE0A_RESET out of reset A_TOPRESET and CORE0A_POR
|
23 |
| - mask_write 0xEB5E0310 0x10101 0x1 |
| 23 | + mask_write 0xeb5e0310 0x10101 0x1 |
24 | 24 | # out of reset CORE0A_RESET
|
25 |
| - mask_write 0xEB5E0310 0x1 0x0 |
26 |
| - targets -set -filter {name =~ "Cortex-R52*0" && parent =~ "*0x00100000"} |
| 25 | + mask_write 0xeb5e0310 0x1 0 |
| 26 | + targets -set -filter {name =~ "Cortex-R52*0.0"} |
27 | 27 | after 300
|
28 | 28 | stop
|
29 | 29 | after 1000
|
@@ -58,7 +58,7 @@ proc load_image args {
|
58 | 58 | ta
|
59 | 59 | }
|
60 | 60 | after 1000
|
61 |
| - targets -set -nocase -filter {name =~ "DAP*"} |
| 61 | + targets -set -filter {name =~ "Versal Gen 2*"} |
62 | 62 | after 100
|
63 | 63 | # Configure timestamp generator to run global timer gracefully
|
64 | 64 | # Ideally these registers should be set from bootloader (cdo)
|
|
0 commit comments