Commit a56caff
committed
profiles: cap hi3516cv200's SPL upload at its 16 KB SRAM ceiling
hi3516cv200 is the hi3518ev200's sibling in every way that matters here:
identical ADDRESS and FILELEN (only PRESTEP0 differs), so the same
spl_address 0x04010500 and the same 0x04014000 SRAM ceiling. Both come
out of OpenIPC/u-boot-hi3516cv200's build.sh, and both shipped images
carry their LZMA payload at 0x4BB0 — so detection returns 0x4800 on
cv200 too and overruns the window by the same 3328 bytes.
The ev200 side of this was confirmed on real hardware in
OpenIPC/firmware#2299: chunks 1-14 ACK first try, chunk 15 crosses
0x04014000, the bootrom stops answering and 32 retries time out.
cv200 runs the identical numbers through the identical code path.
This does not make cv200 recoverable — the prelude these builds produce
is 19376 bytes against a 15104-byte window, so the capped SPL is still
missing 4272 bytes of live code and won't execute
(OpenIPC/u-boot-hi3516cv200#5 tracks that). It does stop defib writing
over the bootrom's stack on the way to finding out, which is the
difference between a clean failure and a chip that has to be
power-cycled out of a wedged state.
No cv200 on the bench; ev200's hardware trace plus the byte-identical
profile parameters are the evidence.1 parent 6a5c364 commit a56caff
2 files changed
Lines changed: 12 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
411 | 411 | | |
412 | 412 | | |
413 | 413 | | |
| 414 | + | |
| 415 | + | |
| 416 | + | |
| 417 | + | |
| 418 | + | |
| 419 | + | |
| 420 | + | |
| 421 | + | |
| 422 | + | |
| 423 | + | |
| 424 | + | |
414 | 425 | | |
415 | 426 | | |
416 | 427 | | |
| |||
0 commit comments