The Banana Pi M2 Zero board has an AP6212 BT+Wifi combo chip
with broadcom internals attached to UART1 and some gpios.
This addition is in line with similar boards
Signed-off-by: Andreas Kemnade <[email protected]>
---
.../boot/dts/sun8i-h2-plus-bananapi-m2-zero.dts | 29 ++++++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git a/arch/arm/boot/dts/sun8i-h2-plus-bananapi-m2-zero.dts b/arch/arm/boot/dts/sun8i-h2-plus-bananapi-m2-zero.dts
index 1db2541135a7..39e206fac4e3 100644
--- a/arch/arm/boot/dts/sun8i-h2-plus-bananapi-m2-zero.dts
+++ b/arch/arm/boot/dts/sun8i-h2-plus-bananapi-m2-zero.dts
@@ -69,6 +69,8 @@
compatible = "mmc-pwrseq-simple";
pinctrl-names = "default";
reset-gpios = <&r_pio 0 7 GPIO_ACTIVE_LOW>; /* PL7 */
+ clocks = <&rtc 1>;
+ clock-names = "ext_clock";
};
};
@@ -122,7 +124,34 @@
&uart1 {
pinctrl-names = "default";
pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>;
+ uart-has-rtscts;
status = "okay";
+
+ bluetooth {
+ compatible = "brcm,bcm43438-bt";
+ pinctrl-names = "default";
+ pinctrl-0 = <&bt_pins_out>, <&bt_pins_in>;
+ clocks = <&rtc 1>;
+ clock-names = "lpo";
+ vbat-supply = <®_vcc3v3>;
+ vddio-supply = <®_vcc3v3>;
+ device-wakeup-gpios = <&pio 6 13 GPIO_ACTIVE_HIGH>; /* PG13 */
+ host-wakeup-gpios = <&pio 6 11 GPIO_ACTIVE_HIGH>; /* PG11 */
+ shutdown-gpios = <&pio 6 12 GPIO_ACTIVE_HIGH>; /* PG12 */
+ };
+
+};
+
+&pio {
+ bt_pins_out: bt_out {
+ pins = "PG12", "PG13";
+ function = "gpio_out";
+ };
+
+ bt_pins_in: bt_in {
+ pins = "PG11";
+ function = "gpio_in";
+ };
};
&usb_otg {
--
2.11.0
Hi,
Thanks for your patch
On Thu, Feb 28, 2019 at 10:28:40PM +0100, Andreas Kemnade wrote:
> The Banana Pi M2 Zero board has an AP6212 BT+Wifi combo chip
> with broadcom internals attached to UART1 and some gpios.
> This addition is in line with similar boards
>
> Signed-off-by: Andreas Kemnade <[email protected]>
> ---
> .../boot/dts/sun8i-h2-plus-bananapi-m2-zero.dts | 29 ++++++++++++++++++++++
> 1 file changed, 29 insertions(+)
>
> diff --git a/arch/arm/boot/dts/sun8i-h2-plus-bananapi-m2-zero.dts b/arch/arm/boot/dts/sun8i-h2-plus-bananapi-m2-zero.dts
> index 1db2541135a7..39e206fac4e3 100644
> --- a/arch/arm/boot/dts/sun8i-h2-plus-bananapi-m2-zero.dts
> +++ b/arch/arm/boot/dts/sun8i-h2-plus-bananapi-m2-zero.dts
> @@ -69,6 +69,8 @@
> compatible = "mmc-pwrseq-simple";
> pinctrl-names = "default";
> reset-gpios = <&r_pio 0 7 GPIO_ACTIVE_LOW>; /* PL7 */
> + clocks = <&rtc 1>;
> + clock-names = "ext_clock";
> };
> };
>
> @@ -122,7 +124,34 @@
> &uart1 {
> pinctrl-names = "default";
> pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>;
> + uart-has-rtscts;
> status = "okay";
> +
> + bluetooth {
> + compatible = "brcm,bcm43438-bt";
> + pinctrl-names = "default";
> + pinctrl-0 = <&bt_pins_out>, <&bt_pins_in>;
> + clocks = <&rtc 1>;
> + clock-names = "lpo";
> + vbat-supply = <®_vcc3v3>;
> + vddio-supply = <®_vcc3v3>;
> + device-wakeup-gpios = <&pio 6 13 GPIO_ACTIVE_HIGH>; /* PG13 */
> + host-wakeup-gpios = <&pio 6 11 GPIO_ACTIVE_HIGH>; /* PG11 */
> + shutdown-gpios = <&pio 6 12 GPIO_ACTIVE_HIGH>; /* PG12 */
> + };
> +
> +};
> +
> +&pio {
> + bt_pins_out: bt_out {
> + pins = "PG12", "PG13";
> + function = "gpio_out";
> + };
> +
> + bt_pins_in: bt_in {
> + pins = "PG11";
> + function = "gpio_in";
> + };
You don't need any of those pinctrl nodes, GPIOs work fine without.
Maxime
--
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
On Fri, 1 Mar 2019 15:36:32 +0100
Maxime Ripard <[email protected]> wrote:
> Hi,
>
> Thanks for your patch
>
> On Thu, Feb 28, 2019 at 10:28:40PM +0100, Andreas Kemnade wrote:
> > The Banana Pi M2 Zero board has an AP6212 BT+Wifi combo chip
> > with broadcom internals attached to UART1 and some gpios.
> > This addition is in line with similar boards
> >
> > Signed-off-by: Andreas Kemnade <[email protected]>
> > ---
> > .../boot/dts/sun8i-h2-plus-bananapi-m2-zero.dts | 29 ++++++++++++++++++++++
> > 1 file changed, 29 insertions(+)
> >
> > diff --git a/arch/arm/boot/dts/sun8i-h2-plus-bananapi-m2-zero.dts b/arch/arm/boot/dts/sun8i-h2-plus-bananapi-m2-zero.dts
> > index 1db2541135a7..39e206fac4e3 100644
> > --- a/arch/arm/boot/dts/sun8i-h2-plus-bananapi-m2-zero.dts
> > +++ b/arch/arm/boot/dts/sun8i-h2-plus-bananapi-m2-zero.dts
> > @@ -69,6 +69,8 @@
> > compatible = "mmc-pwrseq-simple";
> > pinctrl-names = "default";
> > reset-gpios = <&r_pio 0 7 GPIO_ACTIVE_LOW>; /* PL7 */
> > + clocks = <&rtc 1>;
> > + clock-names = "ext_clock";
> > };
> > };
> >
> > @@ -122,7 +124,34 @@
> > &uart1 {
> > pinctrl-names = "default";
> > pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>;
> > + uart-has-rtscts;
> > status = "okay";
> > +
> > + bluetooth {
> > + compatible = "brcm,bcm43438-bt";
> > + pinctrl-names = "default";
> > + pinctrl-0 = <&bt_pins_out>, <&bt_pins_in>;
> > + clocks = <&rtc 1>;
> > + clock-names = "lpo";
> > + vbat-supply = <®_vcc3v3>;
> > + vddio-supply = <®_vcc3v3>;
> > + device-wakeup-gpios = <&pio 6 13 GPIO_ACTIVE_HIGH>; /* PG13 */
> > + host-wakeup-gpios = <&pio 6 11 GPIO_ACTIVE_HIGH>; /* PG11 */
> > + shutdown-gpios = <&pio 6 12 GPIO_ACTIVE_HIGH>; /* PG12 */
> > + };
> > +
> > +};
> > +
> > +&pio {
> > + bt_pins_out: bt_out {
> > + pins = "PG12", "PG13";
> > + function = "gpio_out";
> > + };
> > +
> > + bt_pins_in: bt_in {
> > + pins = "PG11";
> > + function = "gpio_in";
> > + };
>
> You don't need any of those pinctrl nodes, GPIOs work fine without.
>
ok, that makes things easier. I will resend a v2 without them.
Regards,
Andreas