Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c1b00eaa authored by hangtian's avatar hangtian
Browse files

ARM: dts: msm: Add cnss_sdio dt for QCS405 and enable sdio in sdhc_2



Add cnss_sdio dt for QCS405 and enable sdio in sdhc_2 for 2nd wifi with
sdio interface.

Change-Id: Iaee42a97fed487c099b6578c0decd0ad629c1e1d
CRs-Fixed: 2487180
Signed-off-by: default avatarhangtian <hangtian@codeaurora.org>
parent b6fbaa1d
Loading
Loading
Loading
Loading
+63 −0
Original line number Diff line number Diff line
* Qualcomm Technologies, Inc. Connectivity SubSystem Platform Driver

This platform driver adds support for the CNSS subsystem used for SDIO
based Wi-Fi devices. It also adds support to manage two 1.8V voltage
regulators and WLAN power enable 3.3V regulators. The main purpose of this
device tree entry below is to invoke the CNSS SDIO platform driver
and provide handle to the WLAN power enable 3.3V pmic GPIO and two 1.8V
PMIC voltage regulator resources.

Required properties:
  - compatible: "qcom,cnss_sdio"
  - reg: memory resource to save firmware dump, optional.
  - reg-names: memory resource name.
  - subsys-name: cnss sdio subsytem device name, required.
  - vdd-wlan-supply: phandle to the WLAN vdd regulator device tree node.
  - vdd-wlan-dsrc-supply: phandle to the WLAN dsrc vdd regulator device tree node.
  - vdd-wlan-io-supply: phandle to the WLAN IO regulator device tree node.
  - vdd-wlan-xtal-supply: phandle to the WLAM XTAL regulator device tree node.

Optional properties:
  - pinctrl-names: Names corresponding to the numbered pinctrl states
  - pinctrl-<n>: Pinctrl states as described in
                bindings/pinctrl/pinctrl-bindings.txt
  - qcom,is-antenna-shared: Enabled for Platforms with both sdio and pcie QCA
                           Chipsets are attached.
  - qcom,cnss-enable-bus-bandwidth: Boolean - Define this property when target
					support to vote for bus bandwidth.
  - qcom,msm-bus,name: client name for msm bus register.
  - qcom,msm-bus,num-cases: number of cases for bus scaling.
  - qcom,msm-bus,num-paths: number of paths for bus scale vector.
  - qcom,msm-bus,vectors-KBps: bus scale vector table.
  - qcom,skip-wlan-en-toggle: Boolean property to be enabled for platforms where
                           wlan_en toggling is not supported.
  - vdd-wlan-xtal-min: Minimum required voltage in uV for VDD_XTAL regulator.
			   Minimum required voltage is 1620000.
			   If not set, a typical 1800000 will be set.
  - vdd-wlan-xtal-max: Maximum acceptable voltage in uV for VDD_XTAL regulator.
			   Maximum acceptable voltage is 3465000.
			   If not set, a typical 1800000 will be set.
Example:
	qcom,cnss-sdio {
		compatible = "qcom,cnss_sdio";
		reg = <0x87a00000, 0x200000>;
		reg-names = "ramdump";
		subsys-name = "AR6320";
		vdd-wlan-supply = <&rome_vreg>;
		vdd-wlan-dsrc-supply = <&sdcard_ext_vreg>;
		vdd-wlan-io-supply = <&mdm9607_l11>;
		vdd-wlan-xtal-supply = <&mdm9607_l2>;
		qcom,is-antenna-shared;
		pinctrl-names = "active", "sleep";
		pinctrl-0 = <&cnss_sdio_active>;
		pinctrl-1 = <&cnss_sdio_sleep>;
		qcom,cnss-enable-bus-bandwidth;
		qcom,msm-bus,name = "msm-cnss";
		qcom,msm-bus,num-cases = <4>;
		qcom,msm-bus,num-paths = <1>;
		qcom,msm-bus,vectors-KBps =
				<79 512 0 0>,			/* No vote */
				<79 512 6250 200000>,		/* 50 Mbps */
				<79 512 25000 200000>,		/* 200 Mbps */
				<79 512 2048000 4096000>;	/* MAX */
	};
+27 −1
Original line number Diff line number Diff line
@@ -1311,13 +1311,19 @@

		/* VDD is an external regulator eLDO5 */
		vdd-io-supply = <&pms405_l11>;
		qcom,vdd-io-voltage-level = <1800000 2950000>;
		qcom,vdd-io-voltage-level = <1800000 1800000>;
		qcom,vdd-io-current-level = <0 24200>;

		qcom,core_3_0v_support;
		qcom,nonremovable;

		pinctrl-names = "active", "sleep";
		pinctrl-0 = <&sdc2_clk_on  &sdc2_cmd_on &sdc2_data_on>;
		pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off>;

		/delete-property/ qcom,devfreq,freq-table;
		/delete-property/ cd-gpios;

		status = "ok";
	};

@@ -1511,6 +1517,26 @@
		qcom,smmu-s1-bypass;
		qcom,hyp_disabled;
	};

	cnss_sdio: qcom,cnss_sdio {
		compatible = "qcom,cnss_sdio";
		subsys-name = "AR6320";
		/**
		 * There is no vdd-wlan on board and this is not for DSRC.
		 * IO and XTAL share the same vreg.
		 **/
		vdd-wlan-io-supply = <&pms405_l5>;
		qcom,cap-tsf-gpio = <&tlmm 42 1>;
		qcom,wlan-ramdump-dynamic = <0x200000>;
		qcom,msm-bus,name = "msm-cnss";
		qcom,msm-bus,num-cases = <4>;
		qcom,msm-bus,num-paths = <1>;
		qcom,msm-bus,vectors-KBps =
				<79 512 0 0>,             /* No vote */
				<79 512 6250 200000>,     /* 50 Mbps */
				<79 512 25000 200000>,    /* 200 Mbps */
				<79 512 2048000 4096000>; /* MAX */
	};
};

#include "qcs405-gdsc.dtsi"