FreeCalypso > hg > freecalypso-tools
annotate loadtools/scripts/compal.init @ 505:7bf0d909c87e
fc-loadtool flash ID check: change of reset after the check logic
This change only affects those flash configurations that have ID checks
enabled. The logic for resetting the flash after the ID check has been
changed as follows:
1) If the check fails, we return without attempting to reset the flash.
2) If the check is successful, we reset the flash using the configured
method (could be AMD or Intel or Intel W30) instead of always doing an
AMD flash reset as the original code did.
| author | Mychaela Falconia <falcon@freecalypso.org> |
|---|---|
| date | Mon, 27 May 2019 19:58:01 +0000 |
| parents | ac48ed111d6a |
| children | b0f9d38bfd9e |
| rev | line source |
|---|---|
|
492
ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
Mychaela Falconia <falcon@freecalypso.org>
parents:
0
diff
changeset
|
1 # Set WS=3 for both nCS0 and nCS1. This configuration is used by all official |
|
ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
Mychaela Falconia <falcon@freecalypso.org>
parents:
0
diff
changeset
|
2 # C11x, C139/140 and SE J100 firmwares that have been examined, i.e., by the |
|
ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
Mychaela Falconia <falcon@freecalypso.org>
parents:
0
diff
changeset
|
3 # official firmwares for all Compal models to which this init script applies. |
|
0
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 |
|
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 w16 fffffb00 00A3 |
|
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 w16 fffffb02 00A3 |
|
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 |
|
492
ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
Mychaela Falconia <falcon@freecalypso.org>
parents:
0
diff
changeset
|
8 # On most targets we use the alternate nCS0 mapping at 0x03000000 to access |
|
ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
Mychaela Falconia <falcon@freecalypso.org>
parents:
0
diff
changeset
|
9 # the full flash bank even though the boot ROM is mapped at 0, overlapping |
|
ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
Mychaela Falconia <falcon@freecalypso.org>
parents:
0
diff
changeset
|
10 # the first 8 KiB of flash. However, the Calypso chip (all versions we work |
|
ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
Mychaela Falconia <falcon@freecalypso.org>
parents:
0
diff
changeset
|
11 # with) has a little design bug in this part of the silicon: the alternate |
|
ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
Mychaela Falconia <falcon@freecalypso.org>
parents:
0
diff
changeset
|
12 # nCS0 mapping at 0x03000000 works only when the debug visibility bit in the |
|
ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
Mychaela Falconia <falcon@freecalypso.org>
parents:
0
diff
changeset
|
13 # API-RHEA control register (bit 6 in the FFFF:FB0E register) is set, and |
|
ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
Mychaela Falconia <falcon@freecalypso.org>
parents:
0
diff
changeset
|
14 # does not work otherwise. This bit is initially set as the Calypso comes |
|
ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
Mychaela Falconia <falcon@freecalypso.org>
parents:
0
diff
changeset
|
15 # out of reset, and on most platforms we gain loadtool access via the boot ROM, |
|
ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
Mychaela Falconia <falcon@freecalypso.org>
parents:
0
diff
changeset
|
16 # hence the problem does not occur - but on these Compal targets we gain |
|
ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
Mychaela Falconia <falcon@freecalypso.org>
parents:
0
diff
changeset
|
17 # loadtool access either through Compal's bootloader or via tfc139, and in |
|
ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
Mychaela Falconia <falcon@freecalypso.org>
parents:
0
diff
changeset
|
18 # both cases Compal's fw (either the full fw or the bootloader part) has |
|
ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
Mychaela Falconia <falcon@freecalypso.org>
parents:
0
diff
changeset
|
19 # already set the register in question to the runtime operational value of |
|
ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
Mychaela Falconia <falcon@freecalypso.org>
parents:
0
diff
changeset
|
20 # 0x2A (unchanged from TI's TCS211 reference fw), with the debug visibility |
|
ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
Mychaela Falconia <falcon@freecalypso.org>
parents:
0
diff
changeset
|
21 # bit cleared, hence the 0x03000000 flash mapping no longer works. |
|
ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
Mychaela Falconia <falcon@freecalypso.org>
parents:
0
diff
changeset
|
22 # |
|
ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
Mychaela Falconia <falcon@freecalypso.org>
parents:
0
diff
changeset
|
23 # We could write into the FFFF:FB0E register here, restore the Calypso power-up |
|
ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
Mychaela Falconia <falcon@freecalypso.org>
parents:
0
diff
changeset
|
24 # state and use the 0x03000000 mapping like on other platforms, but the problem |
|
ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
Mychaela Falconia <falcon@freecalypso.org>
parents:
0
diff
changeset
|
25 # of the mapping not working as expected was first encountered in 2014 when we |
|
ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
Mychaela Falconia <falcon@freecalypso.org>
parents:
0
diff
changeset
|
26 # started working on Compal targets, whereas the root cause described above was |
|
ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
Mychaela Falconia <falcon@freecalypso.org>
parents:
0
diff
changeset
|
27 # only discovered in 2019. For now we are keeping the original workaround from |
|
ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
Mychaela Falconia <falcon@freecalypso.org>
parents:
0
diff
changeset
|
28 # 2014: we set the FFFF:FB10 register to map the flash (not the boot ROM) |
|
ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
Mychaela Falconia <falcon@freecalypso.org>
parents:
0
diff
changeset
|
29 # to address 0, and use that "main" mapping instead of the alternate one. |
|
0
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 |
|
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31 w16 fffffb10 0300 |
