ARM: bcm2835: add I2C controllers to DT

The BCM2835 has 3 identical I2C controllers. Instantiate them all in the
SoC .dtsi file, and enable the relevant two in the Raspberry Pi board
.dts file.

Note that on the Raspberry Pi Model B revision 1, I2C0 is connected to
the general-purpose expansion header, and I2C1 is connected to the camera
connector. Revision 2 of the board swaps these assignments:-(

Signed-off-by: Stephen Warren <swarren@wwwdotorg.org>
This commit is contained in:
Stephen Warren 2012-12-31 23:26:45 -07:00
parent 5186bf287a
commit 232fed4825
2 changed files with 32 additions and 0 deletions

View File

@ -25,6 +25,16 @@ alt3: alt3 {
};
};
&i2c0 {
status = "okay";
clock-frequency = <100000>;
};
&i2c1 {
status = "okay";
clock-frequency = <100000>;
};
&sdhci {
status = "okay";
bus-width = <4>;

View File

@ -64,6 +64,22 @@ gpio: gpio {
#interrupt-cells = <2>;
};
i2c0: i2c@20205000 {
compatible = "brcm,bcm2835-i2c";
reg = <0x7e205000 0x1000>;
interrupts = <2 21>;
clocks = <&clk_i2c>;
status = "disabled";
};
i2c1: i2c@20804000 {
compatible = "brcm,bcm2835-i2c";
reg = <0x7e804000 0x1000>;
interrupts = <2 21>;
clocks = <&clk_i2c>;
status = "disabled";
};
sdhci: sdhci {
compatible = "brcm,bcm2835-sdhci";
reg = <0x7e300000 0x100>;
@ -73,6 +89,12 @@ sdhci: sdhci {
};
};
clk_i2c: clock {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <150000000>;
};
clk_mmc: clock {
compatible = "fixed-clock";
#clock-cells = <0>;