N900 Hardware Bus I2c
m (→Bus 3: direct link) |
m (→Bus 2: direct link) |
||
Line 15: | Line 15: | ||
* 0x55 [[N900 Hardware Charge Meter]] | * 0x55 [[N900 Hardware Charge Meter]] | ||
* 0x6B [[N900 Hardware Battery Charger]] | * 0x6B [[N900 Hardware Battery Charger]] | ||
- | + | * 0x10 [[N900 VGA camera|VGA Camera (control)]] | |
- | * 0x10 [[N900 | + | |
===Bus 3=== | ===Bus 3=== |
Revision as of 14:58, 16 June 2010
I2C is a simple serial bus, used in many devices.
Contents |
Hardware
Bus 1
- 0x48 0x49 0x4a 0x4b Gaia/chipset
Bus 2
- 0x18 0x19 Audio codec
- 0x29 N900 light meter
- 0x30 N900 Hardware Flash Torch
- 0x32 N900 Hardware LED
- 0x60 N900 headphone amplifier
- 0x63 FM radio receiver
- 0x55 N900 Hardware Charge Meter
- 0x6B N900 Hardware Battery Charger
- 0x10 VGA Camera (control)
Bus 3
- 0x0c Lens focus
- 0x1d Accelerometer
- 0x3e Front Camera (control)
Software
The N900 software driving I2C comes in three flavors.
Firstly, there are a large number of kernel drivers.
Then, there are a small number of devices 'bit banged' through I2C ioctls - BME for example does this with the charge meter and battery charger.
Finally, there are probably some I2C components in the Rapuyama and assorted cellphone/GPS hardware. These are not visible to the casual developer. (you have to open the N900 and probe stuff, or hack the phone firmware).