Skip to content

Commit aa35b6a

Browse files
committed
fmc_basic_peripheral: update readme for kicad 10 and m24c64 fru programming
Signed-off-by: Huang Rui <vowstar@gmail.com>
1 parent 762fa57 commit aa35b6a

1 file changed

Lines changed: 17 additions & 6 deletions

File tree

fmc_basic_peripheral/README.md

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -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

4646
Use 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

Comments
 (0)