[PATCH 5/5] ARM: dts: s5pv210: Correct BCM4329 bluetooth node

From: Jonathan Bakker
Date: Sat Jun 13 2020 - 14:45:24 EST


There are several issues with the bluetooth node - the wrong
compatible was used (because the bcm4329 compatible didn't exist
when the node was added), the max rate was incorrect (due to
limitations in the samsung TTY driver which have now been fixed),
the clocks were not assigned properly so some rates didn't work,
and the some pinctrl settings weren't explicitly set. Fix all
of the above issues.

While we're at it, update from the deprecated host-wakeup-gpios
property to the host-wake interrupt.

Signed-off-by: Jonathan Bakker <xc-racer2@xxxxxxx>
---
arch/arm/boot/dts/s5pv210-aries.dtsi | 28 ++++++++++++++++++++++++----
1 file changed, 24 insertions(+), 4 deletions(-)

diff --git a/arch/arm/boot/dts/s5pv210-aries.dtsi b/arch/arm/boot/dts/s5pv210-aries.dtsi
index 92ec0e133b25..822207f63ee0 100644
--- a/arch/arm/boot/dts/s5pv210-aries.dtsi
+++ b/arch/arm/boot/dts/s5pv210-aries.dtsi
@@ -629,6 +629,13 @@
};

&pinctrl0 {
+ bt_reset: bt-reset {
+ samsung,pins = "gpb-3";
+ samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
+ samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
+ samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
+ };
+
wlan_bt_en: wlan-bt-en {
samsung,pins = "gpb-5";
samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
@@ -654,6 +661,12 @@
samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
};

+ bt_wake: bt-wake {
+ samsung,pins = "gpg3-4";
+ samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
+ samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
+ };
+
gp2a_irq: gp2a-irq {
samsung,pins = "gph0-2";
samsung,pin-function = <EXYNOS_PIN_FUNC_F>;
@@ -845,16 +858,23 @@
};

&uart0 {
+ assigned-clocks = <&clocks MOUT_UART0>, <&clocks SCLK_UART0>;
+ assigned-clock-rates = <0>, <111166667>;
+ assigned-clock-parents = <&clocks MOUT_MPLL>;
+
status = "okay";

bluetooth {
- compatible = "brcm,bcm43438-bt";
- max-speed = <115200>;
+ compatible = "brcm,bcm4329-bt";
+ max-speed = <3000000>;
pinctrl-names = "default";
- pinctrl-0 = <&uart0_data &uart0_fctl &bt_host_wake>;
+ pinctrl-0 = <&uart0_data &uart0_fctl &bt_host_wake
+ &bt_reset &bt_wake>;
shutdown-gpios = <&gpb 3 GPIO_ACTIVE_HIGH>;
device-wakeup-gpios = <&gpg3 4 GPIO_ACTIVE_HIGH>;
- host-wakeup-gpios = <&gph2 5 GPIO_ACTIVE_HIGH>;
+ interrupt-parent = <&gph2>;
+ interrupts = <5 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "host-wake";
};
};

--
2.20.1