// SPDX-License-Identifier: GPL-2.0
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
#include <dt-bindings/leds/common.h>
#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
#include "qcom-msm8974.dtsi"
#include "pm8841.dtsi"
#include "pm8941.dtsi"

/delete-node/ &mpss_region;

/ {
	model = "Qualcomm APQ8074 Dragonboard";
	compatible = "qcom,apq8074-dragonboard", "qcom,apq8074";

	aliases {
		serial0 = &blsp1_uart2;
		usid0 = &pm8941_0;
		usid4 = &pm8841_0;
	};

	chosen {
		stdout-path = "serial0:115200n8";
	};

	gpio-keys {
		compatible = "gpio-keys";
		autorepeat;

		pinctrl-0 = <&msm_keys_default>;
		pinctrl-names = "default";

		button-volup {
			label = "Volume Up";
			linux,code = <KEY_VOLUMEUP>;
			gpios = <&pm8941_gpios 5 GPIO_ACTIVE_LOW>;
		};

		button-general {
			label = "General";
			linux,code = <KEY_PROG1>;
			gpios = <&pm8941_gpios 23 GPIO_ACTIVE_LOW>;
		};
	};

	reserved-memory {
		mpss_region: mpss@ac00000 {
			reg = <0x0ac00000 0x2500000>;
			no-map;
		};
	};

	vreg_boost: vreg-boost {
		compatible = "regulator-fixed";

		regulator-name = "vreg-boost";
		regulator-min-microvolt = <3150000>;
		regulator-max-microvolt = <3150000>;

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

		gpio = <&pm8941_gpios 21 GPIO_ACTIVE_HIGH>;
		enable-active-high;

		pinctrl-names = "default";
		pinctrl-0 = <&boost_bypass_n_pin>;
	};

	vreg_vph_pwr: vreg-vph-pwr {
		compatible = "regulator-fixed";
		regulator-name = "vph-pwr";

		regulator-min-microvolt = <3600000>;
		regulator-max-microvolt = <3600000>;

		regulator-always-on;
	};
};

&blsp1_uart2 {
	status = "okay";
};

&blsp2_dma {
	qcom,controlled-remotely;
};

&blsp2_i2c5 {
	status = "okay";
	clock-frequency = <200000>;

	eeprom: eeprom@52 {
		compatible = "atmel,24c128";
		reg = <0x52>;
		pagesize = <32>;
		read-only;
	};
};

&gpu {
	status = "okay";
};

&mdss {
	status = "okay";
};

&mdss_dsi0 {
	vdda-supply = <&pm8941_l2>;
	vdd-supply = <&pm8941_l22>;
	vddio-supply = <&pm8941_l12>;

	status = "okay";

	panel: panel@0 {
		compatible = "sharp,ls043t1le01-qhd";
		reg = <0>;

		avdd-supply = <&pm8941_l22>;
		backlight = <&pm8941_wled>;
		reset-gpios = <&pm8941_gpios 19 GPIO_ACTIVE_HIGH>;

		port {
			panel_in: endpoint {
				remote-endpoint = <&mdss_dsi0_out>;
			};
		};
	};
};

&mdss_dsi0_out {
	remote-endpoint = <&panel_in>;
	data-lanes = <0 1 2 3>;
};

&mdss_dsi0_phy {
	status = "okay";

	vddio-supply = <&pm8941_l12>;
};

&gpu {
	status = "okay";
};

&mdss {
	status = "okay";
};

&pm8941_gpios {
        msm_keys_default: pm8941-gpio-keys-state {
		pins = "gpio5", "gpio23";
		function = "normal";
		input-enable;
		drive-push-pull;
		bias-pull-up;
		qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>;
		power-source = <PM8941_GPIO_S3>; /* 1.8V */
        };
};

&pm8941_lpg {
	qcom,power-source = <1>;
	status = "okay";

	led@5 {
		reg = <5>;
		color = <LED_COLOR_ID_BLUE>;
		function = LED_FUNCTION_INDICATOR;
	};

	led@6 {
		reg = <6>;
		color = <LED_COLOR_ID_GREEN>;
		function = LED_FUNCTION_INDICATOR;
	};

	led@7 {
		reg = <7>;
		color = <LED_COLOR_ID_RED>;
		function = LED_FUNCTION_INDICATOR;
	};
};

&pm8941_resin {
	linux,code = <KEY_VOLUMEDOWN>;
	status = "okay";
};

&pm8941_wled {
	qcom,cs-out;
	qcom,switching-freq = <3200>;
	qcom,ovp = <32>;
	qcom,num-strings = <1>;

	status = "okay";
};

&remoteproc_adsp {
	cx-supply = <&pm8841_s2>;

	firmware-name = "qcom/apq8074/adsp.mbn";

	status = "okay";
};

&remoteproc_mss {
	cx-supply = <&pm8841_s2>;
	mss-supply = <&pm8841_s3>;
	mx-supply = <&pm8841_s1>;
	pll-supply = <&pm8941_l12>;

	firmware-name = "qcom/apq8074/mba.mbn", "qcom/apq8074/modem.mbn";

	status = "okay";
};

&rpm_requests {
	regulators-0 {
		compatible = "qcom,rpm-pm8841-regulators";

		pm8841_s1: s1 {
			regulator-min-microvolt = <675000>;
			regulator-max-microvolt = <1050000>;
		};

		pm8841_s2: s2 {
			regulator-min-microvolt = <500000>;
			regulator-max-microvolt = <1050000>;
		};

		pm8841_s3: s3 {
			regulator-min-microvolt = <500000>;
			regulator-max-microvolt = <1050000>;
		};

		pm8841_s4: s4 {
			regulator-min-microvolt = <500000>;
			regulator-max-microvolt = <1050000>;
		};
	};

	regulators-1 {
		compatible = "qcom,rpm-pm8941-regulators";

		vdd_l1_l3-supply = <&pm8941_s1>;
		vdd_l2_lvs1_2_3-supply = <&pm8941_s3>;
		vdd_l4_l11-supply = <&pm8941_s1>;
		vdd_l5_l7-supply = <&pm8941_s2>;
		vdd_l6_l12_l14_l15-supply = <&pm8941_s2>;
		vin_5vs-supply = <&pm8941_5v>;

		pm8941_s1: s1 {
			regulator-min-microvolt = <1300000>;
			regulator-max-microvolt = <1300000>;
			regulator-always-on;
			regulator-boot-on;
		};

		pm8941_s2: s2 {
			regulator-min-microvolt = <2150000>;
			regulator-max-microvolt = <2150000>;
			regulator-boot-on;
		};

		pm8941_s3: s3 {
			regulator-min-microvolt = <1800000>;
			regulator-max-microvolt = <1800000>;
			regulator-always-on;
			regulator-boot-on;
		};

		pm8941_l1: l1 {
			regulator-min-microvolt = <1225000>;
			regulator-max-microvolt = <1225000>;
			regulator-always-on;
			regulator-boot-on;
		};

		pm8941_l2: l2 {
			regulator-min-microvolt = <1200000>;
			regulator-max-microvolt = <1200000>;
		};

		pm8941_l3: l3 {
			regulator-min-microvolt = <1225000>;
			regulator-max-microvolt = <1225000>;
		};

		pm8941_l4: l4 {
			regulator-min-microvolt = <1225000>;
			regulator-max-microvolt = <1225000>;
		};

		pm8941_l5: l5 {
			regulator-min-microvolt = <1800000>;
			regulator-max-microvolt = <1800000>;
		};

		pm8941_l6: l6 {
			regulator-min-microvolt = <1800000>;
			regulator-max-microvolt = <1800000>;
			regulator-boot-on;
		};

		pm8941_l7: l7 {
			regulator-min-microvolt = <1800000>;
			regulator-max-microvolt = <1800000>;
			regulator-boot-on;
		};

		pm8941_l8: l8 {
			regulator-min-microvolt = <1800000>;
			regulator-max-microvolt = <1800000>;
		};

		pm8941_l9: l9 {
			regulator-min-microvolt = <1800000>;
			regulator-max-microvolt = <2950000>;
		};

		pm8941_l10: l10 {
			regulator-min-microvolt = <1800000>;
			regulator-max-microvolt = <1800000>;
			regulator-always-on;
		};

		pm8941_l11: l11 {
			regulator-min-microvolt = <1300000>;
			regulator-max-microvolt = <1300000>;
		};

		pm8941_l12: l12 {
			regulator-min-microvolt = <1800000>;
			regulator-max-microvolt = <1800000>;
			regulator-always-on;
			regulator-boot-on;
		};

		pm8941_l13: l13 {
			regulator-min-microvolt = <1800000>;
			regulator-max-microvolt = <2950000>;
			regulator-boot-on;
		};

		pm8941_l14: l14 {
			regulator-min-microvolt = <1800000>;
			regulator-max-microvolt = <1800000>;
		};

		pm8941_l15: l15 {
			regulator-min-microvolt = <2050000>;
			regulator-max-microvolt = <2050000>;
		};

		pm8941_l16: l16 {
			regulator-min-microvolt = <2700000>;
			regulator-max-microvolt = <2700000>;
		};

		pm8941_l17: l17 {
			regulator-min-microvolt = <2700000>;
			regulator-max-microvolt = <2700000>;
		};

		pm8941_l18: l18 {
			regulator-min-microvolt = <2850000>;
			regulator-max-microvolt = <2850000>;
		};

		pm8941_l19: l19 {
			regulator-min-microvolt = <3300000>;
			regulator-max-microvolt = <3300000>;
			regulator-always-on;
		};

		pm8941_l20: l20 {
			regulator-min-microvolt = <2950000>;
			regulator-max-microvolt = <2950000>;
			regulator-system-load = <200000>;
			regulator-allow-set-load;
			regulator-boot-on;
		};

		pm8941_l21: l21 {
			regulator-min-microvolt = <2950000>;
			regulator-max-microvolt = <2950000>;
			regulator-boot-on;
		};

		pm8941_l22: l22 {
			regulator-min-microvolt = <3000000>;
			regulator-max-microvolt = <3000000>;
		};

		pm8941_l23: l23 {
			regulator-min-microvolt = <3000000>;
			regulator-max-microvolt = <3000000>;
		};

		pm8941_l24: l24 {
			regulator-min-microvolt = <3075000>;
			regulator-max-microvolt = <3075000>;
			regulator-boot-on;
		};
	};
};

&sdhc_1 {
	status = "okay";

	vmmc-supply = <&pm8941_l20>;
	vqmmc-supply = <&pm8941_s3>;

	pinctrl-names = "default", "sleep";
	pinctrl-0 = <&sdc1_on>;
	pinctrl-1 = <&sdc1_off>;
};

&sdhc_2 {
	status = "okay";

	cd-gpios = <&tlmm 62 GPIO_ACTIVE_LOW>;
	vmmc-supply = <&pm8941_l21>;
	vqmmc-supply = <&pm8941_l13>;

	pinctrl-names = "default", "sleep";
	pinctrl-0 = <&sdc2_on>;
	pinctrl-1 = <&sdc2_off>;
};

&smbb {
	status = "okay";
};

&tlmm {
	sdc1_on: sdc1-on-state {
		clk-pins {
			pins = "sdc1_clk";
			drive-strength = <16>;
			bias-disable;
		};

		cmd-data-pins {
			pins = "sdc1_cmd", "sdc1_data";
			drive-strength = <10>;
			bias-pull-up;
		};
	};

	sdc2_on: sdc2-on-state {
		clk-pins {
			pins = "sdc2_clk";
			drive-strength = <10>;
			bias-disable;
		};

		cmd-data-pins {
			pins = "sdc2_cmd", "sdc2_data";
			drive-strength = <6>;
			bias-pull-up;
		};

		cd-pins {
			pins = "gpio62";
			function = "gpio";
			drive-strength = <2>;
			bias-disable;
		};
	};
};

&usb {
	status = "okay";

	phys = <&usb_hs2_phy>;
	phy-select = <&tcsr 0xb000 1>;
	extcon = <&smbb>, <&usb_id>;
	vbus-supply = <&chg_otg>;
	hnp-disable;
	srp-disable;
	adp-disable;
};

&usb_hs2_phy {
	status = "okay";
	v3p3-supply = <&pm8941_l24>;
	v1p8-supply = <&pm8941_l6>;
	extcon = <&smbb>;
	qcom,init-seq = /bits/ 8 <0x1 0x63>;
};
