Skip to content

Commit 2369afb

Browse files
committed
Merge branch 'for-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next
Johan Hedberg says: ==================== pull request: bluetooth-next 2019-03-02 Here's one more bluetooth-next pull request for the 5.1 kernel: - Added support for MediaTek MT7663U and MT7668U UART devices - Cleanups & fixes to the hci_qca driver - Fixed wakeup pin behavior for QCA6174A controller Please let me know if there are any issues pulling. Thanks. ==================== Signed-off-by: David S. Miller <[email protected]>
2 parents 9eb3591 + 22eaf6c commit 2369afb

File tree

13 files changed

+478
-97
lines changed

13 files changed

+478
-97
lines changed

Documentation/devicetree/bindings/net/btusb.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,9 @@ Required properties:
99
(more may be added later) are:
1010

1111
"usb1286,204e" (Marvell 8997)
12+
"usbcf3,e300" (Qualcomm QCA6174A)
13+
"usb4ca,301a" (Qualcomm QCA6174A (Lite-On))
14+
1215

1316
Also, vendors that use btusb may have device additional properties, e.g:
1417
Documentation/devicetree/bindings/net/marvell-bt-8xxx.txt

Documentation/devicetree/bindings/net/mediatek-bluetooth.txt

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,3 +33,67 @@ Example:
3333
clock-names = "ref";
3434
};
3535
};
36+
37+
MediaTek UART based Bluetooth Devices
38+
==================================
39+
40+
This device is a serial attached device to UART device and thus it must be a
41+
child node of the serial node with UART.
42+
43+
Please refer to the following documents for generic properties:
44+
45+
Documentation/devicetree/bindings/serial/slave-device.txt
46+
47+
Required properties:
48+
49+
- compatible: Must be
50+
"mediatek,mt7663u-bluetooth": for MT7663U device
51+
"mediatek,mt7668u-bluetooth": for MT7668U device
52+
- vcc-supply: Main voltage regulator
53+
- pinctrl-names: Should be "default", "runtime"
54+
- pinctrl-0: Should contain UART RXD low when the device is powered up to
55+
enter proper bootstrap mode.
56+
- pinctrl-1: Should contain UART mode pin ctrl
57+
58+
Optional properties:
59+
60+
- reset-gpios: GPIO used to reset the device whose initial state keeps low,
61+
if the GPIO is missing, then board-level design should be
62+
guaranteed.
63+
- current-speed: Current baud rate of the device whose defaults to 921600
64+
65+
Example:
66+
67+
uart1_pins_boot: uart1-default {
68+
pins-dat {
69+
pinmux = <MT7623_PIN_81_URXD1_FUNC_GPIO81>;
70+
output-low;
71+
};
72+
};
73+
74+
uart1_pins_runtime: uart1-runtime {
75+
pins-dat {
76+
pinmux = <MT7623_PIN_81_URXD1_FUNC_URXD1>,
77+
<MT7623_PIN_82_UTXD1_FUNC_UTXD1>;
78+
};
79+
};
80+
81+
uart1: serial@11003000 {
82+
compatible = "mediatek,mt7623-uart",
83+
"mediatek,mt6577-uart";
84+
reg = <0 0x11003000 0 0x400>;
85+
interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_LOW>;
86+
clocks = <&pericfg CLK_PERI_UART1_SEL>,
87+
<&pericfg CLK_PERI_UART1>;
88+
clock-names = "baud", "bus";
89+
90+
bluetooth {
91+
compatible = "mediatek,mt7663u-bluetooth";
92+
vcc-supply = <&reg_5v>;
93+
reset-gpios = <&pio 24 GPIO_ACTIVE_LOW>;
94+
pinctrl-names = "default", "runtime";
95+
pinctrl-0 = <&uart1_pins_boot>;
96+
pinctrl-1 = <&uart1_pins_runtime>;
97+
current-speed = <921600>;
98+
};
99+
};

arch/arm64/boot/dts/rockchip/rk3399-gru-chromebook.dtsi

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -200,6 +200,19 @@
200200
pinctrl-0 = <&bl_en>;
201201
pwm-delay-us = <10000>;
202202
};
203+
204+
gpio_keys: gpio-keys {
205+
compatible = "gpio-keys";
206+
pinctrl-names = "default";
207+
pinctrl-0 = <&bt_host_wake_l>;
208+
209+
wake_on_bt: wake-on-bt {
210+
label = "Wake-on-Bluetooth";
211+
gpios = <&gpio0 3 GPIO_ACTIVE_LOW>;
212+
linux,code = <KEY_WAKEUP>;
213+
wakeup-source;
214+
};
215+
};
203216
};
204217

205218
&ppvar_bigcpu {

arch/arm64/boot/dts/rockchip/rk3399-gru-scarlet.dtsi

Lines changed: 29 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -175,6 +175,21 @@
175175
pinctrl-0 = <&dmic_en>;
176176
wakeup-delay-ms = <250>;
177177
};
178+
179+
gpio_keys: gpio-keys {
180+
compatible = "gpio-keys";
181+
pinctrl-names = "default";
182+
pinctrl-0 = <&pen_eject_odl>;
183+
184+
pen-insert {
185+
label = "Pen Insert";
186+
/* Insert = low, eject = high */
187+
gpios = <&gpio1 1 GPIO_ACTIVE_LOW>;
188+
linux,code = <SW_PEN_INSERTED>;
189+
linux,input-type = <EV_SW>;
190+
wakeup-source;
191+
};
192+
};
178193
};
179194

180195
/* pp900_s0 aliases */
@@ -328,20 +343,6 @@ camera: &i2c7 {
328343
<400000000>;
329344
};
330345

331-
&gpio_keys {
332-
pinctrl-names = "default";
333-
pinctrl-0 = <&bt_host_wake_l>, <&pen_eject_odl>;
334-
335-
pen-insert {
336-
label = "Pen Insert";
337-
/* Insert = low, eject = high */
338-
gpios = <&gpio1 1 GPIO_ACTIVE_LOW>;
339-
linux,code = <SW_PEN_INSERTED>;
340-
linux,input-type = <EV_SW>;
341-
wakeup-source;
342-
};
343-
};
344-
345346
&i2c_tunnel {
346347
google,remote-bus = <0>;
347348
};
@@ -437,8 +438,19 @@ camera: &i2c7 {
437438
status = "okay";
438439
};
439440

440-
&wake_on_bt {
441-
gpios = <&gpio1 2 GPIO_ACTIVE_LOW>;
441+
&usb_host0_ohci {
442+
#address-cells = <1>;
443+
#size-cells = <0>;
444+
445+
qca_bt: bluetooth@1 {
446+
compatible = "usbcf3,e300", "usb4ca,301a";
447+
reg = <1>;
448+
pinctrl-names = "default";
449+
pinctrl-0 = <&bt_host_wake_l>;
450+
interrupt-parent = <&gpio1>;
451+
interrupts = <2 IRQ_TYPE_LEVEL_HIGH>;
452+
interrupt-names = "wakeup";
453+
};
442454
};
443455

444456
/* PINCTRL OVERRIDES */
@@ -455,7 +467,7 @@ camera: &i2c7 {
455467
};
456468

457469
&bt_host_wake_l {
458-
rockchip,pins = <1 2 RK_FUNC_GPIO &pcfg_pull_up>;
470+
rockchip,pins = <1 2 RK_FUNC_GPIO &pcfg_pull_none>;
459471
};
460472

461473
&ec_ap_int_l {

arch/arm64/boot/dts/rockchip/rk3399-gru.dtsi

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -269,19 +269,6 @@
269269
#clock-cells = <0>;
270270
};
271271

272-
gpio_keys: gpio-keys {
273-
compatible = "gpio-keys";
274-
pinctrl-names = "default";
275-
pinctrl-0 = <&bt_host_wake_l>;
276-
277-
wake_on_bt: wake-on-bt {
278-
label = "Wake-on-Bluetooth";
279-
gpios = <&gpio0 3 GPIO_ACTIVE_LOW>;
280-
linux,code = <KEY_WAKEUP>;
281-
wakeup-source;
282-
};
283-
};
284-
285272
max98357a: max98357a {
286273
compatible = "maxim,max98357a";
287274
pinctrl-names = "default";

0 commit comments

Comments
 (0)