@@ -20,6 +20,7 @@ / {
aliases {
serial0 = &uart12;
+ serial1 = &uart6;
sdhc2 = &sdhc_2;
};
@@ -223,6 +224,28 @@ vreg_s4a_1p8: vreg-s4a-1p8 {
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
+
+ qca6391: qca6391 {
+ compatible = "qcom,qca6390";
+
+ vddaon-supply = <&vreg_s6a_0p95>;
+ vddpmu-supply = <&vreg_s2f_0p95>;
+ vddrfa1-supply = <&vreg_s2f_0p95>;
+ vddrfa2-supply = <&vreg_s8c_1p3>;
+ vddrfa3-supply = <&vreg_s5a_1p9>;
+ vddpcie1-supply = <&vreg_s8c_1p3>;
+ vddpcie2-supply = <&vreg_s5a_1p9>;
+ vddio-supply = <&vreg_s4a_1p8>;
+ };
+
+ vreg_wlan: vreg-wlan {
+ compatible = "regulator-fixed";
+ regulator-name = "vreg-wlan";
+
+ vin-supply = <&qca6391>;
+ gpio = <&tlmm 20 GPIO_ACTIVE_LOW>;
+ enable-active-high;
+ };
};
&adsp {
@@ -668,6 +691,8 @@ &pcie0 {
wake-gpio = <&tlmm 81 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default";
pinctrl-0 = <&pcie0_default_state>;
+
+ vddpe-3v3-supply = <&vreg_wlan>;
};
&pcie0_phy {
@@ -811,6 +836,26 @@ lt9611_rst_pin: lt9611-rst-pin {
};
};
+&qup_uart6_default {
+ ctsrx {
+ pins = "gpio16", "gpio19";
+ drive-strength = <2>;
+ bias-disable;
+ };
+
+ rts {
+ pins = "gpio17";
+ drive-strength = <2>;
+ bias-disable;
+ };
+
+ tx {
+ pins = "gpio18";
+ drive-strength = <2>;
+ bias-pull-up;
+ };
+};
+
&qupv3_id_0 {
status = "okay";
};
@@ -1275,6 +1320,17 @@ sdc2_card_det_n: sd-card-det-n {
};
};
+&uart6 {
+ status = "okay";
+ bluetooth {
+ compatible = "qcom,qca6390-bt";
+ vin-supply = <&qca6391>;
+ clocks = <&sleep_clk>;
+
+ enable-gpios = <&tlmm 21 GPIO_ACTIVE_HIGH>;
+ };
+};
+
&uart12 {
status = "okay";
};
Describe the onboard WiFi+BT SoC QCA6391. It is connected to uart6 to provide Bluetooth functionality (QCA) and to PCIe to provide WiFi (ath11k). A separate power sequencer device node is used to describe on-SoC power management unit common to both WiFi and BT parts. Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> --- arch/arm64/boot/dts/qcom/qrb5165-rb5.dts | 56 ++++++++++++++++++++++++ 1 file changed, 56 insertions(+)