imx6: backport v5.8 imx6qdl-gw dt patches
[openwrt/staging/rmilecki.git] / target / linux / imx6 / patches-5.4 / 009-v5.8-ARM-dts-imx6qdl-gw5910-add-support-for-bcm4330-bt.patch
1 From d40edafe80569c5b4d8893c1cdd1060c54ef433c Mon Sep 17 00:00:00 2001
2 From: Tim Harvey <tharvey@gateworks.com>
3 Date: Tue, 12 May 2020 14:54:15 -0700
4 Subject: [PATCH 07/20] ARM: dts: imx6qdl-gw5910: add support for bcm4330-bt
5
6 The Sterling-LWB has a BCM4330 which has a UART based bluetooth
7 HCI. Add support for binding to the bcm_hci driver to take care
8 of handling the shutdown gpio and loading firmware.
9
10 Because the shutdown gpio is more of an enable than a regulator
11 go ahead and replace the regulator with a shutdown-gpio.
12
13 Signed-off-by: Tim Harvey <tharvey@gateworks.com>
14 Signed-off-by: Shawn Guo <shawnguo@kernel.org>
15 ---
16 arch/arm/boot/dts/imx6qdl-gw5910.dtsi | 32 ++++++++++++--------------------
17 1 file changed, 12 insertions(+), 20 deletions(-)
18
19 diff --git a/arch/arm/boot/dts/imx6qdl-gw5910.dtsi b/arch/arm/boot/dts/imx6qdl-gw5910.dtsi
20 index 30fe47f..b850f8f 100644
21 --- a/arch/arm/boot/dts/imx6qdl-gw5910.dtsi
22 +++ b/arch/arm/boot/dts/imx6qdl-gw5910.dtsi
23 @@ -83,19 +83,6 @@
24 regulator-max-microvolt = <3300000>;
25 regulator-always-on;
26 };
27 -
28 - reg_bt: regulator-bt {
29 - pinctrl-names = "default";
30 - pinctrl-0 = <&pinctrl_reg_bt>;
31 - compatible = "regulator-fixed";
32 - regulator-name = "bt";
33 - gpio = <&gpio1 2 GPIO_ACTIVE_HIGH>;
34 - startup-delay-us = <100>;
35 - enable-active-high;
36 - regulator-min-microvolt = <3300000>;
37 - regulator-max-microvolt = <3300000>;
38 - regulator-always-on;
39 - };
40 };
41
42
43 @@ -231,9 +218,14 @@
44 /* Sterling-LWB Bluetooth */
45 &uart4 {
46 pinctrl-names = "default";
47 - pinctrl-0 = <&pinctrl_uart4>;
48 + pinctrl-0 = <&pinctrl_uart4>,<&pinctrl_bten>;
49 uart-has-rtscts;
50 status = "okay";
51 +
52 + bluetooth {
53 + compatible = "brcm,bcm4330-bt";
54 + shutdown-gpios = <&gpio1 2 GPIO_ACTIVE_HIGH>;
55 + };
56 };
57
58 /* GPS */
59 @@ -288,6 +280,12 @@
60 >;
61 };
62
63 + pinctrl_bten: btengrp {
64 + fsl,pins = <
65 + MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x1b0b1
66 + >;
67 + };
68 +
69 pinctrl_ecspi3: escpi3grp {
70 fsl,pins = <
71 MX6QDL_PAD_DISP0_DAT0__ECSPI3_SCLK 0x100b1
72 @@ -393,12 +391,6 @@
73 >;
74 };
75
76 - pinctrl_reg_bt: regbtgrp {
77 - fsl,pins = <
78 - MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x1b0b1
79 - >;
80 - };
81 -
82 pinctrl_reg_wl: regwlgrp {
83 fsl,pins = <
84 MX6QDL_PAD_GPIO_5__GPIO1_IO05 0x1b0b1
85 --
86 2.7.4
87