N900 Hardware Bus I2c

(Bus 2: VGA -> front)
(Bus 2: fixed)
 
(3 intermediate revisions not shown)
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 Front camera|VGA Camera (control)]]
+
* 0x10 [[N900 Front camera|Front VGA Camera (control)]]
===Bus 3===
===Bus 3===
Line 21: Line 21:
* 0x1d [[N900 accelerometer|Accelerometer]]
* 0x1d [[N900 accelerometer|Accelerometer]]
* 0x22 [[N900 FM radio receiver|FM Receiver]]
* 0x22 [[N900 FM radio receiver|FM Receiver]]
-
* 0x3e [[N900 camera sensor|Front Camera (control)]]
+
* 0x3e [[N900 camera sensor|Main Camera (control)]]
===Bus ?===
===Bus ?===

Latest revision as of 12:42, 5 July 2016

I2C is a simple serial bus, used in many devices.

Contents

[edit] Hardware

[edit] Bus 1

[edit] Bus 2

[edit] Bus 3

[edit] Bus ?

edit: GPS is connected to RAPUYAMA and available to application processor only via libisi / cellmo-proxy

[edit] 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).