Commit 3bbf5853 authored by Arnd Bergmann's avatar Arnd Bergmann
Browse files

Merge tag 'qcom-arm64-for-4.6' of...

Merge tag 'qcom-arm64-for-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux into next/dt64

Merge "Qualcomm ARM64 Updates for v4.6" from Andy Gross:

* Add MSM8996 support
* Cleanups for MSM8916
* Updates for APQ8016 SBC
* Fixup pmic reg properties
* Add RPMCC node for 8916
* Add LPASS audio nodes
* Add USB support on MSM8916

* tag 'qcom-arm64-for-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux: (24 commits)
  arm64: dts: qcom: Fix MPP's function used for LED control
  arm64: dts: qcom: fix usb digital voltage levels
  arm64: dts: qcom: apq8016-sbc: enable lpass on DB410c
  arm64: dts: qcom: add lpass node
  arm64: dts: qcom: add audio pinctrls
  arm64: dts: qcom: apq8016-sbc: add usb support
  arm64: dts: qcom: add manual pullup setting to otg.
  arm64: dts: qcom: msm8916: Add RPMCC DT node
  ARM64: dts: qcom: Remove size elements from pmic reg properties
  arm64: dts: msm8996: Add #power-domain-cells property
  arm64: dts: apq8016-sbc: Add real regulators and pinctrl for sdhc
  arm64: dts: apq8016-sbc: move sdhci node under soc node
  arm64: dts: apq8016-sbc: make 1.8v available on LS expansion
  arm64: dts: apq8016-sbc: add regulators support
  arm64: dts: qcom: add lable for smd rpm regulators
  arm64: dts: remove s2 regulator from smd regulators.
  arm64: dts: qcom: add correct drive strenght on cs pins
  arm64: dts: qcom: remove redundant spi cs pins from pinconf
  arm64: dts: apq8016-sbc: Add aliases to spi device.
  arm64: dts: Add L2 cache node to msm8916
  ...
parents 44563cb4 4bd40f6c
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
dtb-$(CONFIG_ARCH_QCOM)	+= apq8016-sbc.dtb msm8916-mtp.dtb
dtb-$(CONFIG_ARCH_QCOM)	+= msm8996-mtp.dtb

always		:= $(dtb-y)
subdir-y	:= $(dts-dirs)
+1 −1
Original line number Diff line number Diff line
@@ -33,7 +33,7 @@
	pm8916_mpps_leds: pm8916_mpps_leds {
		pinconf {
			pins = "mpp2", "mpp3";
			function = PMIC_GPIO_FUNC_NORMAL;
			function = "digital";
			output-low;
		};
	};
+14 −0
Original line number Diff line number Diff line
@@ -10,4 +10,18 @@
			output-low;
		};
	};

	usb_id_default: usb-id-default {
		pinmux {
			function = "gpio";
			pins = "gpio121";
		};

		pinconf {
			pins = "gpio121";
			drive-strength = <8>;
			input-enable;
			bias-pull-up;
		};
	};
};
+168 −2
Original line number Diff line number Diff line
@@ -24,6 +24,8 @@
		i2c0	= &blsp_i2c2;
		i2c1	= &blsp_i2c6;
		i2c3	= &blsp_i2c4;
		spi0	= &blsp_spi5;
		spi1	= &blsp_spi3;
	};

	chosen {
@@ -127,9 +129,173 @@
				default-state = "off";
			};
		};

		sdhci@07824000 {
			vmmc-supply = <&pm8916_l8>;
			vqmmc-supply = <&pm8916_l5>;

			pinctrl-names = "default", "sleep";
			pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on>;
			pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off>;
			status = "okay";
		};

		usb@78d9000 {
			extcon = <&usb_id>, <&usb_id>;
			status = "okay";
		};

		ehci@78d9000 {
			status = "okay";
		};

&sdhc_1 {
		phy@78d9000 {
			v1p8-supply = <&pm8916_l7>;
			v3p3-supply = <&pm8916_l13>;
			vddcx-supply = <&pm8916_s1>;
			extcon = <&usb_id>, <&usb_id>;
			dr_mode = "otg";
			status = "okay";
			switch-gpio = <&pm8916_gpios 4 GPIO_ACTIVE_HIGH>;
			pinctrl-names = "default";
			pinctrl-0 = <&usb_sw_sel_pm>;
		};

		lpass@07708000 {
			status = "okay";
		};
	};

	usb2513 {
		compatible = "smsc,usb3503";
		reset-gpios = <&pm8916_gpios 3 GPIO_ACTIVE_LOW>;
		initial-mode = <1>;
	};

	usb_id: usb-id {
		compatible = "linux,extcon-usb-gpio";
		id-gpio = <&msmgpio 121 GPIO_ACTIVE_HIGH>;
		pinctrl-names = "default";
		pinctrl-0 = <&usb_id_default>;
	};
};

&smd_rpm_regulators {
	vdd_l1_l2_l3-supply = <&pm8916_s3>;
	vdd_l5-supply = <&pm8916_s3>;
	vdd_l4_l5_l6-supply = <&pm8916_s4>;
	vdd_l7-supply = <&pm8916_s4>;

	s1 {
		regulator-min-microvolt = <375000>;
		regulator-max-microvolt = <1562000>;
	};

	s3 {
		regulator-min-microvolt = <375000>;
		regulator-max-microvolt = <1562000>;
	};

	s4 {
		regulator-min-microvolt = <1800000>;
		regulator-max-microvolt = <1800000>;

		regulator-always-on;
		regulator-boot-on;
	};

	l1 {
		regulator-min-microvolt = <375000>;
		regulator-max-microvolt = <1525000>;
	};

	l2 {
		regulator-min-microvolt = <375000>;
		regulator-max-microvolt = <1525000>;
	};

	l3 {
		regulator-min-microvolt = <375000>;
		regulator-max-microvolt = <1525000>;
	};

	l4 {
		regulator-min-microvolt = <1750000>;
		regulator-max-microvolt = <3337000>;
	};

	l5 {
		regulator-min-microvolt = <1750000>;
		regulator-max-microvolt = <3337000>;
	};

	l6 {
		regulator-min-microvolt = <1750000>;
		regulator-max-microvolt = <3337000>;
	};

	l7 {
		regulator-min-microvolt = <1750000>;
		regulator-max-microvolt = <3337000>;
	};

	l8 {
		regulator-min-microvolt = <1750000>;
		regulator-max-microvolt = <3337000>;
	};

	l9 {
		regulator-min-microvolt = <1750000>;
		regulator-max-microvolt = <3337000>;
	};

	l10 {
		regulator-min-microvolt = <1750000>;
		regulator-max-microvolt = <3337000>;
	};

	l11 {
		regulator-min-microvolt = <1750000>;
		regulator-max-microvolt = <3337000>;
	};

	l12 {
		regulator-min-microvolt = <1750000>;
		regulator-max-microvolt = <3337000>;
	};

	l13 {
		regulator-min-microvolt = <1750000>;
		regulator-max-microvolt = <3337000>;
	};

	l14 {
		regulator-min-microvolt = <1750000>;
		regulator-max-microvolt = <3337000>;
	};

	/**
	 * 1.8v required on LS expansion
	 * for mezzanine boards
	 */
	l15 {
		regulator-min-microvolt = <1750000>;
		regulator-max-microvolt = <3337000>;
		regulator-always-on;
	};

	l16 {
		regulator-min-microvolt = <1750000>;
		regulator-max-microvolt = <3337000>;
	};

	l17 {
		regulator-min-microvolt = <1750000>;
		regulator-max-microvolt = <3337000>;
	};

	l18 {
		regulator-min-microvolt = <1750000>;
		regulator-max-microvolt = <3337000>;
	};
};
+227 −11
Original line number Diff line number Diff line
@@ -82,7 +82,7 @@
		};
		pinconf_cs {
			pins = "gpio2";
			drive-strength = <2>;
			drive-strength = <16>;
			bias-disable;
			output-high;
		};
@@ -110,13 +110,13 @@
			pins = "gpio6";
		};
		pinconf {
			pins = "gpio4", "gpio5", "gpio6", "gpio7";
			pins = "gpio4", "gpio5", "gpio7";
			drive-strength = <12>;
			bias-disable;
		};
		pinconf_cs {
			pins = "gpio6";
			drive-strength = <2>;
			drive-strength = <16>;
			bias-disable;
			output-high;
		};
@@ -144,13 +144,13 @@
			pins = "gpio10";
		};
		pinconf {
			pins = "gpio8", "gpio9", "gpio10", "gpio11";
			pins = "gpio8", "gpio9", "gpio11";
			drive-strength = <12>;
			bias-disable;
		};
		pinconf_cs {
			pins = "gpio10";
			drive-strength = <2>;
			drive-strength = <16>;
			bias-disable;
			output-high;
		};
@@ -178,13 +178,13 @@
			pins = "gpio14";
		};
		pinconf {
			pins = "gpio12", "gpio13", "gpio14", "gpio15";
			pins = "gpio12", "gpio13", "gpio15";
			drive-strength = <12>;
			bias-disable;
		};
		pinconf_cs {
			pins = "gpio14";
			drive-strength = <2>;
			drive-strength = <16>;
			bias-disable;
			output-high;
		};
@@ -212,13 +212,13 @@
			pins = "gpio18";
		};
		pinconf {
			pins = "gpio16", "gpio17", "gpio18", "gpio19";
			pins = "gpio16", "gpio17", "gpio19";
			drive-strength = <12>;
			bias-disable;
		};
		pinconf_cs {
			pins = "gpio18";
			drive-strength = <2>;
			drive-strength = <16>;
			bias-disable;
			output-high;
		};
@@ -246,13 +246,13 @@
			pins = "gpio22";
		};
		pinconf {
			pins = "gpio20", "gpio21", "gpio22", "gpio23";
			pins = "gpio20", "gpio21", "gpio23";
			drive-strength = <12>;
			bias-disable;
		};
		pinconf_cs {
			pins = "gpio22";
			drive-strength = <2>;
			drive-strength = <16>;
			bias-disable;
			output-high;
		};
@@ -504,4 +504,220 @@
			};
		};
	};

	ext-codec-lines {
		ext_codec_lines_act: lines_on {
			pinmux {
				function = "gpio";
				pins = "gpio67";
			};
			pinconf {
				pins = "gpio67";
				drive-strength = <8>;
				bias-disable;
				output-high;
			};
		};
		ext_codec_lines_sus: lines_off {
			pinmux {
				function = "gpio";
				pins = "gpio67";
			};
			pinconf {
				pins = "gpio67";
				drive-strength = <2>;
				bias-disable;
			};
		};
	};

	cdc-pdm-lines {
		cdc_pdm_lines_act: pdm_lines_on {
			pinmux {
				function = "cdc_pdm0";
				pins = "gpio63", "gpio64", "gpio65", "gpio66",
				       "gpio67", "gpio68";
			};
			pinconf {
				pins = "gpio63", "gpio64", "gpio65", "gpio66",
				       "gpio67", "gpio68";
				drive-strength = <8>;
				bias-pull-none;
			};
		};
		cdc_pdm_lines_sus: pdm_lines_off {
			pinmux {
				function = "cdc_pdm0";
				pins = "gpio63", "gpio64", "gpio65", "gpio66",
				       "gpio67", "gpio68";
			};
			pinconf {
				pins = "gpio63", "gpio64", "gpio65", "gpio66",
				       "gpio67", "gpio68";
				drive-strength = <2>;
				bias-disable;
			};
		};
	};

	ext-pri-tlmm-lines {
		ext_pri_tlmm_lines_act: ext_pa_on {
			pinmux {
				function = "pri_mi2s";
				pins = "gpio113", "gpio114", "gpio115",
				       "gpio116";
			};
			pinconf {
				pins = "gpio113", "gpio114", "gpio115",
				       "gpio116";
				drive-strength = <8>;
				bias-pull-none;
			};
		};

		ext_pri_tlmm_lines_sus: ext_pa_off {
			pinmux {
				function = "pri_mi2s";
				pins = "gpio113", "gpio114", "gpio115",
				       "gpio116";
			};
			pinconf {
				pins = "gpio113", "gpio114", "gpio115",
				       "gpio116";
				drive-strength = <2>;
				bias-disable;
			};
		};
	};

	ext-pri-ws-line {
		ext_pri_ws_act: ext_pa_on {
			pinmux {
				function = "pri_mi2s_ws";
				pins = "gpio110";
			};
			pinconf {
				pins = "gpio110";
				drive-strength = <8>;
				bias-pull-none;
			};
		};

		ext_pri_ws_sus: ext_pa_off {
			pinmux {
				function = "pri_mi2s_ws";
				pins = "gpio110";
			};
			pinconf {
				pins = "gpio110";
				drive-strength = <2>;
				bias-disable;
			};
		};
	};

	ext-mclk-tlmm-lines {
		ext_mclk_tlmm_lines_act: mclk_lines_on {
			pinmux {
				function = "pri_mi2s";
				pins = "gpio116";
			};
			pinconf {
				pins = "gpio116";
				drive-strength = <8>;
				bias-pull-none;
			};
		};
		ext_mclk_tlmm_lines_sus: mclk_lines_off {
			pinmux {
				function = "pri_mi2s";
				pins = "gpio116";
			};
			pinconf {
				pins = "gpio116";
				drive-strength = <2>;
				bias-disable;
			};
		};
	};

	/* secondary Mi2S */
	ext-sec-tlmm-lines {
		ext_sec_tlmm_lines_act: tlmm_lines_on {
			pinmux {
				function = "sec_mi2s";
				pins = "gpio112", "gpio117", "gpio118",
				       "gpio119";
			};
			pinconf {
				pins = "gpio112", "gpio117", "gpio118",
					"gpio119";
				drive-strength = <8>;
				bias-pull-none;
			};
		};
		ext_sec_tlmm_lines_sus: tlmm_lines_off {
			pinmux {
				function = "sec_mi2s";
				pins = "gpio112", "gpio117", "gpio118",
				       "gpio119";
			};
			pinconf {
				pins = "gpio112", "gpio117", "gpio118",
					"gpio119";
				drive-strength = <2>;
				bias-disable;
			};
		};
	};

	cdc-dmic-lines {
		cdc_dmic_lines_act: dmic_lines_on {
			pinmux_dmic0_clk {
				function = "dmic0_clk";
				pins = "gpio0";
			};
			pinmux_dmic0_data {
				function = "dmic0_data";
				pins = "gpio1";
			};
			pinconf {
				pins = "gpio0", "gpio1";
				drive-strength = <8>;
			};
		};
		cdc_dmic_lines_sus: dmic_lines_off {
			pinconf {
				pins = "gpio0", "gpio1";
				drive-strength = <2>;
				bias-disable;
			};
		};
	};

	cross-conn-det {
		cross_conn_det_act: lines_on {
			pinmux {
				function = "gpio";
				pins = "gpio120";
			};
			pinconf {
				pins = "gpio120";
				drive-strength = <8>;
				output-low;
				bias-pull-down;
			};
		};
		cross_conn_det_sus: lines_off {
			pinmux {
				function = "gpio";
				pins = "gpio120";
			};
			pinconf {
				pins = "gpio120";
				drive-strength = <2>;
				bias-disable;
			};
		};
	};
};
Loading