Commit 32444424 authored by Stephan Gerhold's avatar Stephan Gerhold Committed by Bjorn Andersson

arm64: dts: qcom: msm8916: Move WCN compatible to boards

On MSM8916 the wireless connectivity functionality (WiFi/Bluetooth) is
split into the digital part inside the SoC and the analog RF part inside
a supplementary WCN36xx chip. For MSM8916, three different options
exist:

  - WCN3620  (WLAN 802.11 b/g/n 2.4 GHz + Bluetooth)
  - WCN3660B (WLAN 802.11 a/b/g/n 2.4/5 GHz + Bluetooth)
  - WCN3680B (WLAN 802.11ac 2.4/5 GHz + Bluetooth)

Choosing one of these is up to the board vendor. This means that the
compatible belongs into the board-specific DT part so people porting
new boards pay attention to set the correct compatible.

Right now msm8916.dtsi sets "qcom,wcn3620" as default compatible,
which does not work at all for boards that have WCN3660B or WCN3680B.

Remove the default compatible from msm8196.dtsi and move it to the board
DT as follows:

  - Boards with only &pronto { status = "okay"; } used the default
    "qcom,wcn3620" so far. They now set this explicitly for &wcnss_iris.
  - Boards with &pronto { ... iris { compatible = "qcom,wcn3660b"; }};
    already had an override that just moves to &wcnss_iris now.
  - For msm8916-samsung-a2015-common.dtsi the WCN compatible differs for
    boards making use of it (a3u: wcn3620, a5u: wcn3660b, e2015: wcn3620)
    so the definitions move to the board-specific DT part.

Since this requires touching all the board DTs, use this as a chance to
name the WCNSS-related labels consistently, so everything is grouped
properly when sorted alphabetically.

No functional change, just clean-up for more clarity & easier porting.
Aside from ordering the generated DTBs are identical.
Signed-off-by: default avatarStephan Gerhold <stephan.gerhold@kernkonzept.com>
Reviewed-by: default avatarBryan O'Donoghue <bryan.odonoghue@linaro.org>
Signed-off-by: default avatarBjorn Andersson <andersson@kernel.org>
Link: https://lore.kernel.org/r/20230309091452.1011776-1-stephan.gerhold@kernkonzept.com
parent 15544135
......@@ -325,12 +325,6 @@ &pm8916_resin {
linux,code = <KEY_VOLUMEDOWN>;
};
&pronto {
status = "okay";
firmware-name = "qcom/apq8016/wcnss.mbn";
};
&sdhc_1 {
status = "okay";
......@@ -411,10 +405,19 @@ &wcd_codec {
qcom,mbhc-vthreshold-high = <75 150 237 450 500>;
};
&wcnss {
status = "okay";
firmware-name = "qcom/apq8016/wcnss.mbn";
};
&wcnss_ctrl {
firmware-name = "qcom/apq8016/WCNSS_qcom_wlan_nv_sbc.bin";
};
&wcnss_iris {
compatible = "qcom,wcn3620";
};
/* Enable CoreSight */
&cti0 { status = "okay"; };
&cti1 { status = "okay"; };
......
......@@ -118,10 +118,6 @@ &pm8916_vib {
status = "okay";
};
&pronto {
status = "okay";
};
&sdhc_1 {
pinctrl-names = "default", "sleep";
pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on>;
......@@ -149,6 +145,14 @@ &usb_hs_phy {
extcon = <&usb_id>;
};
&wcnss {
status = "okay";
};
&wcnss_iris {
compatible = "qcom,wcn3620";
};
&smd_rpm_regulators {
vdd_l1_l2_l3-supply = <&pm8916_s3>;
vdd_l4_l5_l6-supply = <&pm8916_s4>;
......
......@@ -160,10 +160,6 @@ &pm8916_vib {
status = "okay";
};
&pronto {
status = "okay";
};
&sdhc_1 {
status = "okay";
......@@ -191,6 +187,14 @@ &usb_hs_phy {
extcon = <&usb_id>;
};
&wcnss {
status = "okay";
};
&wcnss_iris {
compatible = "qcom,wcn3620";
};
&smd_rpm_regulators {
vdd_l1_l2_l3-supply = <&pm8916_s3>;
vdd_l4_l5_l6-supply = <&pm8916_s4>;
......
......@@ -128,10 +128,6 @@ &blsp1_uart2 {
status = "okay";
};
&pronto {
status = "okay";
};
&sdhc_1 {
status = "okay";
......@@ -159,6 +155,14 @@ &usb_hs_phy {
extcon = <&usb_id>;
};
&wcnss {
status = "okay";
};
&wcnss_iris {
compatible = "qcom,wcn3620";
};
&smd_rpm_regulators {
vdd_l1_l2_l3-supply = <&pm8916_s3>;
vdd_l4_l5_l6-supply = <&pm8916_s4>;
......
......@@ -118,10 +118,6 @@ &pm8916_vib {
status = "okay";
};
&pronto {
status = "okay";
};
&sdhc_1 {
pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on>;
pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off>;
......@@ -149,6 +145,14 @@ &usb_hs_phy {
extcon = <&usb_id>;
};
&wcnss {
status = "okay";
};
&wcnss_iris {
compatible = "qcom,wcn3620";
};
&smd_rpm_regulators {
vdd_l1_l2_l3-supply = <&pm8916_s3>;
vdd_l4_l5_l6-supply = <&pm8916_s4>;
......
......@@ -227,10 +227,6 @@ &pm8916_vib {
status = "okay";
};
&pronto {
status = "okay";
};
&sdhc_1 {
status = "okay";
......@@ -312,6 +308,14 @@ &wcd_codec {
qcom,hphl-jack-type-normally-open;
};
&wcnss {
status = "okay";
};
&wcnss_iris {
compatible = "qcom,wcn3620";
};
&smd_rpm_regulators {
vdd_l1_l2_l3-supply = <&pm8916_s3>;
vdd_l4_l5_l6-supply = <&pm8916_s4>;
......
......@@ -231,10 +231,6 @@ &pm8916_vib {
status = "okay";
};
&pronto {
status = "okay";
};
&sdhc_1 {
status = "okay";
......@@ -263,6 +259,14 @@ &usb_hs_phy {
extcon = <&pm8916_usbin>;
};
&wcnss {
status = "okay";
};
&wcnss_iris {
compatible = "qcom,wcn3620";
};
&smd_rpm_regulators {
vdd_l1_l2_l3-supply = <&pm8916_s3>;
vdd_l4_l5_l6-supply = <&pm8916_s4>;
......
......@@ -99,10 +99,6 @@ &pm8916_vib {
status = "okay";
};
&pronto {
status = "okay";
};
&sdhc_1 {
status = "okay";
......@@ -130,6 +126,14 @@ &usb_hs_phy {
extcon = <&usb_id>;
};
&wcnss {
status = "okay";
};
&wcnss_iris {
compatible = "qcom,wcn3620";
};
&smd_rpm_regulators {
vdd_l1_l2_l3-supply = <&pm8916_s3>;
vdd_l4_l5_l6-supply = <&pm8916_s4>;
......
......@@ -20,17 +20,6 @@ &mpss {
pll-supply = <&pm8916_l7>;
};
&pronto {
vddpx-supply = <&pm8916_l7>;
iris {
vddxo-supply = <&pm8916_l7>;
vddrfa-supply = <&pm8916_s3>;
vddpa-supply = <&pm8916_l9>;
vdddig-supply = <&pm8916_l5>;
};
};
&sdhc_1 {
vmmc-supply = <&pm8916_l8>;
vqmmc-supply = <&pm8916_l5>;
......@@ -46,6 +35,17 @@ &usb_hs_phy {
v3p3-supply = <&pm8916_l13>;
};
&wcnss {
vddpx-supply = <&pm8916_l7>;
};
&wcnss_iris {
vddxo-supply = <&pm8916_l7>;
vddrfa-supply = <&pm8916_s3>;
vddpa-supply = <&pm8916_l9>;
vdddig-supply = <&pm8916_l5>;
};
&rpm_requests {
smd_rpm_regulators: regulators {
compatible = "qcom,rpm-pm8916-regulators";
......
......@@ -252,10 +252,6 @@ &pm8916_resin {
linux,code = <KEY_VOLUMEDOWN>;
};
&pronto {
status = "okay";
};
&sdhc_1 {
status = "okay";
......
......@@ -112,6 +112,14 @@ &vibrator {
status = "okay";
};
&wcnss {
status = "okay";
};
&wcnss_iris {
compatible = "qcom,wcn3620";
};
&msmgpio {
panel_vdd3_default: panel-vdd3-default-state {
pins = "gpio9";
......
......@@ -54,12 +54,6 @@ &clk_pwm {
status = "okay";
};
&pronto {
iris {
compatible = "qcom,wcn3660b";
};
};
&touchkey {
vcc-supply = <&reg_touch_key>;
vdd-supply = <&reg_touch_key>;
......@@ -69,6 +63,14 @@ &vibrator {
status = "okay";
};
&wcnss {
status = "okay";
};
&wcnss_iris {
compatible = "qcom,wcn3660b";
};
&msmgpio {
tkey_en_default: tkey-en-default-state {
pins = "gpio97";
......
......@@ -58,6 +58,14 @@ &touchkey {
vdd-supply = <&reg_touch_key>;
};
&wcnss {
status = "okay";
};
&wcnss_iris {
compatible = "qcom,wcn3620";
};
&msmgpio {
tkey_en_default: tkey-en-default-state {
pins = "gpio97";
......
......@@ -125,14 +125,6 @@ &pm8916_usbin {
status = "okay";
};
&pronto {
status = "okay";
iris {
compatible = "qcom,wcn3660b";
};
};
&sdhc_1 {
pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on>;
pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off>;
......@@ -162,6 +154,14 @@ &usb_hs_phy {
extcon = <&pm8916_usbin>;
};
&wcnss {
status = "okay";
};
&wcnss_iris {
compatible = "qcom,wcn3660b";
};
&smd_rpm_regulators {
vdd_l1_l2_l3-supply = <&pm8916_s3>;
vdd_l4_l5_l6-supply = <&pm8916_s4>;
......
......@@ -93,10 +93,6 @@ &pm8916_resin {
linux,code = <KEY_VOLUMEDOWN>;
};
&pronto {
status = "okay";
};
&sdhc_1 {
status = "okay";
......@@ -124,6 +120,14 @@ &usb_hs_phy {
extcon = <&muic>;
};
&wcnss {
status = "okay";
};
&wcnss_iris {
compatible = "qcom,wcn3620";
};
&smd_rpm_regulators {
vdd_l1_l2_l3-supply = <&pm8916_s3>;
vdd_l4_l5_l6-supply = <&pm8916_s4>;
......
......@@ -272,14 +272,6 @@ &pm8916_vib {
status = "okay";
};
&pronto {
status = "okay";
iris {
compatible = "qcom,wcn3660b";
};
};
&sdhc_1 {
status = "okay";
......@@ -320,6 +312,14 @@ &usb_hs_phy {
extcon = <&muic>;
};
&wcnss {
status = "okay";
};
&wcnss_iris {
compatible = "qcom,wcn3660b";
};
&smd_rpm_regulators {
vdd_l1_l2_l3-supply = <&pm8916_s3>;
vdd_l4_l5_l6-supply = <&pm8916_s4>;
......
......@@ -99,10 +99,6 @@ &pm8916_usbin {
status = "okay";
};
&pronto {
status = "okay";
};
&sdhc_1 {
pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on>;
pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off>;
......@@ -122,6 +118,14 @@ &usb_hs_phy {
extcon = <&pm8916_usbin>;
};
&wcnss {
status = "okay";
};
&wcnss_iris {
compatible = "qcom,wcn3620";
};
&smd_rpm_regulators {
vdd_l1_l2_l3-supply = <&pm8916_s3>;
vdd_l4_l5_l6-supply = <&pm8916_s4>;
......
......@@ -153,10 +153,6 @@ &pm8916_vib {
status = "okay";
};
&pronto {
status = "okay";
};
&sdhc_1 {
status = "okay";
......@@ -184,6 +180,14 @@ &usb_hs_phy {
extcon = <&usb_id>;
};
&wcnss {
status = "okay";
};
&wcnss_iris {
compatible = "qcom,wcn3620";
};
&smd_rpm_regulators {
vdd_l1_l2_l3-supply = <&pm8916_s3>;
vdd_l4_l5_l6-supply = <&pm8916_s4>;
......
......@@ -1870,7 +1870,7 @@ usb_hs_phy: phy {
};
};
pronto: remoteproc@a21b000 {
wcnss: remoteproc@a21b000 {
compatible = "qcom,pronto-v2-pil", "qcom,pronto";
reg = <0x0a204000 0x2000>, <0x0a202000 0x1000>, <0x0a21b000 0x3000>;
reg-names = "ccu", "dxe", "pmu";
......@@ -1896,9 +1896,8 @@ pronto: remoteproc@a21b000 {
status = "disabled";
iris {
compatible = "qcom,wcn3620";
wcnss_iris: iris {
/* Separate chip, compatible is board-specific */
clocks = <&rpmcc RPM_SMD_RF_CLK2>;
clock-names = "xo";
};
......@@ -1916,13 +1915,13 @@ wcnss_ctrl: wcnss {
compatible = "qcom,wcnss";
qcom,smd-channels = "WCNSS_CTRL";
qcom,mmio = <&pronto>;
qcom,mmio = <&wcnss>;
bluetooth {
wcnss_bt: bluetooth {
compatible = "qcom,wcnss-bt";
};
wifi {
wcnss_wifi: wifi {
compatible = "qcom,wcnss-wlan";
interrupts = <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment