@@ -8,7 +8,7 @@ of the SoC.
88
99## Preparation
1010
11- Install kicad 8 , cmake, ninja, frugy.
11+ Install kicad 10 , cmake, ninja, frugy.
1212
1313## Precautions
1414
@@ -45,12 +45,23 @@ cmake --build build --target production
4545
4646Use a CH341A USB-to-I2C adapter (PID ` 1a86:5512 ` , EPP/MEM/I2C mode) with
4747[ ch341eeprom] ( https://github.com/commandtab/ch341eeprom ) . Wire ` SDA ` , ` SCL ` ,
48- ` VCC ` (3.3V) and ` GND ` to the on-board M24C02 , and pull ` WP ` to GND.
48+ ` VCC ` (3.3V) and ` GND ` to the on-board M24C64 , and pull ` WP ` to GND.
4949
5050``` bash
51- ch341eeprom -v -s 24c02 -w build/fmc_fru_eeprom.bin
52- ch341eeprom -v -s 24c02 -V build/fmc_fru_eeprom.bin
51+ ch341eeprom -s 24c64 -e
52+ ch341eeprom -s 24c64 -w build/fmc_fru_eeprom.bin
53+ ch341eeprom -s 24c64 -V build/fmc_fru_eeprom.bin
5354```
5455
55- The verifier reports a mismatch at offset 238 because the FRU image is 238
56- bytes while the EEPROM is padded to 256 — the FRU data itself is correct.
56+ ` ch341eeprom ` auto-pads the 2 KiB image with ` 0xFF ` to the full 8 KiB chip
57+ size. The verifier then reports a mismatch at offset 2048 (`EEPROM: FF,
58+ file: 00` ); this is a tool quirk (file tail is compared as ` 0x00` against the
59+ chip's ` 0xFF ` padding), not a data error. To check the FRU bytes directly:
60+
61+ ``` bash
62+ ch341eeprom -s 24c64 -r /tmp/dump.bin
63+ cmp -n 2048 /tmp/dump.bin build/fmc_fru_eeprom.bin
64+ ```
65+
66+ Do not pass ` -s 24c02 ` to the M24C64; the chips use different address widths
67+ (16-bit vs 8-bit), so the writes would scatter across the chip.
0 commit comments