Skip to content

Commit

Permalink
ARM: bcm2835: add I2C controllers to DT
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
Stephen Warren committed Jan 15, 2013
1 parent 5186bf2 commit 232fed4
Show file tree
Hide file tree
Showing 2 changed files with 32 additions and 0 deletions.
10 changes: 10 additions & 0 deletions arch/arm/boot/dts/bcm2835-rpi-b.dts
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,16 @@
};
};

&i2c0 {
status = "okay";
clock-frequency = <100000>;
};

&i2c1 {
status = "okay";
clock-frequency = <100000>;
};

&sdhci {
status = "okay";
bus-width = <4>;
Expand Down
22 changes: 22 additions & 0 deletions arch/arm/boot/dts/bcm2835.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,22 @@
#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>;
Expand All @@ -73,6 +89,12 @@
};
};

clk_i2c: clock {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <150000000>;
};

clk_mmc: clock {
compatible = "fixed-clock";
#clock-cells = <0>;
Expand Down

0 comments on commit 232fed4

Please sign in to comment.