Skip to content

Commit

Permalink
Merge tag 'bcm2835-for-3.9-dt' of git://git.kernel.org/pub/scm/linux/…
Browse files Browse the repository at this point in the history
…kernel/git/swarren/linux-rpi into next/dt

From Stephen Warren:
ARM: bcm2835: device tree updates

The SoC's SDHCI and MMC controllers are added to device tree, and enabled
in the Raspberry Pi board device tree. Some fixed clocks are added to the
device tree to support these drivers. These could be replaced by real
clocks in the future.

A hard-coded memreserve is removed from device tree; the bootloader should
specify the correct memory node content instead, since the memory layout
is dynamic.

This branch is based on v3.8-rc3.

* tag 'bcm2835-for-3.9-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/swarren/linux-rpi:
  ARM: bcm2835: fix clock node aliasing in device tree
  ARM: bcm2835: add I2C controllers to DT
  ARM: bcm2835: add SDHCI node to DT
  ARM: bcm2835 rpi: remove hard-coded memreserve from DT

Signed-off-by: Olof Johansson <olof@lixom.net>
  • Loading branch information
Olof Johansson committed Jan 29, 2013
2 parents a6f243a + 9692c19 commit e28c99a
Show file tree
Hide file tree
Showing 2 changed files with 59 additions and 1 deletion.
16 changes: 15 additions & 1 deletion arch/arm/boot/dts/bcm2835-rpi-b.dts
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
/dts-v1/;
/memreserve/ 0x0c000000 0x04000000;
/include/ "bcm2835.dtsi"

/ {
Expand All @@ -25,3 +24,18 @@
brcm,function = <7>; /* alt3 */
};
};

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

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

&sdhci {
status = "okay";
bus-width = <4>;
};
44 changes: 44 additions & 0 deletions arch/arm/boot/dts/bcm2835.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -63,5 +63,49 @@
interrupt-controller;
#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>;
interrupts = <2 30>;
clocks = <&clk_mmc>;
status = "disabled";
};
};

clocks {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <0>;

clk_mmc: mmc {
compatible = "fixed-clock";
reg = <0>;
#clock-cells = <0>;
clock-frequency = <100000000>;
};

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

0 comments on commit e28c99a

Please sign in to comment.