Add EEPROM boot firmware (exp 0xDB) and supporting tools
Firmware: Rewrite skywalker1.c for EEPROM boot experiment — tests whether I2C hardware controller works after FX2 boot ROM completes EEPROM load (bypassing the CPUCS restart that triggers BERR). Tools: - fw_load.py: Add I2C cleanup stub, pre-halt register flush, improved error handling and segment loading - eeprom_write.py: Add IHX→C2 EEPROM image converter (16KB format with length-prefixed segments, checksum) - eeprom_dump.py: Refactor for cleaner output, better hex display - skywalker_lib.py: Minor I2C register constant updates Docs: - EEPROM-RECOVERY.md: Four recovery options for soft-bricked device (SOIC clip, SDA pull-up, desolder, wait-for-timeout) - Master reference: Updated with EEPROM boot findings Status: EEPROM flash blocked — stock firmware I2C proxy returns pipe errors, host-side 0xA0 writes proven unable to drive peripheral bus. Device boot ROM intermittently hangs on EEPROM I2C read (~3-6% success).
This commit is contained in:
parent
bbdcb243dc
commit
3d2cd477b2
8 changed files with 5621 additions and 4440 deletions
|
|
@ -1,12 +1,16 @@
|
|||
FX2LIBDIR=fx2lib/
|
||||
BASENAME=skywalker1
|
||||
SOURCES=skywalker1.c
|
||||
A51_SOURCES=dscr.a51
|
||||
VID=0x09C0
|
||||
PID=0x0203
|
||||
CODE_SIZE=--code-size 0x3c00
|
||||
|
||||
include $(FX2LIBDIR)lib/fx2.mk
|
||||
|
||||
load: $(BUILDDIR)/$(BASENAME).bix
|
||||
../tools/fw_load.py $(BUILDDIR)/$(BASENAME).bix
|
||||
FX2LIBDIR=fx2lib/
|
||||
BASENAME=skywalker1
|
||||
SOURCES=skywalker1.c
|
||||
A51_SOURCES=dscr.a51
|
||||
VID=0x09C0
|
||||
PID=0x0203
|
||||
CODE_SIZE=--code-size 0x3c00
|
||||
|
||||
include $(FX2LIBDIR)lib/fx2.mk
|
||||
|
||||
load: $(BUILDDIR)/$(BASENAME).bix
|
||||
../tools/fw_load.py load $(BUILDDIR)/$(BASENAME).ihx
|
||||
|
||||
eeprom: $(BUILDDIR)/$(BASENAME).ihx
|
||||
python3 ../tools/eeprom_write.py convert $(BUILDDIR)/$(BASENAME).ihx \
|
||||
-o $(BUILDDIR)/$(BASENAME)_eeprom.bin
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
Loading…
Add table
Add a link
Reference in a new issue