2021-05-04 04:27:42

by Chen-Yu Tsai

[permalink] [raw]
Subject: [PATCH v2] arm64: dts: meson-gxbb: nanopi-k2: Enable Bluetooth

From: Chen-Yu Tsai <[email protected]>

The NanoPi K2 has a AP6212 WiFi+BT combo module. The WiFi portion is
already enabled. The BT part is connected via UART and I2S.

Enable the UART and add a device node describing the Bluetooth portion
of the module.

Signed-off-by: Chen-Yu Tsai <[email protected]>
---
Changes since v1:
- added uart-has-rtscts property
- added alias for uart_A

Hi Neil, Martin,

I dropped your review-bys since I added the UART alias and I'm not sure
what the policy for those are.

ChenYu
---
.../boot/dts/amlogic/meson-gxbb-nanopi-k2.dts | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts
index 7273eed5292c..f017a263784f 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts
@@ -15,6 +15,7 @@ / {

aliases {
serial0 = &uart_AO;
+ serial1 = &uart_A;
ethernet0 = &ethmac;
};

@@ -385,9 +386,20 @@ &uart_AO {

/* Bluetooth on AP6212 */
&uart_A {
- status = "disabled";
+ status = "okay";
pinctrl-0 = <&uart_a_pins>, <&uart_a_cts_rts_pins>;
pinctrl-names = "default";
+ uart-has-rtscts;
+
+ bluetooth {
+ compatible = "brcm,bcm43438-bt";
+ clocks = <&wifi_32k>;
+ clock-names = "lpo";
+ vbat-supply = <&vddio_ao3v3>;
+ vddio-supply = <&vddio_ao18>;
+ host-wakeup-gpios = <&gpio GPIOX_21 GPIO_ACTIVE_HIGH>;
+ shutdown-gpios = <&gpio GPIOX_20 GPIO_ACTIVE_HIGH>;
+ };
};

/* 40-pin CON1 */
--
2.31.1


2021-05-04 20:53:45

by Martin Blumenstingl

[permalink] [raw]
Subject: Re: [PATCH v2] arm64: dts: meson-gxbb: nanopi-k2: Enable Bluetooth

Hi,

On Tue, May 4, 2021 at 6:17 AM Chen-Yu Tsai <[email protected]> wrote:
>
> From: Chen-Yu Tsai <[email protected]>
>
> The NanoPi K2 has a AP6212 WiFi+BT combo module. The WiFi portion is
> already enabled. The BT part is connected via UART and I2S.
>
> Enable the UART and add a device node describing the Bluetooth portion
> of the module.
>
> Signed-off-by: Chen-Yu Tsai <[email protected]>
> ---
> Changes since v1:
> - added uart-has-rtscts property
> - added alias for uart_A
>
> Hi Neil, Martin,
>
> I dropped your review-bys since I added the UART alias and I'm not sure
> what the policy for those are.
>
> ChenYu
> ---
> .../boot/dts/amlogic/meson-gxbb-nanopi-k2.dts | 14 +++++++++++++-
> 1 file changed, 13 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts
> index 7273eed5292c..f017a263784f 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts
> +++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts
> @@ -15,6 +15,7 @@ / {
>
> aliases {
> serial0 = &uart_AO;
> + serial1 = &uart_A;
this should not be needed anymore since
a26988e8fef4b258d1b771e0f4b2e3b67cb2e044 ("tty: serial: meson: if no
alias specified use an available id")

IIRC for "newly added" .dts we are only adding the alias for anything
that shows up in /dev/ for the user
meson-khadas-vim3.dtsi for example is not adding an alias for uart_A
(also used for Bluetooth)


Best regards,
Martin

2021-05-05 03:01:39

by Chen-Yu Tsai

[permalink] [raw]
Subject: Re: [PATCH v2] arm64: dts: meson-gxbb: nanopi-k2: Enable Bluetooth

On Wed, May 5, 2021 at 4:52 AM Martin Blumenstingl
<[email protected]> wrote:
>
> Hi,
>
> On Tue, May 4, 2021 at 6:17 AM Chen-Yu Tsai <[email protected]> wrote:
> >
> > From: Chen-Yu Tsai <[email protected]>
> >
> > The NanoPi K2 has a AP6212 WiFi+BT combo module. The WiFi portion is
> > already enabled. The BT part is connected via UART and I2S.
> >
> > Enable the UART and add a device node describing the Bluetooth portion
> > of the module.
> >
> > Signed-off-by: Chen-Yu Tsai <[email protected]>
> > ---
> > Changes since v1:
> > - added uart-has-rtscts property
> > - added alias for uart_A
> >
> > Hi Neil, Martin,
> >
> > I dropped your review-bys since I added the UART alias and I'm not sure
> > what the policy for those are.
> >
> > ChenYu
> > ---
> > .../boot/dts/amlogic/meson-gxbb-nanopi-k2.dts | 14 +++++++++++++-
> > 1 file changed, 13 insertions(+), 1 deletion(-)
> >
> > diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts
> > index 7273eed5292c..f017a263784f 100644
> > --- a/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts
> > +++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts
> > @@ -15,6 +15,7 @@ / {
> >
> > aliases {
> > serial0 = &uart_AO;
> > + serial1 = &uart_A;
> this should not be needed anymore since
> a26988e8fef4b258d1b771e0f4b2e3b67cb2e044 ("tty: serial: meson: if no
> alias specified use an available id")
>
> IIRC for "newly added" .dts we are only adding the alias for anything
> that shows up in /dev/ for the user
> meson-khadas-vim3.dtsi for example is not adding an alias for uart_A
> (also used for Bluetooth)

I see. So if some user had a customized .dts enabling more UARTs, they
would probably have the user visible ones aliased, and the Bluetooth
one would be in the reserved range regardless.

I'll drop the extra alias then.

Thanks
ChenYu