The Samsung Galaxy S5 (klte), uses a Broadcom 4354 Chip connected on the
SDIO bus. The chip also requires a corresponding firmware + txt file[1].

[1] 
https://gitlab.com/postmarketOS/pmaports/-/blob/master/firmware/firmware-samsung-klte/APKBUILD

Signed-off-by: Iskren Chernev <iskren.cher...@gmail.com>
---
 .../boot/dts/qcom-msm8974-samsung-klte.dts    | 74 +++++++++++++++++++
 1 file changed, 74 insertions(+)

diff --git a/arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts 
b/arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts
index 29099b83b231d..989447beb4319 100644
--- a/arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts
+++ b/arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts
@@ -282,6 +282,17 @@ led@3 {
                };
        };
 
+       vreg_wlan: wlan-regulator {
+               compatible = "regulator-fixed";
+
+               regulator-name = "wl-reg";
+               regulator-min-microvolt = <3300000>;
+               regulator-max-microvolt = <3300000>;
+
+               gpio = <&gpio_expander 8 GPIO_ACTIVE_HIGH>;
+               enable-active-high;
+       };
+
        /delete-node/ vreg-boost;
 };
 
@@ -338,6 +349,20 @@ cmd-data {
                        };
                };
 
+               sdhc3_pin_a: sdhc3-pin-active {
+                       clk {
+                               pins = "sdc2_clk";
+                               drive-strength = <6>;
+                               bias-disable;
+                       };
+
+                       cmd-data {
+                               pins = "sdc2_cmd", "sdc2_data";
+                               drive-strength = <6>;
+                               bias-pull-up;
+                       };
+               };
+
                i2c2_pins: i2c2 {
                        mux {
                                pins = "gpio6", "gpio7";
@@ -385,6 +410,16 @@ res {
                                drive-strength = <2>;
                        };
                };
+
+               wifi_pin: wifi {
+                       int {
+                               pins = "gpio92";
+                               function = "gpio";
+
+                               input-enable;
+                               bias-pull-down;
+                       };
+               };
        };
 
        sdhci@f9824900 {
@@ -400,6 +435,36 @@ sdhci@f9824900 {
                pinctrl-0 = <&sdhc1_pin_a>;
        };
 
+       sdhci@f98a4900 {
+               status = "okay";
+
+               #address-cells = <1>;
+               #size-cells = <0>;
+
+               max-frequency = <100000000>;
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&sdhc3_pin_a>;
+
+               vmmc-supply = <&vreg_wlan>;
+               vqmmc-supply = <&pma8084_s4>;
+
+               bus-width = <4>;
+               non-removable;
+
+               wifi@1 {
+                       reg = <1>;
+                       compatible = "brcm,bcm4329-fmac";
+
+                       interrupt-parent = <&msmgpio>;
+                       interrupts = <92 IRQ_TYPE_LEVEL_HIGH>;
+                       interrupt-names = "host-wake";
+
+                       pinctrl-names = "default";
+                       pinctrl-0 = <&wlan_sleep_clk_pin &wifi_pin>;
+               };
+       };
+
        usb@f9a55000 {
                status = "ok";
 
@@ -587,6 +652,15 @@ touch_pin: touchscreen-int-pin {
                                input-enable;
                                power-source = <PMA8084_GPIO_S4>;
                        };
+
+                       wlan_sleep_clk_pin: wlan-sleep-clk-pin {
+                               pins = "gpio16";
+                               function = "func2";
+
+                               output-high;
+                               power-source = <PMA8084_GPIO_S4>;
+                               qcom,drive-strength = <PMIC_GPIO_STRENGTH_HIGH>;
+                       };
                };
        };
 };
-- 
2.27.0

Reply via email to