This pull request adds automatic BT probing to the Pi Zero W, OTG mode

for the Zero W, the GPIO expander on the Pi3, and fixes I2S probe
 (which is disabled by default, but often used downstream)
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEE/JuuFDWp9/ZkuCBXtdYpNtH8nugFAlqXHu4ACgkQtdYpNtH8
 nughwQ//YhxL+EUx1RoFYaC7JNySIIO9lWtUFxXobFrYVJRzxiVm79Qq/RqIRt50
 +p0kQvsk7qxmO3u8vHJ9jbOWvSBJmlLQdQv1pC7p3/BHAUYuwKKD1mdQZHmBQKTV
 I62S8Auodsw98pgU8WBg3RrcIy8W1KyRY8g+Jtck5xYgfhZIzIf46WAeHMIz1X8U
 5FzrvTh/NlWDtfr42qIZsn7uk7lGxCeFn9/97A75ytxlRml4VVYF4h0ic5/27IAR
 Xlzt9lMGooGzzgrO+bUGghyPnQPwxqM6HzZU8OziZ+dH0A0w4EA3kCs6FE9jVaiu
 5bfj8WMC3ZALlpl2TbcB6+tX3lSC5yVbYmDTRLMwg1UQJwhej44GxA6Z9s8MOx4f
 u3cTgJTaRwFbgsvMc6EW8MX27Q2ZmjaocdwN9EI1KeBCLU2EqASwjOYxzFzFnTAK
 efVeXIA7PhETeQbB2zrHpb/nOwoHEkVjLflRlKJxLv9QxsXj86LjC8sp2vrcH5xs
 FK/bZYtux5JeWto4E0jPCXZKXZqz/Xu5qIGOtSVcR/UcbRnIQGi3QNeFRqqHr/AW
 uokl9sZMPTGmOXwzvPQP68MpRra63itkftYbFIsFQaspFpCM/8kKQFx/0j8cy9Wu
 E7qBgGTrTTSHClvroTjhwmGS7DjrQTf9TjvR4a3JzXLIImY8VDc=
 =IEYw
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCAAGBQJalzyqAAoJEIfQlpxEBwcEc3sP/RejoA95jkWoozQzTyjAAxTi
 r9zeQVrtLpctW4ZInF4RmSLe/7op+Ky3pXEUSM2DRidHOnHYC1/KnmMz0nt73vxZ
 kdGKAyzU3QEYOg4NjUlClIsOIy4Imne+nOjjGfdnvlp1QN6Vw96L4N+kwz0F30gH
 8WfTMXuaCUZNswwRf4FYxdog2mCCrBD1auJMTJvoYuavMfUxPbqnIaI+HfAJf8Dl
 t1xD7XS8woIq19JfL+v1lwh7k0QggELFGSrVCh3dJuENNmpZi9ezmJ6rwMARQKjS
 qfZkTMU1hMnTwaNmyLP/IdOG7iv3e++A4AJVqPAQiYhQ9vSVFzFy64r50hqsBZyr
 nu7cfCn2xT080yDAslypoD3rbARLmcaDHAzbB+HeDSLmx8i8ADdSPU6kocwnNK8S
 t0YgjEljtz6/ch1+W/zU9nHQf2vcHaQkJuKVeJAuoUqipp/3ZKqt3sU18PMehY3/
 1L/rhnNJyRGBViu6LDFd4gjHacQF2Q0RdwkpyWOJS/rHfuogSFP1Iiz0yLbm40OT
 K7JgXpcjDvK3R3u/fNm+LmNT4LzC3en3HaxzwoR/G23pqT5mJ5pV26W4OOMrYI20
 k+ziIoHtdiQVjO4PWzpup8At+D1lhIX7GJFcbBVrNheT3KTqaFVis8a0dXiOgVCQ
 QnIofYNXQY/EEakrehut
 =pT2m
 -----END PGP SIGNATURE-----

Merge tag 'bcm2835-dt-next-2018-02-28' into devicetree/next

This pull request adds automatic BT probing to the Pi Zero W, OTG mode
for the Zero W, the GPIO expander on the Pi3, and fixes I2S probe
(which is disabled by default, but often used downstream)

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
This commit is contained in:
Florian Fainelli 2018-02-28 15:34:49 -08:00
commit 4a78f71c32
6 changed files with 46 additions and 13 deletions

View File

@ -74,8 +74,8 @@ Example:
bcm2835_i2s: i2s@7e203000 {
compatible = "brcm,bcm2835-i2s";
reg = < 0x7e203000 0x20>,
< 0x7e101098 0x02>;
reg = < 0x7e203000 0x24>;
clocks = <&clocks BCM2835_CLOCK_PCM>;
dmas = <&dma 2>,
<&dma 3>;

View File

@ -2,9 +2,8 @@
Required properties:
- compatible: "brcm,bcm2835-i2s"
- reg: A list of base address and size entries:
* The first entry should cover the PCM registers
* The second entry should cover the PCM clock registers
- reg: Should contain PCM registers location and length.
- clocks: the (PCM) clock to use
- dmas: List of DMA controller phandle and DMA request line ordered pairs.
- dma-names: Identifier string for each DMA request line in the dmas property.
These strings correspond 1:1 with the ordered pairs in dmas.
@ -16,8 +15,8 @@ Example:
bcm2835_i2s: i2s@7e203000 {
compatible = "brcm,bcm2835-i2s";
reg = <0x7e203000 0x20>,
<0x7e101098 0x02>;
reg = <0x7e203000 0x24>;
clocks = <&clocks BCM2835_CLOCK_PCM>;
dmas = <&dma 2>,
<&dma 3>;

View File

@ -12,7 +12,7 @@
/dts-v1/;
#include "bcm2835.dtsi"
#include "bcm2835-rpi.dtsi"
#include "bcm283x-rpi-usb-host.dtsi"
#include "bcm283x-rpi-usb-otg.dtsi"
/ {
compatible = "raspberrypi,model-zero-w", "brcm,bcm2835";
@ -131,6 +131,18 @@ brcmf: wifi@1 {
&uart0 {
pinctrl-names = "default";
pinctrl-0 = <&uart0_gpio14>;
pinctrl-0 = <&uart0_gpio32 &uart0_ctsrts_gpio30>;
status = "okay";
bluetooth {
compatible = "brcm,bcm43438-bt";
max-speed = <2000000>;
shutdown-gpios = <&gpio 45 GPIO_ACTIVE_HIGH>;
};
};
&uart1 {
pinctrl-names = "default";
pinctrl-0 = <&uart1_gpio14>;
status = "okay";
};

View File

@ -18,7 +18,9 @@ act {
soc {
firmware: firmware {
compatible = "raspberrypi,bcm2835-firmware";
compatible = "raspberrypi,bcm2835-firmware", "simple-bus";
#address-cells = <0>;
#size-cells = <0>;
mboxes = <&mailbox>;
};

View File

@ -25,6 +25,23 @@ act {
};
};
&firmware {
expgpio: gpio {
compatible = "raspberrypi,firmware-gpio";
gpio-controller;
#gpio-cells = <2>;
gpio-line-names = "BT_ON",
"WL_ON",
"STATUS_LED",
"LAN_RUN",
"HPD_N",
"CAM_GPIO0",
"CAM_GPIO1",
"PWR_LOW_N";
status = "okay";
};
};
/* uart0 communicates with the BT module */
&uart0 {
pinctrl-names = "default";

View File

@ -223,6 +223,7 @@ gpclk2_gpio6: gpclk2_gpio6 {
gpclk2_gpio43: gpclk2_gpio43 {
brcm,pins = <43>;
brcm,function = <BCM2835_FSEL_ALT0>;
brcm,pull = <BCM2835_PUD_OFF>;
};
i2c0_gpio0: i2c0_gpio0 {
@ -252,7 +253,7 @@ i2c_slave_gpio18: i2c_slave_gpio18 {
jtag_gpio4: jtag_gpio4 {
brcm,pins = <4 5 6 12 13>;
brcm,function = <BCM2835_FSEL_ALT4>;
brcm,function = <BCM2835_FSEL_ALT5>;
};
jtag_gpio22: jtag_gpio22 {
brcm,pins = <22 23 24 25 26 27>;
@ -335,10 +336,12 @@ uart0_ctsrts_gpio16: uart0_ctsrts_gpio16 {
uart0_ctsrts_gpio30: uart0_ctsrts_gpio30 {
brcm,pins = <30 31>;
brcm,function = <BCM2835_FSEL_ALT3>;
brcm,pull = <BCM2835_PUD_UP BCM2835_PUD_OFF>;
};
uart0_gpio32: uart0_gpio32 {
brcm,pins = <32 33>;
brcm,function = <BCM2835_FSEL_ALT3>;
brcm,pull = <BCM2835_PUD_OFF BCM2835_PUD_UP>;
};
uart0_gpio36: uart0_gpio36 {
brcm,pins = <36 37>;
@ -397,8 +400,8 @@ sdhost: mmc@7e202000 {
i2s: i2s@7e203000 {
compatible = "brcm,bcm2835-i2s";
reg = <0x7e203000 0x20>,
<0x7e101098 0x02>;
reg = <0x7e203000 0x24>;
clocks = <&clocks BCM2835_CLOCK_PCM>;
dmas = <&dma 2>,
<&dma 3>;