diff mbox series

[5/8] arm64: dts: rockchip: Fix bluetooth properties on rk3566 box demo

Message ID 20240930210112.1993625-6-heiko@sntech.de (mailing list archive)
State New
Headers show
Series Fixing some dtbscheck warnings | expand

Commit Message

Heiko Stübner Sept. 30, 2024, 9:01 p.m. UTC
The expected clock-name is different (ext_clock -> extclk) and the wakeup
gpio properties are named differently when changing from vendor-tree to
mainline. So fix those to match the binding.

Fixes: 2e0537b16b25 ("arm64: dts: rockchip: Add dts for rockchip rk3566 box demo board")
Cc: Andy Yan <andyshrk@163.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
---
 arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

Comments

Diederik de Haas Oct. 7, 2024, 3:27 p.m. UTC | #1
On Mon Sep 30, 2024 at 11:01 PM CEST, Heiko Stuebner wrote:
> The expected clock-name is different (ext_clock -> extclk) and the wakeup

According to "brcm,bluetooth.yaml", 'extclk' is deprecated in favor of
'txco', so it seems better to use that?
Same would be true for Rock960 boards (patch 6 of this series).

Cheers,
  Diederik

> gpio properties are named differently when changing from vendor-tree to
> mainline. So fix those to match the binding.
>
> Fixes: 2e0537b16b25 ("arm64: dts: rockchip: Add dts for rockchip rk3566 box demo board")
> Cc: Andy Yan <andyshrk@163.com>
> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
> ---
>  arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts b/arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts
> index 0c18406e4c59..dd6fe964d618 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts
> +++ b/arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts
> @@ -449,9 +449,9 @@ &uart1 {
>  	bluetooth {
>  		compatible = "brcm,bcm43438-bt";
>  		clocks = <&pmucru CLK_RTC_32K>;
> -		clock-names = "ext_clock";
> -		device-wake-gpios = <&gpio2 RK_PC1 GPIO_ACTIVE_HIGH>;
> -		host-wake-gpios = <&gpio2 RK_PC0 GPIO_ACTIVE_HIGH>;
> +		clock-names = "extclk";
> +		device-wakeup-gpios = <&gpio2 RK_PC1 GPIO_ACTIVE_HIGH>;
> +		host-wakeup-gpios = <&gpio2 RK_PC0 GPIO_ACTIVE_HIGH>;
>  		shutdown-gpios = <&gpio2 RK_PB7 GPIO_ACTIVE_HIGH>;
>  		pinctrl-names = "default";
>  		pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_enable_h>;
Heiko Stübner Oct. 7, 2024, 4:04 p.m. UTC | #2
Hi Diederik,

Am Montag, 7. Oktober 2024, 17:27:12 CEST schrieb Diederik de Haas:
> On Mon Sep 30, 2024 at 11:01 PM CEST, Heiko Stuebner wrote:
> > The expected clock-name is different (ext_clock -> extclk) and the wakeup
> 
> According to "brcm,bluetooth.yaml", 'extclk' is deprecated in favor of
> 'txco', so it seems better to use that?
> Same would be true for Rock960 boards (patch 6 of this series).

thanks for that catch. I mainly stumbled upon the "_" underscore, found the
clockname without but didn't take into account that there was a deprecated
flag set in the binding :-)


> > gpio properties are named differently when changing from vendor-tree to
> > mainline. So fix those to match the binding.
> >
> > Fixes: 2e0537b16b25 ("arm64: dts: rockchip: Add dts for rockchip rk3566 box demo board")
> > Cc: Andy Yan <andyshrk@163.com>
> > Signed-off-by: Heiko Stuebner <heiko@sntech.de>
> > ---
> >  arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts | 6 +++---
> >  1 file changed, 3 insertions(+), 3 deletions(-)
> >
> > diff --git a/arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts b/arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts
> > index 0c18406e4c59..dd6fe964d618 100644
> > --- a/arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts
> > +++ b/arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts
> > @@ -449,9 +449,9 @@ &uart1 {
> >  	bluetooth {
> >  		compatible = "brcm,bcm43438-bt";
> >  		clocks = <&pmucru CLK_RTC_32K>;
> > -		clock-names = "ext_clock";
> > -		device-wake-gpios = <&gpio2 RK_PC1 GPIO_ACTIVE_HIGH>;
> > -		host-wake-gpios = <&gpio2 RK_PC0 GPIO_ACTIVE_HIGH>;
> > +		clock-names = "extclk";
> > +		device-wakeup-gpios = <&gpio2 RK_PC1 GPIO_ACTIVE_HIGH>;
> > +		host-wakeup-gpios = <&gpio2 RK_PC0 GPIO_ACTIVE_HIGH>;
> >  		shutdown-gpios = <&gpio2 RK_PB7 GPIO_ACTIVE_HIGH>;
> >  		pinctrl-names = "default";
> >  		pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_enable_h>;
> 
>
Diederik de Haas Oct. 7, 2024, 7:33 p.m. UTC | #3
Hi Heiko,

On Mon Oct 7, 2024 at 6:04 PM CEST, Heiko Stübner wrote:
> Am Montag, 7. Oktober 2024, 17:27:12 CEST schrieb Diederik de Haas:
> > On Mon Sep 30, 2024 at 11:01 PM CEST, Heiko Stuebner wrote:
> > > The expected clock-name is different (ext_clock -> extclk) and the wakeup
> > 
> > According to "brcm,bluetooth.yaml", 'extclk' is deprecated in favor of
> > 'txco', so it seems better to use that?
> > Same would be true for Rock960 boards (patch 6 of this series).
>
> thanks for that catch. I mainly stumbled upon the "_" underscore, found the
> clockname without but didn't take into account that there was a deprecated
> flag set in the binding :-)

Doing research for another improvement, I stumbled upon this commit:

ebceec271e55 ("arm64: dts: rockchip: Fix Wifi/Bluetooth on ROCK Pi 4 boards")

with the following diff:

```
 	sdio_pwrseq: sdio-pwrseq {
 		compatible = "mmc-pwrseq-simple";
 		clocks = <&rk808 1>;
-		clock-names = "ext_clock";
+		clock-names = "lpo";
 		pinctrl-names = "default";
 		pinctrl-0 = <&wifi_enable_h>;
 		reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>;
```

But do read the full git commit message.

The corresponding bluetooth node had 'lpo' as new value for
'clock-names' though ... from "ext_clock", but it also changed
its compatible, so it's not the same. For details, see commit
f471b1b2db08 ("arm64: dts: rockchip: Fix Bluetooth on ROCK Pi 4 boards")

So it's possible the change needs to be more extensive.
And a Tested-by tag from someone with the board is probably a good idea.

Regards,
  Diederik

> > > gpio properties are named differently when changing from vendor-tree to
> > > mainline. So fix those to match the binding.
> > >
> > > Fixes: 2e0537b16b25 ("arm64: dts: rockchip: Add dts for rockchip rk3566 box demo board")
> > > Cc: Andy Yan <andyshrk@163.com>
> > > Signed-off-by: Heiko Stuebner <heiko@sntech.de>
> > > ---
> > >  arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts | 6 +++---
> > >  1 file changed, 3 insertions(+), 3 deletions(-)
> > >
> > > diff --git a/arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts b/arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts
> > > index 0c18406e4c59..dd6fe964d618 100644
> > > --- a/arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts
> > > +++ b/arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts
> > > @@ -449,9 +449,9 @@ &uart1 {
> > >  	bluetooth {
> > >  		compatible = "brcm,bcm43438-bt";
> > >  		clocks = <&pmucru CLK_RTC_32K>;
> > > -		clock-names = "ext_clock";
> > > -		device-wake-gpios = <&gpio2 RK_PC1 GPIO_ACTIVE_HIGH>;
> > > -		host-wake-gpios = <&gpio2 RK_PC0 GPIO_ACTIVE_HIGH>;
> > > +		clock-names = "extclk";
> > > +		device-wakeup-gpios = <&gpio2 RK_PC1 GPIO_ACTIVE_HIGH>;
> > > +		host-wakeup-gpios = <&gpio2 RK_PC0 GPIO_ACTIVE_HIGH>;
> > >  		shutdown-gpios = <&gpio2 RK_PB7 GPIO_ACTIVE_HIGH>;
> > >  		pinctrl-names = "default";
> > >  		pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_enable_h>;
> > 
> >
Heiko Stübner Oct. 8, 2024, 8:20 p.m. UTC | #4
Am Montag, 7. Oktober 2024, 21:33:11 CEST schrieb Diederik de Haas:
> Hi Heiko,
> 
> On Mon Oct 7, 2024 at 6:04 PM CEST, Heiko Stübner wrote:
> > Am Montag, 7. Oktober 2024, 17:27:12 CEST schrieb Diederik de Haas:
> > > On Mon Sep 30, 2024 at 11:01 PM CEST, Heiko Stuebner wrote:
> > > > The expected clock-name is different (ext_clock -> extclk) and the wakeup
> > > 
> > > According to "brcm,bluetooth.yaml", 'extclk' is deprecated in favor of
> > > 'txco', so it seems better to use that?
> > > Same would be true for Rock960 boards (patch 6 of this series).
> >
> > thanks for that catch. I mainly stumbled upon the "_" underscore, found the
> > clockname without but didn't take into account that there was a deprecated
> > flag set in the binding :-)
> 
> Doing research for another improvement, I stumbled upon this commit:
> 
> ebceec271e55 ("arm64: dts: rockchip: Fix Wifi/Bluetooth on ROCK Pi 4 boards")
> 
> with the following diff:
> 
> ```
>  	sdio_pwrseq: sdio-pwrseq {
>  		compatible = "mmc-pwrseq-simple";
>  		clocks = <&rk808 1>;
> -		clock-names = "ext_clock";
> +		clock-names = "lpo";
>  		pinctrl-names = "default";
>  		pinctrl-0 = <&wifi_enable_h>;
>  		reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>;
> ```
> 

The brcm,bluetooth binding is pretty clear, it's
txco - for an "external reference clock, not a crystal"
lpo - for a low power 32.768 kHz clock.

The rk808 and also the pmucru are both "not crystals", so I'll just go
with the "txco".

The hci_bcm driver also handles txco and extclk the same, so there won't
be a behaviour change with existing code.


Heiko

> But do read the full git commit message.
> 
> The corresponding bluetooth node had 'lpo' as new value for
> 'clock-names' though ... from "ext_clock", but it also changed
> its compatible, so it's not the same. For details, see commit
> f471b1b2db08 ("arm64: dts: rockchip: Fix Bluetooth on ROCK Pi 4 boards")
> 
> So it's possible the change needs to be more extensive.
> And a Tested-by tag from someone with the board is probably a good idea.
> 
> Regards,
>   Diederik
> 
> > > > gpio properties are named differently when changing from vendor-tree to
> > > > mainline. So fix those to match the binding.
> > > >
> > > > Fixes: 2e0537b16b25 ("arm64: dts: rockchip: Add dts for rockchip rk3566 box demo board")
> > > > Cc: Andy Yan <andyshrk@163.com>
> > > > Signed-off-by: Heiko Stuebner <heiko@sntech.de>
> > > > ---
> > > >  arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts | 6 +++---
> > > >  1 file changed, 3 insertions(+), 3 deletions(-)
> > > >
> > > > diff --git a/arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts b/arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts
> > > > index 0c18406e4c59..dd6fe964d618 100644
> > > > --- a/arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts
> > > > +++ b/arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts
> > > > @@ -449,9 +449,9 @@ &uart1 {
> > > >  	bluetooth {
> > > >  		compatible = "brcm,bcm43438-bt";
> > > >  		clocks = <&pmucru CLK_RTC_32K>;
> > > > -		clock-names = "ext_clock";
> > > > -		device-wake-gpios = <&gpio2 RK_PC1 GPIO_ACTIVE_HIGH>;
> > > > -		host-wake-gpios = <&gpio2 RK_PC0 GPIO_ACTIVE_HIGH>;
> > > > +		clock-names = "extclk";
> > > > +		device-wakeup-gpios = <&gpio2 RK_PC1 GPIO_ACTIVE_HIGH>;
> > > > +		host-wakeup-gpios = <&gpio2 RK_PC0 GPIO_ACTIVE_HIGH>;
> > > >  		shutdown-gpios = <&gpio2 RK_PB7 GPIO_ACTIVE_HIGH>;
> > > >  		pinctrl-names = "default";
> > > >  		pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_enable_h>;
> > > 
> > > 
> 
>
Diederik de Haas Oct. 8, 2024, 8:26 p.m. UTC | #5
On Tue Oct 8, 2024 at 10:20 PM CEST, Heiko Stübner wrote:
> Am Montag, 7. Oktober 2024, 21:33:11 CEST schrieb Diederik de Haas:
> > On Mon Oct 7, 2024 at 6:04 PM CEST, Heiko Stübner wrote:
> > > Am Montag, 7. Oktober 2024, 17:27:12 CEST schrieb Diederik de Haas:
> > > > On Mon Sep 30, 2024 at 11:01 PM CEST, Heiko Stuebner wrote:
> > > > > The expected clock-name is different (ext_clock -> extclk) and the wakeup
> > > > 
> > > > According to "brcm,bluetooth.yaml", 'extclk' is deprecated in favor of
> > > > 'txco', so it seems better to use that?
> > > > Same would be true for Rock960 boards (patch 6 of this series).
> > >
> > > thanks for that catch. I mainly stumbled upon the "_" underscore, found the
> > > clockname without but didn't take into account that there was a deprecated
> > > flag set in the binding :-)
> > 
> > Doing research for another improvement, I stumbled upon this commit:
> > 
> > ebceec271e55 ("arm64: dts: rockchip: Fix Wifi/Bluetooth on ROCK Pi 4 boards")
> > 
> > with the following diff:
> > 
> > ```
> >  	sdio_pwrseq: sdio-pwrseq {
> >  		compatible = "mmc-pwrseq-simple";
> >  		clocks = <&rk808 1>;
> > -		clock-names = "ext_clock";
> > +		clock-names = "lpo";
> >  		pinctrl-names = "default";
> >  		pinctrl-0 = <&wifi_enable_h>;
> >  		reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>;
> > ```
> > 
>
> The brcm,bluetooth binding is pretty clear, it's
> txco - for an "external reference clock, not a crystal"
> lpo - for a low power 32.768 kHz clock.
>
> The rk808 and also the pmucru are both "not crystals", so I'll just go
> with the "txco".
>
> The hci_bcm driver also handles txco and extclk the same, so there won't
> be a behaviour change with existing code.

Excellent. Thanks for verifying :-)

Cheers,
  Diederik

> > But do read the full git commit message.
> > 
> > The corresponding bluetooth node had 'lpo' as new value for
> > 'clock-names' though ... from "ext_clock", but it also changed
> > its compatible, so it's not the same. For details, see commit
> > f471b1b2db08 ("arm64: dts: rockchip: Fix Bluetooth on ROCK Pi 4 boards")
> > 
> > So it's possible the change needs to be more extensive.
> > And a Tested-by tag from someone with the board is probably a good idea.
> > 
> > Regards,
> >   Diederik
> > 
> > > > > gpio properties are named differently when changing from vendor-tree to
> > > > > mainline. So fix those to match the binding.
> > > > >
> > > > > Fixes: 2e0537b16b25 ("arm64: dts: rockchip: Add dts for rockchip rk3566 box demo board")
> > > > > Cc: Andy Yan <andyshrk@163.com>
> > > > > Signed-off-by: Heiko Stuebner <heiko@sntech.de>
> > > > > ---
> > > > >  arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts | 6 +++---
> > > > >  1 file changed, 3 insertions(+), 3 deletions(-)
> > > > >
> > > > > diff --git a/arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts b/arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts
> > > > > index 0c18406e4c59..dd6fe964d618 100644
> > > > > --- a/arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts
> > > > > +++ b/arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts
> > > > > @@ -449,9 +449,9 @@ &uart1 {
> > > > >  	bluetooth {
> > > > >  		compatible = "brcm,bcm43438-bt";
> > > > >  		clocks = <&pmucru CLK_RTC_32K>;
> > > > > -		clock-names = "ext_clock";
> > > > > -		device-wake-gpios = <&gpio2 RK_PC1 GPIO_ACTIVE_HIGH>;
> > > > > -		host-wake-gpios = <&gpio2 RK_PC0 GPIO_ACTIVE_HIGH>;
> > > > > +		clock-names = "extclk";
> > > > > +		device-wakeup-gpios = <&gpio2 RK_PC1 GPIO_ACTIVE_HIGH>;
> > > > > +		host-wakeup-gpios = <&gpio2 RK_PC0 GPIO_ACTIVE_HIGH>;
> > > > >  		shutdown-gpios = <&gpio2 RK_PB7 GPIO_ACTIVE_HIGH>;
> > > > >  		pinctrl-names = "default";
> > > > >  		pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_enable_h>;
> > > > 
> > > > 
> > 
> >
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts b/arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts
index 0c18406e4c59..dd6fe964d618 100644
--- a/arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3566-box-demo.dts
@@ -449,9 +449,9 @@  &uart1 {
 	bluetooth {
 		compatible = "brcm,bcm43438-bt";
 		clocks = <&pmucru CLK_RTC_32K>;
-		clock-names = "ext_clock";
-		device-wake-gpios = <&gpio2 RK_PC1 GPIO_ACTIVE_HIGH>;
-		host-wake-gpios = <&gpio2 RK_PC0 GPIO_ACTIVE_HIGH>;
+		clock-names = "extclk";
+		device-wakeup-gpios = <&gpio2 RK_PC1 GPIO_ACTIVE_HIGH>;
+		host-wakeup-gpios = <&gpio2 RK_PC0 GPIO_ACTIVE_HIGH>;
 		shutdown-gpios = <&gpio2 RK_PB7 GPIO_ACTIVE_HIGH>;
 		pinctrl-names = "default";
 		pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_enable_h>;