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

Commit 3b74bf1e authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "ARM: dts: mdm: add DT node to enable sdhc2 on mdmfermium"

parents dba5fc7f 70a85f7d
Loading
Loading
Loading
Loading
+27 −0
Original line number Diff line number Diff line
@@ -119,3 +119,30 @@
&usb_otg {
	vbus_otg-supply = <&smb358_otg_vreg>;
};

&sdhc_2 {
	vdd-supply = <&sdcard_ext_vreg>;
	qcom,vdd-voltage-level = <2850000 2850000>;
	qcom,vdd-current-level = <15000 400000>;

	vdd-io-supply = <&mdmfermium_l13>;
	qcom,vdd-io-voltage-level = <1800000 2850000>;
	qcom,vdd-io-current-level = <200 50000>;

	#address-cells = <0>;
	interrupt-parent = <&sdhc_2>;
	interrupts = <0 1 2>;
	#interrupt-cells = <1>;
	interrupt-map-mask = <0xffffffff>;
	interrupt-map = <0 &intc 0 125 0
			1 &intc 0 221 0
			2 &tlmm_pinmux 26 0>;
	interrupt-names = "hc_irq", "pwr_irq", "status_irq";
	cd-gpios = <&tlmm_pinmux 26 0x1>;

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

	status = "ok";
};
+27 −0
Original line number Diff line number Diff line
@@ -115,3 +115,30 @@
		qcom,irq-gpio = <&pm8019_mpps 2 0>;
	};
};

&sdhc_2 {
	vdd-supply = <&sdcard_ext_vreg>;
	qcom,vdd-voltage-level = <2850000 2850000>;
	qcom,vdd-current-level = <15000 400000>;

	vdd-io-supply = <&mdmfermium_l13>;
	qcom,vdd-io-voltage-level = <1800000 2850000>;
	qcom,vdd-io-current-level = <200 50000>;

	#address-cells = <0>;
	interrupt-parent = <&sdhc_2>;
	interrupts = <0 1 2>;
	#interrupt-cells = <1>;
	interrupt-map-mask = <0xffffffff>;
	interrupt-map = <0 &intc 0 125 0
			1 &intc 0 221 0
			2 &tlmm_pinmux 26 0>;
	interrupt-names = "hc_irq", "pwr_irq", "status_irq";
	cd-gpios = <&tlmm_pinmux 26 0x1>;

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

	status = "ok";
};
+76 −0
Original line number Diff line number Diff line
@@ -377,5 +377,81 @@
				};
			};
		};

		pmx_sdc2_clk {
			sdc2_clk_on: sdc2_clk_on {
				config {
					pins = "sdc2_clk";
					drive-strength = <16>; /* 16 MA */
					bias-disable; /* NO pull */
				};
			};
			sdc2_clk_off: sdc2_clk_off {
				config {
					pins = "sdc2_clk";
					bias-disable; /* NO pull */
					drive-strength = <2>; /* 2 MA */
				};
			};
		};

		pmx_sdc2_cmd {
			sdc2_cmd_on: sdc2_cmd_on {
				config {
					pins = "sdc2_cmd";
					bias-pull-up; /* pull up */
					drive-strength = <10>; /* 10 MA */
				};
			};
			sdc2_cmd_off: sdc2_cmd_off {
				config {
					pins = "sdc2_cmd";
					bias-pull-up; /* pull up */
					drive-strength = <2>; /* 2 MA */
				};
		      };
		};

		pmx_sdc2_data {
			sdc2_data_on: sdc2_data_on {
				config {
					pins = "sdc2_data";
					bias-pull-up; /* pull up */
					drive-strength = <10>; /* 10 MA */
				};
			};
			sdc2_data_off: sdc2_data_off {
			       config {
				       pins = "sdc2_data";
				       bias-pull-up; /* pull up */
				       drive-strength = <2>; /* 2 MA */
			       };
			};
		};

		sdhc2_cd_pin {
			sdc2_cd_on: cd_on {
			    mux {
				    pins = "gpio26";
				    function = "gpio";
			    };
			    config {
				    pins = "gpio26";
				    drive-strength = <2>;
				    bias-pull-up;
			    };
			};
			sdc2_cd_off: cd_off {
				mux {
					pins = "gpio26";
					function = "gpio";
				};
				config {
					pins = "gpio26";
					drive-strength = <2>;
					bias-disable;
				};
			};
		};
	};
};
+34 −0
Original line number Diff line number Diff line
@@ -69,6 +69,7 @@
		/* spi device */
		spi1  = &spi_1;
		i2c4 = &i2c_4;
		sdhc2 = &sdhc_2; /* SDC2 SD card slot */
	};

	cpus {
@@ -1191,6 +1192,39 @@
		qcom,gpio-force-stop = <&smp2pgpio_ssr_smp2p_1_out 0 0>;
		memory-region = <&modem_adsp_mem>;
	};

	sdhc_2: sdhci@07864900 {
		compatible = "qcom,sdhci-msm";
		reg = <0x07864900 0x200>, <0x07864000 0x800>;
		reg-names = "hc_mem", "core_mem";

		interrupts = <0 125 0>, <0 221 0>;
		interrupt-names = "hc_irq", "pwr_irq";

		qcom,bus-width = <4>;

		qcom,msm-bus,name = "sdhc2";
		qcom,msm-bus,num-cases = <8>;
		qcom,msm-bus,num-paths = <1>;
		qcom,msm-bus,vectors-KBps = <81 512 0 0>, /* No vote */
				<81 512 1600 3200>,    /* 400 KB/s*/
				<81 512 80000 160000>, /* 20 MB/s */
				<81 512 100000 200000>, /* 25 MB/s */
				<81 512 200000 400000>, /* 50 MB/s */
				<81 512 400000 800000>, /* 100 MB/s */
				<81 512 800000 800000>, /* 200 MB/s */
				<81 512 2048000 4096000>; /* Max. bandwidth */
		qcom,bus-bw-vectors-bps = <0 400000 20000000 25000000 50000000
						100000000 200000000 4294967295>;

		clocks = <&clock_gcc clk_gcc_sdcc2_ahb_clk>,
			 <&clock_gcc clk_gcc_sdcc2_apps_clk>;
		clock-names = "iface_clk", "core_clk";

		qcom,clk-rates = <400000 25000000 50000000 100000000 200000000>;

		status = "disabled";
	};
};

#include "mdmfermium-rpm-regulator.dtsi"