[PATCH v2] ARM: bcm2835: add device tree for Raspberry Pi model B+
Noralf Tronnes
notro at tronnes.org
Thu Nov 6 11:36:30 PST 2014
Den 06.11.2014 00:45, skrev Matthias Klein:
> The model B and B+ differ in the GPIO lines for ACT and PWR leds, and the
> I2S interface.
>
> Signed-off-by: Matthias Klein <matthias.klein at linux.com>
> ---
> Changes in v2:
> - move the common parts between the B and B+ model into the new bcm2835-rpi.dtsi file
>
> - add the I2S signals to the B+ file which fix the problem that USB is not working
> with the current bcm2835-rpi-b.dts file on the B+.
> ---
<snip>
> +&gpio {
> + pinctrl-names = "default";
> +
> + gpioout: gpioout {
> + brcm,pins = <6>;
> + brcm,function = <1>; /* GPIO out */
> + };
> +
> + alt0: alt0 {
> + brcm,pins = <0 1 2 3 4 5 7 8 9 10 11 14 15 40 45>;
> + brcm,function = <4>; /* alt0 */
> + };
> +
> + alt3: alt3 {
> + brcm,pins = <48 49 50 51 52 53>;
> + brcm,function = <7>; /* alt3 */
> + };
> +};
AFAIK these pins will always be configured regardless of whether they
are used by a driver or not.
Could we do something like this for SPI and I2C, configuring only when
needed?
&gpio {
spi_pins: spi_pins {
brcm,pins = <7 8 9 10 11>;
brcm,function = <4>; /* alt0 */
};
i2c0_pins: i2c0_pins {
brcm,pins = <0 1>;
brcm,function = <4>;
};
i2c1_pins: i2c1_pins {
brcm,pins = <2 3>;
brcm,function = <4>;
};
};
&spi {
pinctrl-names = "default";
pinctrl-0 = <&spi_pins>;
};
&i2c0 {
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins>;
clock-frequency = <100000>;
};
&i2c1 {
pinctrl-names = "default";
pinctrl-0 = <&i2c1_pins>;
clock-frequency = <100000>;
};
> +
> +&i2c0 {
> + status = "okay";
> + clock-frequency = <100000>;
> +};
> +
> +&i2c1 {
> + status = "okay";
> + clock-frequency = <100000>;
> +};
> +
Should the I2C busses be enabled by default? On Raspian, i2c is disabled
by blacklisting the module (/etc/modprobe.d/raspi-blacklist.conf).
At least i2c0 should be left disabled due to the HAT EEPROM and camera.
The bus number has also changed with revisions:
http://www.raspberrypi.org/forums/viewtopic.php?p=603950#p603950
More information about the linux-rpi-kernel
mailing list