N900 Hardware Bus I2c
m (→Bus 2: fix link) |
m (→Bus 2: direct link) |
||
Line 12: | Line 12: | ||
* 0x32 [[N900 Hardware LED]] | * 0x32 [[N900 Hardware LED]] | ||
* 0x60 [[N900 headphone amplifier]] | * 0x60 [[N900 headphone amplifier]] | ||
- | * 0x63 [[N900 | + | * 0x63 [[N900 FM radio receiver|FM radio receiver]] |
* 0x55 [[N900 Hardware Charge Meter]] | * 0x55 [[N900 Hardware Charge Meter]] | ||
* 0x6B [[N900 Hardware Battery Charger]] | * 0x6B [[N900 Hardware Battery Charger]] |
Revision as of 14:43, 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 Hardware 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).