sunxi: add support for 4.1
[openwrt/openwrt.git] / target / linux / sunxi / patches-4.1 / 202-dt-sun7i-add-bluetooth-to-cubietruck.patch
1 From c6e2b7dad39a7887f935458d1c8de84db06243e1 Mon Sep 17 00:00:00 2001
2 From: Chen-Yu Tsai <wens@csie.org>
3 Date: Thu, 26 Dec 2013 17:15:47 +0800
4 Subject: [PATCH] ARM: dts: sun7i: add bluetooth module to CubieTruck DTS
5
6 The CubieTruck has an AMPAK AP6210 WiFi+Bluetooth module. The
7 Bluetooth part is a BCM20710 IC connected to UART2 in the A20
8 SoC. The IC also takes a 32.768 KHz low power clock input, a power
9 enable signal and a wake signal via GPIO.
10
11 The Bluetooth module supports out-of-band interrupt signaling via
12 GPIO, but this is not supported in this patch.
13 ---
14 arch/arm/boot/dts/sun7i-a20-cubietruck.dts | 36 ++++++++++++++++++++++++++++++
15 1 file changed, 36 insertions(+)
16
17 Index: linux-4.1.3/arch/arm/boot/dts/sun7i-a20-cubietruck.dts
18 ===================================================================
19 --- linux-4.1.3.orig/arch/arm/boot/dts/sun7i-a20-cubietruck.dts
20 +++ linux-4.1.3/arch/arm/boot/dts/sun7i-a20-cubietruck.dts
21 @@ -88,6 +88,20 @@
22 interrupts = <10 8>; /* PH10 / EINT10 */
23 interrupt-names = "host-wake";
24 };
25 +
26 + bt_pwr_pin: bt_pwr_pin@0 {
27 + allwinner,pins = "PH18";
28 + allwinner,function = "gpio_out";
29 + allwinner,drive = <0>;
30 + allwinner,pull = <0>;
31 + };
32 +
33 + bt_wake_pin: bt_wake_pin@0 {
34 + allwinner,pins = "PH24";
35 + allwinner,function = "gpio_out";
36 + allwinner,drive = <0>;
37 + allwinner,pull = <0>;
38 + };
39 };
40
41 usbphy: phy@01c13400 {
42 @@ -171,6 +185,12 @@
43 status = "okay";
44 };
45
46 + uart2: serial@01c28800 {
47 + pinctrl-names = "default";
48 + pinctrl-0 = <&uart2_pins_a>;
49 + status = "okay";
50 + };
51 +
52 i2c0: i2c@01c2ac00 {
53 pinctrl-names = "default";
54 pinctrl-0 = <&i2c0_pins_a>;
55 @@ -264,6 +284,22 @@
56 enable-active-high;
57 gpio = <&pio 7 9 GPIO_ACTIVE_HIGH>;
58 };
59 +
60 + rfkill-switches {
61 + compatible = "simple-bus";
62 + pinctrl-names = "default";
63 +
64 + rfkill_bt {
65 + compatible = "rfkill-gpio";
66 + pinctrl-0 = <&bt_pwr_pin>, <&clk_out_a_pins_a>;
67 + rfkill-name = "bt";
68 + rfkill-type = <2>;
69 + bt_shutdown-gpios = <0>, <&pio 7 18 0>; /* PH18 */
70 + bt_reset-gpios = <&pio 7 24 0>; /* PH24 */
71 + clocks = <&clk_out_a>;
72 + clock-frequency = <32768>;
73 + };
74 + };
75 };
76
77 #include "axp209.dtsi"