Line 139: |
Line 139: |
| ! Offset || Size || Description | | ! Offset || Size || Description |
| |- | | |- |
− | | 0x00 || 0x4 || u32. Input current limit in mA | + | | 0x00 || 0x4 || u32. Input (Sink) current limit in mA |
| |- | | |- |
− | | 0x04 || 0x4 || Possibly a limit in mA | + | | 0x04 || 0x4 || u32. Output (Source/Vbus/OTG) current limit in mA |
| |- | | |- |
− | | 0x08 || 0x4 || u32. Fast charge current limit in mA | + | | 0x08 || 0x4 || u32. Battery charging current limit in mA |
| |- | | |- |
− | | 0x0C || 0x4 || u32. Charge voltage limit in mV | + | | 0x0C || 0x4 || u32. Battery charging voltage limit in mV |
| |- | | |- |
− | | 0x10 || 0x4 || Possibly an emum | + | | 0x10 || 0x4 || enum, same as power-role? Always 1 except when OTG where it becomes 2 |
| |- | | |- |
− | | 0x14 || 0x4 || Possibly a set a flags | + | | 0x14 || 0x4 || Possibly a bit field |
| |- | | |- |
− | | 0x18 || 0x4 || Possibly an enum | + | | 0x18 || 0x4 || u32. Charging limits state based on battery temperature |
| |- | | |- |
− | | 0x1C || 0x4 || Unknown | + | | 0x1C || 0x4 || u32. Battery Temperature (milli C) |
| |- | | |- |
− | | 0x20 || 0x4 || u32. Raw battery charge per cent-mille (i.e. 100% = 100000 pcm) | + | | 0x20 || 0x4 || u32. Capacity now per cent-mille (i.e. 100% = 100000 pcm) |
| |- | | |- |
| | 0x24 || 0x4 || u32. Voltage now in mV | | | 0x24 || 0x4 || u32. Voltage now in mV |
| |- | | |- |
− | | 0x28 || 0x4 || u32. Battery age per cent-mille (i.e. 100% = 100000 pcm) | + | | 0x28 || 0x4 || u32. Battery age (capacity full / capacity design) per cent-mille (i.e. 100% = 100000 pcm) |
| |- | | |- |
− | | 0x2C || 0x4 || Boolean? Receiving voltage? | + | | 0x2C || 0x4 || enum. Power role (0: Unknown, 1: Sink, 2: Source) |
| |- | | |- |
− | | 0x30 || 0x4 || Possibly an enum related to charging | + | | 0x30 || 0x4 || enum. [[#Charger_Type]] |
| |- | | |- |
| | 0x34 || 0x4 || u32. Charger voltage limit in mV | | | 0x34 || 0x4 || u32. Charger voltage limit in mV |
Line 169: |
Line 169: |
| | 0x38 || 0x4 || u32. Charger current limit in mA | | | 0x38 || 0x4 || u32. Charger current limit in mA |
| |- | | |- |
− | | 0x3C || 0x4 || Possibly a set a flags (potentially 0x100 for charging, 0x1 for undocked) | + | | 0x3C || 0x4 || Possibly bit field (bit0: potentially no hub, bit8: unknown, bit12: OTG) |
| |- | | |- |
| + | |} |
| + | |
| + | === Charger Type === |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Value || Name |
| + | |- |
| + | | 0 || Unknown |
| + | |- |
| + | | 1 || PD |
| + | |- |
| + | | 2 || Type-C 1.5A |
| + | |- |
| + | | 3 || Type-C 3.0A |
| + | |- |
| + | | 4 || DCP |
| + | |- |
| + | | 5 || CDP |
| + | |- |
| + | | 6 || SDP |
| + | |- |
| + | | 7 || Apple 500mA |
| + | |- |
| + | | 8 || Apple 1000mA |
| + | |- |
| + | | 9 || Apple 2000mA |
| |} | | |} |
| | | |