Explore I2C

This commit is contained in:
Lee Lup Yuen 2023-10-19 12:41:07 +08:00
parent 3e368e0592
commit 501d668262

124
README.md
View file

@ -8017,7 +8017,7 @@ From [DesignWare DW_apb_i2c Databook](https://github.com/lupyuen/nuttx-star64/bl
The above Actual Values were retrieved from U-Boot...
```bash
## Omitted: Power Up I2C Controller
## Omitted: Power Up the I2C Controller
...
## Dump the I2C Registers for I2C Port 0
$ md 0x10030000 0x40
@ -8041,6 +8041,128 @@ $ md 0x10030000 0x40
TODO: Read PMIC with U-Boot
TODO: Which I2C ports are in use?
```bash
## Omitted: Power Up the I2C Controller
...
## Dump the I2C Registers for I2C Port 1
$ md 0x10040000 0x40
10040000: 0000007f 00000055 00000055 00000001 ....U...U.......
10040010: 00000000 00000190 000001d6 0000003c ............<...
10040020: 00000082 00000006 00000010 00000000 ................
10040030: 000008ff 00000000 00000000 00000000 ................
10040040: 00000000 00000000 00000000 00000000 ................
10040050: 00000000 00000000 00000000 00000000 ................
10040060: 00000000 00000000 00000000 00000004 ................
10040070: 00000006 00000000 00000000 00000001 ................
10040080: 00000000 00000000 00000000 00000000 ................
10040090: 00000000 00000064 00000001 00000000 ....d...........
100400a0: 00000005 00000001 00000000 00000000 ................
100400b0: 00000000 00000000 00000000 00000000 ................
100400c0: 00000000 00000000 00000000 00000000 ................
100400d0: 00000000 00000000 00000000 00000000 ................
100400e0: 00000000 00000000 00000000 00000000 ................
100400f0: 00000000 001f1fee 3230302a 44570140 ........*002@.WD
## Dump the I2C Registers for I2C Port 2
$ md 0x10050000 0x40
10050000: 0000007f 00000055 00000055 00000001 ....U...U.......
10050010: 00000000 00000190 000001d6 0000003c ............<...
10050020: 00000082 00000006 00000010 00000000 ................
10050030: 000008ff 00000000 00000000 00000000 ................
10050040: 00000000 00000000 00000000 00000000 ................
10050050: 00000000 00000000 00000000 00000000 ................
10050060: 00000000 00000000 00000000 00000004 ................
10050070: 00000006 00000000 00000000 00000001 ................
10050080: 00000000 00000000 00000000 00000000 ................
10050090: 00000000 00000064 00000001 00000000 ....d...........
100500a0: 00000005 00000001 00000000 00000000 ................
100500b0: 00000000 00000000 00000000 00000000 ................
100500c0: 00000000 00000000 00000000 00000000 ................
100500d0: 00000000 00000000 00000000 00000000 ................
100500e0: 00000000 00000000 00000000 00000000 ................
100500f0: 00000000 001f1fee 3230302a 44570140 ........*002@.WD
## Dump the I2C Registers for I2C Port 3
$ md 0x12030000 0x40
12030000: 0000007f 00000055 00000055 00000001 ....U...U.......
12030010: 00000000 00000190 000001d6 0000003c ............<...
12030020: 00000082 00000006 00000010 00000000 ................
12030030: 000008ff 00000000 00000000 00000000 ................
12030040: 00000000 00000000 00000000 00000000 ................
12030050: 00000000 00000000 00000000 00000000 ................
12030060: 00000000 00000000 00000000 00000004 ................
12030070: 00000006 00000000 00000000 00000001 ................
12030080: 00000000 00000000 00000000 00000000 ................
12030090: 00000000 00000064 00000001 00000000 ....d...........
120300a0: 00000005 00000001 00000000 00000000 ................
120300b0: 00000000 00000000 00000000 00000000 ................
120300c0: 00000000 00000000 00000000 00000000 ................
120300d0: 00000000 00000000 00000000 00000000 ................
120300e0: 00000000 00000000 00000000 00000000 ................
120300f0: 00000000 001f1fee 3230302a 44570140 ........*002@.WD
## Dump the I2C Registers for I2C Port 4
$ md 0x12040000 0x40
12040000: 0000007f 00000055 00000055 00000001 ....U...U.......
12040010: 00000000 00000190 000001d6 0000003c ............<...
12040020: 00000082 00000006 00000010 00000000 ................
12040030: 000008ff 00000000 00000000 00000000 ................
12040040: 00000000 00000000 00000000 00000000 ................
12040050: 00000000 00000000 00000000 00000000 ................
12040060: 00000000 00000000 00000000 00000004 ................
12040070: 00000006 00000000 00000000 00000001 ................
12040080: 00000000 00000000 00000000 00000000 ................
12040090: 00000000 00000064 00000001 00000000 ....d...........
120400a0: 00000005 00000001 00000000 00000000 ................
120400b0: 00000000 00000000 00000000 00000000 ................
120400c0: 00000000 00000000 00000000 00000000 ................
120400d0: 00000000 00000000 00000000 00000000 ................
120400e0: 00000000 00000000 00000000 00000000 ................
120400f0: 00000000 001f1fee 3230302a 44570140 ........*002@.WD
## Dump the I2C Registers for I2C Port 5
$ md 0x12050000 0x40
12050000: 00000063 00000050 00000055 00000001 c...P...U.......
12050010: 000000ff 00000020 000000b0 0000003c .... .......<...
12050020: 00000082 00000006 00000010 00000200 ................
12050030: 00000200 00000711 00000000 00000000 ................
12050040: 00000001 00000000 00000000 00000000 ................
12050050: 00000000 00000000 00000000 00000000 ................
12050060: 00000000 00000000 00000000 00000001 ................
12050070: 00000006 00000000 00000000 00000008 ................
12050080: 00000000 00000000 00000000 00000000 ................
12050090: 00000000 00000064 00000001 00000001 ....d...........
120500a0: 00000005 00000001 00000000 00000000 ................
120500b0: 00000000 00000000 00000000 00000000 ................
120500c0: 00000000 00000000 00000000 00000000 ................
120500d0: 00000000 00000000 00000000 00000000 ................
120500e0: 00000000 00000000 00000000 00000000 ................
120500f0: 00000000 001f1fee 3230302a 44570140 ........*002@.WD
## Dump the I2C Registers for I2C Port 6
$ md 0x12060000 0x40
12060000: 0000007f 00000055 00000055 00000001 ....U...U.......
12060010: 00000000 00000190 000001d6 0000003c ............<...
12060020: 00000082 00000006 00000010 00000000 ................
12060030: 000008ff 00000000 00000000 00000000 ................
12060040: 00000000 00000000 00000000 00000000 ................
12060050: 00000000 00000000 00000000 00000000 ................
12060060: 00000000 00000000 00000000 00000004 ................
12060070: 00000006 00000000 00000000 00000001 ................
12060080: 00000000 00000000 00000000 00000000 ................
12060090: 00000000 00000064 00000001 00000000 ....d...........
120600a0: 00000005 00000001 00000000 00000000 ................
120600b0: 00000000 00000000 00000000 00000000 ................
120600c0: 00000000 00000000 00000000 00000000 ................
120600d0: 00000000 00000000 00000000 00000000 ................
120600e0: 00000000 00000000 00000000 00000000 ................
120600f0: 00000000 001f1fee 3230302a 44570140 ........*002@.WD
```
TODO: I2C Port 5 has I2C Target Address 0x50. Probably in use
# PineTab-V Factory Test Code
The PineTab-V ships with [Factory Test Code](https://wiki.pine64.org/wiki/PineTab-V_Releases#Factory_releases).