/* Copyright (c) 2015-2017, The Linux Foundation. All rights reserved.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 and
 * only version 2 as published by the Free Software Foundation.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 */

#include "msm8996-pinctrl.dtsi"
#include "msm8996-camera-sensor-cdp.dtsi"
#include "msm8996-wsa881x.dtsi"

/ {
	bluetooth: bt_qca6174 {
		compatible = "qca,qca6174";
		qca,bt-reset-gpio = <&pm8994_gpios 19 0>; /* BT_EN */
		qca,bt-vdd-core-supply = <&pm8994_s3>;
		qca,bt-vdd-pa-supply = <&rome_vreg>;
		qca,bt-vdd-io-supply = <&pm8994_s4>;
		qca,bt-vdd-xtal-supply = <&pm8994_l30>;
		qca,bt-chip-pwd-voltage-level = <1300000 1300000>;
		qca,bt-vdd-io-voltage-level = <1800000 1800000>;
		qca,bt-vdd-xtal-voltage-level = <1800000 1800000>;
	};
};

&eeprom0 {
	status = "disabled";
};

&ufs_ice {
	status = "ok";
};

&sdcc1_ice {
	status = "ok";
};

&ufsphy1 {
	status = "ok";
};

&ufs1 {
	status = "ok";
};

&spi_9 {
	status = "ok";
};

&spi_10 {
	status = "ok";
};

&spi_0 {
	spi_codec@0 {
		compatible = "qcom,spi-msm-codec-slave";
		reg = <0>;
		spi-max-frequency = <2000000>;
		spi-cpha;
	};
};

&uartblsp2dm1 {
	status = "ok";
	pinctrl-names = "default";
	pinctrl-0 = <&uart_console_active>;
};

&sdhc_1 {
	vdd-supply = <&pm8994_l20>;
	qcom,vdd-voltage-level = <2950000 2950000>;
	qcom,vdd-current-level = <200 570000>;

	vdd-io-supply = <&pm8994_s4>;
	qcom,vdd-io-always-on;
	qcom,vdd-io-voltage-level = <1800000 1800000>;
	qcom,vdd-io-current-level = <110 325000>;

	pinctrl-names = "active", "sleep";
	pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on &sdc1_rclk_on>;
	pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off &sdc1_rclk_off>;

	qcom,clk-rates = <400000 20000000 25000000 50000000
				96000000 192000000 384000000>;
	qcom,ice-clk-rates = <300000000 150000000>;
	qcom,nonremovable;
	qcom,bus-speed-mode = "HS400_1p8v", "HS200_1p8v", "DDR_1p8v";

	status = "ok";
};

&sdhc_2 {
	vdd-supply = <&pm8994_l21>;
	qcom,vdd-voltage-level = <2950000 2950000>;
	qcom,vdd-current-level = <200 800000>;

	vdd-io-supply = <&pm8994_l13>;
	qcom,vdd-io-voltage-level = <1800000 2950000>;
	qcom,vdd-io-current-level = <200 22000>;

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

	qcom,clk-rates = <400000 20000000 25000000
				50000000 100000000 200000000>;
	qcom,bus-speed-mode = "SDR12", "SDR25", "SDR50", "DDR50", "SDR104";

	cd-gpios = <&tlmm 38 0x1>;

	status = "ok";
};

&pm8994_vadc {
	chan@5 {
		label = "vcoin";
		reg = <5>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <1>;
		qcom,calibration-type = "absolute";
		qcom,scale-function = <0>;
		qcom,hw-settle-time = <0>;
		qcom,fast-avg-setup = <0>;
	};

	chan@7 {
		label = "vph_pwr";
		reg = <7>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <1>;
		qcom,calibration-type = "absolute";
		qcom,scale-function = <0>;
		qcom,hw-settle-time = <0>;
		qcom,fast-avg-setup = <0>;
	};

	chan@73 {
		label = "msm_therm";
		reg = <0x73>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <0>;
		qcom,calibration-type = "ratiometric";
		qcom,scale-function = <2>;
		qcom,hw-settle-time = <2>;
		qcom,fast-avg-setup = <0>;
	};

	chan@74 {
		label = "emmc_therm";
		reg = <0x74>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <0>;
		qcom,calibration-type = "ratiometric";
		qcom,scale-function = <2>;
		qcom,hw-settle-time = <2>;
		qcom,fast-avg-setup = <0>;
	};

	chan@75 {
		label = "pa_therm0";
		reg = <0x75>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <0>;
		qcom,calibration-type = "ratiometric";
		qcom,scale-function = <2>;
		qcom,hw-settle-time = <2>;
		qcom,fast-avg-setup = <0>;
	};

	chan@77 {
		label = "pa_therm1";
		reg = <0x77>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <0>;
		qcom,calibration-type = "ratiometric";
		qcom,scale-function = <2>;
		qcom,hw-settle-time = <2>;
		qcom,fast-avg-setup = <0>;
	};

	chan@78 {
		label = "quiet_therm";
		reg = <0x78>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <0>;
		qcom,calibration-type = "ratiometric";
		qcom,scale-function = <2>;
		qcom,hw-settle-time = <2>;
		qcom,fast-avg-setup = <0>;
	};

	chan@7c {
		label = "xo_therm_buf";
		reg = <0x7c>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <0>;
		qcom,calibration-type = "ratiometric";
		qcom,scale-function = <4>;
		qcom,hw-settle-time = <2>;
		qcom,fast-avg-setup = <0>;
	};

	chan@7c {
		label = "xo_therm_buf";
		reg = <0x7c>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <0>;
		qcom,calibration-type = "ratiometric";
		qcom,scale-function = <4>;
		qcom,hw-settle-time = <2>;
		qcom,fast-avg-setup = <0>;
	};
};

&pm8994_adc_tm {
	chan@73 {
		label = "msm_therm";
		reg = <0x73>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <0>;
		qcom,calibration-type = "ratiometric";
		qcom,scale-function = <2>;
		qcom,hw-settle-time = <2>;
		qcom,fast-avg-setup = <0>;
		qcom,btm-channel-number = <0x48>;
		qcom,thermal-node;
	};

	chan@74 {
		label = "emmc_therm";
		reg = <0x74>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <0>;
		qcom,calibration-type = "ratiometric";
		qcom,scale-function = <2>;
		qcom,hw-settle-time = <2>;
		qcom,fast-avg-setup = <0>;
		qcom,btm-channel-number = <0x68>;
		qcom,thermal-node;
	};

	chan@75 {
		label = "pa_therm0";
		reg = <0x75>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <0>;
		qcom,calibration-type = "ratiometric";
		qcom,scale-function = <2>;
		qcom,hw-settle-time = <2>;
		qcom,fast-avg-setup = <0>;
		qcom,btm-channel-number = <0x70>;
		qcom,thermal-node;
	};

	chan@77 {
		label = "pa_therm1";
		reg = <0x77>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <0>;
		qcom,calibration-type = "ratiometric";
		qcom,scale-function = <2>;
		qcom,hw-settle-time = <2>;
		qcom,fast-avg-setup = <0>;
		qcom,btm-channel-number = <0x78>;
		qcom,thermal-node;
	};

	chan@78 {
		label = "quiet_therm";
		reg = <0x78>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <0>;
		qcom,calibration-type = "ratiometric";
		qcom,scale-function = <2>;
		qcom,hw-settle-time = <2>;
		qcom,fast-avg-setup = <0>;
		qcom,btm-channel-number = <0x80>;
		qcom,thermal-node;
	};

	chan@7c {
		label = "xo_therm_buf";
		reg = <0x7c>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <0>;
		qcom,calibration-type = "ratiometric";
		qcom,scale-function = <4>;
		qcom,hw-settle-time = <2>;
		qcom,fast-avg-setup = <0>;
		qcom,btm-channel-number = <0x88>;
		qcom,thermal-node;
	};
};

&mdss_hdmi_tx {
	qcom,display-id = "secondary";
	pinctrl-names = "hdmi_hpd_active", "hdmi_ddc_active", "hdmi_cec_active",
				"hdmi_active", "hdmi_sleep";
	pinctrl-0 = <&mdss_hdmi_hpd_active &mdss_hdmi_ddc_suspend
						&mdss_hdmi_cec_suspend>;
	pinctrl-1 = <&mdss_hdmi_hpd_active &mdss_hdmi_ddc_active
						&mdss_hdmi_cec_suspend>;
	pinctrl-2 = <&mdss_hdmi_hpd_active &mdss_hdmi_cec_active
						&mdss_hdmi_ddc_suspend>;
	pinctrl-3 = <&mdss_hdmi_hpd_active &mdss_hdmi_ddc_active
						&mdss_hdmi_cec_active>;
	pinctrl-4 = <&mdss_hdmi_hpd_suspend &mdss_hdmi_ddc_suspend
						&mdss_hdmi_cec_suspend>;
	/delete-property/ qcom,pluggable;
};

#include "msm8996-sde-display.dtsi"

&pmx_mdss {
	mdss_dsi_active: mdss_dsi_active {
		mux {
			pins = "gpio8",  "gpio70";
			function = "gpio";
		};

		config {
			pins = "gpio8",  "gpio70";
			drive-strength = <8>; /* 8 mA */
			bias-disable = <0>; /* no pull */
			output-high;
		};
	};

	mdss_dsi_suspend: mdss_dsi_suspend {
		mux {
			pins = "gpio8",  "gpio70";
			function = "gpio";
		};

		config {
			pins = "gpio8",  "gpio70";
			drive-strength = <2>; /* 2 mA */
			bias-pull-down; /* pull down */
		};
	};
};

&sde_kms {
	connectors = <&sde_hdmi &display_manager>;
	gpus = <&msm_gpu>;
	memory-region = <&cont_splash_mem>;
	qcom,sde-plane-id-map {
		qcom,sde-plane-id@0 {
			qcom,display-type = "primary";
			qcom,plane-name = "rgb0", "rgb1";
			qcom,plane-type = "primary";
		};
		qcom,sde-plane-id@1 {
			qcom,display-type = "primary";
			qcom,plane-name = "vig0", "vig1";
			qcom,plane-type = "overlay";
		};
		qcom,sde-plane-id@2 {
			qcom,display-type = "primary";
			qcom,plane-name = "cursor0";
			qcom,plane-type = "cursor";
		};
		qcom,sde-plane-id@3 {
			qcom,display-type = "secondary";
			qcom,plane-name = "rgb2";
			qcom,plane-type = "primary";
		};
		qcom,sde-plane-id@4 {
			qcom,display-type = "secondary";
			qcom,plane-name = "vig2";
			qcom,plane-type = "overlay";
		};
		qcom,sde-plane-id@5 {
			qcom,display-type = "secondary";
			qcom,plane-name = "dma0";
			qcom,plane-type = "overlay";
		};
		qcom,sde-plane-id@6 {
			qcom,display-type = "secondary";
			qcom,plane-name = "cursor1";
			qcom,plane-type = "cursor";
		};
		qcom,sde-plane-id@7 {
			qcom,display-type = "tertiary";
			qcom,plane-name = "rgb3";
			qcom,plane-type = "primary";
		};
		qcom,sde-plane-id@8 {
			qcom,display-type = "tertiary";
			qcom,plane-name = "vig3";
			qcom,plane-type = "overlay";
		};
		qcom,sde-plane-id@9 {
			qcom,display-type = "tertiary";
			qcom,plane-name = "dma1";
			qcom,plane-type = "overlay";
		};
	};
};

&sde_hdmi {
	status = "ok";
	qcom,hdmi-tx-ddc-clk-gpio = <&tlmm 32 0>;
	qcom,hdmi-tx-ddc-data-gpio = <&tlmm 33 0>;
	qcom,hdmi-tx-hpd-gpio = <&tlmm 34 0>;
	qcom,hdmi-tx-mux-en-gpio = <&tlmm 27 0>;
	qcom,hdmi-tx-mux-sel-gpio = <&tlmm 83 0>;
	qcom,hdmi-tx-mux-lpm-gpio = <&tlmm 85 0>;
};

&dsi_dual_sharp_video_1 {
	/delete-property/ qcom,dsi-display-active;
};

&hdmi_display {
	qcom,display-type = "primary";
};

&dsi_adv_7533_1 {
	qcom,dsi-display-active;
	qcom,display-type = "secondary";
	qcom,dsi-panel = <&dsi_adv7533_1080p>;

	qcom,panel-supply-entries {
		#address-cells = <1>;
		#size-cells = <0>;

		qcom,panel-supply-entry@0 {
			reg = <0>;
			qcom,supply-name = "vdd";
			qcom,supply-min-voltage = <3300000>;
			qcom,supply-max-voltage = <3300000>;
			qcom,supply-enable-load = <100000>;
			qcom,supply-disable-load = <100>;
		};

		qcom,panel-supply-entry@1 {
			reg = <1>;
			qcom,supply-name = "vddio";
			qcom,supply-min-voltage = <1800000>;
			qcom,supply-max-voltage = <1800000>;
			qcom,supply-enable-load = <100000>;
			qcom,supply-disable-load = <100>;
		};
	};
};

&dsi_adv_7533_2 {
	qcom,dsi-display-active;
	qcom,dsi-panel = <&dsi_adv7533_1080p>;

	qcom,panel-supply-entries {
		#address-cells = <1>;
		#size-cells = <0>;

		qcom,panel-supply-entry@0 {
			reg = <0>;
			qcom,supply-name = "vdd";
			qcom,supply-min-voltage = <3300000>;
			qcom,supply-max-voltage = <3300000>;
			qcom,supply-enable-load = <100000>;
			qcom,supply-disable-load = <100>;
		};

		qcom,panel-supply-entry@1 {
			reg = <1>;
			qcom,supply-name = "vddio";
			qcom,supply-min-voltage = <1800000>;
			qcom,supply-max-voltage = <1800000>;
			qcom,supply-enable-load = <100000>;
			qcom,supply-disable-load = <100>;
		};
	};
};

&mdss_mdp {
	qcom,mdss-pref-prim-intf = "dsi";
};

&mdss_dsi {
	hw-config = "dual_dsi";
};

&mdss_dsi0 {
	qcom,dsi-pref-prim-pan = <&dsi_adv7533_1080p>;
	pinctrl-names = "mdss_default", "mdss_sleep";
	pinctrl-0 = <&mdss_dsi_active &mdss_te_active>;
	pinctrl-1 = <&mdss_dsi_suspend &mdss_te_suspend>;
	qcom,display-id = "primary";
	qcom,bridge-index = <0>;
	vddio-supply = <&pm8994_l17>;

	qcom,panel-supply-entries {
		#address-cells = <1>;
		#size-cells = <0>;

		qcom,panel-supply-entry@0 {
			reg = <0>;
			qcom,supply-name = "vdd";
			qcom,supply-min-voltage = <3300000>;
			qcom,supply-max-voltage = <3300000>;
			qcom,supply-enable-load = <100000>;
			qcom,supply-disable-load = <100>;
		};

		qcom,panel-supply-entry@1 {
			reg = <1>;
			qcom,supply-name = "vddio";
			qcom,supply-min-voltage = <1800000>;
			qcom,supply-max-voltage = <1800000>;
			qcom,supply-enable-load = <100000>;
			qcom,supply-disable-load = <100>;
		};
	};
};

&mdss_dsi1 {
	qcom,dsi-pref-prim-pan = <&dsi_adv7533_1080p>;
	pinctrl-names = "mdss_default", "mdss_sleep";
	pinctrl-0 = <&mdss_dsi_active &mdss_te_active>;
	pinctrl-1 = <&mdss_dsi_suspend &mdss_te_suspend>;
	qcom,display-id = "tertiary";
	qcom,bridge-index = <1>;
	vddio-supply = <&pm8994_l17>;

	qcom,panel-supply-entries {
		#address-cells = <1>;
		#size-cells = <0>;

		qcom,panel-supply-entry@0 {
			reg = <0>;
			qcom,supply-name = "vdd";
			qcom,supply-min-voltage = <3300000>;
			qcom,supply-max-voltage = <3300000>;
			qcom,supply-enable-load = <100000>;
			qcom,supply-disable-load = <100>;
		};

		qcom,panel-supply-entry@1 {
			reg = <1>;
			qcom,supply-name = "vddio";
			qcom,supply-min-voltage = <1800000>;
			qcom,supply-max-voltage = <1800000>;
			qcom,supply-enable-load = <100000>;
			qcom,supply-disable-load = <100>;
		};
	};
};

&dsi_dual_sharp_video {
	qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_wled";
	qcom,mdss-dsi-bl-min-level = <1>;
	qcom,mdss-dsi-bl-max-level = <4095>;
	qcom,cont-splash-enabled;
	qcom,panel-supply-entries = <&dsi_panel_pwr_supply>;
};

&dsi_dual_nt35597_video {
	qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_wled";
	qcom,mdss-dsi-bl-min-level = <1>;
	qcom,mdss-dsi-bl-max-level = <4095>;
	qcom,cont-splash-enabled;
	qcom,panel-supply-entries = <&dsi_panel_pwr_supply>;
};

&dsi_dual_nt35597_cmd {
	qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_wled";
	qcom,mdss-dsi-bl-min-level = <1>;
	qcom,mdss-dsi-bl-max-level = <4095>;
	qcom,cont-splash-enabled;
	qcom,panel-supply-entries = <&dsi_panel_pwr_supply>;
	qcom,partial-update-enabled;
	qcom,panel-roi-alignment = <720 128 720 128 1440 128>;
};

&dsi_nt35597_dsc_video {
	qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_wled";
	qcom,mdss-dsi-bl-min-level = <1>;
	qcom,mdss-dsi-bl-max-level = <4095>;
	qcom,cont-splash-enabled;
	qcom,panel-supply-entries = <&dsi_panel_pwr_supply>;
};

&dsi_nt35597_dsc_cmd {
	qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_wled";
	qcom,mdss-dsi-bl-min-level = <1>;
	qcom,mdss-dsi-bl-max-level = <4095>;
	qcom,cont-splash-enabled;
	qcom,panel-supply-entries = <&dsi_panel_pwr_supply>;
};

/{
	mtp_batterydata: qcom,battery-data {
		qcom,batt-id-range-pct = <15>;
		#include "batterydata-itech-3000mah.dtsi"
	};
};

&pm8994_mpps {
	mpp@a100 { /* MPP 2 */
		qcom,mode = <1>;		/* Digital output */
		qcom,output-type = <0>;		/* CMOS logic */
		qcom,vin-sel = <2>;		/* S4 1.8V */
		qcom,src-sel = <0>;		/* Constant */
		qcom,master-en = <1>;		/* Enable GPIO */
		status = "okay";
	};

	mpp@a300 { /* MPP 4 */
		/* HDMI_5v_vreg regulator enable */
		qcom,mode = <1>;		/* Digital output */
		qcom,output-type = <0>;		/* CMOS logic */
		qcom,vin-sel = <2>;		/* S4 1.8V */
		qcom,src-sel = <0>;		/* Constant */
		qcom,master-en = <1>;		/* Enable GPIO */
		qcom,invert = <0>;
		status = "okay";
	};

	mpp@a500 { /* MPP 6 */
		qcom,mode = <1>;		/* Digital output */
		qcom,output-type = <0>;		/* CMOS logic */
		qcom,vin-sel = <2>;		/* S4 1.8V */
		qcom,src-sel = <0>;		/* Constant */
		qcom,master-en = <1>;		/* Enable GPIO */
		status = "okay";
	};

	mpp@a700 { /* MPP 8 */
		/* USB 5V regulator enable */
		qcom,mode = <1>;		/* Digital output */
		qcom,output-type = <0>;		/* CMOS logic */
		qcom,vin-sel = <2>;		/* S4 1.8V */
		qcom,src-sel = <0>;		/* Constant */
		qcom,master-en = <1>;		/* Enable GPIO */
		status = "okay";
	};
};

&soc {
	qcom,early-cam {
		cell-index = <0>;
		compatible = "qcom,early-cam";
		status = "ok";
		mmagic-supply = <&gdsc_mmagic_camss>;
		gdscr-supply = <&gdsc_camss_top>;
		vfe0-vdd-supply = <&gdsc_vfe0>;
		qcom,cam-vreg-name = "mmagic", "gdscr", "vfe0-vdd";
		clocks = <&clock_mmss clk_mmss_mmagic_ahb_clk>,
			<&clock_mmss clk_camss_top_ahb_clk>,
			<&clock_mmss clk_cci_clk_src>,
			<&clock_mmss clk_camss_cci_ahb_clk>,
			<&clock_mmss clk_camss_cci_clk>,
			<&clock_mmss clk_camss_ahb_clk>,
			<&clock_mmss clk_mmagic_camss_axi_clk>,
			<&clock_mmss clk_camss_vfe_ahb_clk>,
			<&clock_mmss clk_camss_vfe0_ahb_clk>,
			<&clock_mmss clk_camss_vfe_axi_clk>,
			<&clock_mmss clk_camss_vfe0_stream_clk>,
			<&clock_mmss clk_smmu_vfe_axi_clk>,
			<&clock_mmss clk_smmu_vfe_ahb_clk>,
			<&clock_mmss clk_camss_csi_vfe0_clk>,
			<&clock_mmss clk_vfe0_clk_src>,
			<&clock_mmss clk_camss_csi_vfe0_clk>,
			<&clock_mmss clk_camss_csi2_ahb_clk>,
			<&clock_mmss clk_camss_csi2_clk>,
			<&clock_mmss clk_camss_csi2phy_clk>,
			<&clock_mmss clk_csi2phytimer_clk_src>,
			<&clock_mmss clk_camss_csi2phytimer_clk>,
			<&clock_mmss clk_camss_csi2rdi_clk>,
			<&clock_mmss clk_camss_ispif_ahb_clk>,
			<&clock_mmss clk_camss_vfe0_clk>;
		clock-names =
			"mmss_mmagic_ahb_clk",
			"camss_top_ahb_clk",
			"cci_clk_src",
			"camss_cci_ahb_clk",
			"camss_cci_clk",
			"camss_ahb_clk",
			"mmagic_camss_axi_clk",
			"camss_vfe_ahb_clk",
			"camss_vfe0_ahb_clk",
			"camss_vfe_axi_clk",
			"camss_vfe0_stream_clk",
			"smmu_vfe_axi_clk",
			"smmu_vfe_ahb_clk",
			"camss_csi_vfe0_clk",
			"vfe0_clk_src",
			"camss_csi_vfe0_clk",
			"camss_csi2_ahb_clk",
			"camss_csi2_clk",
			"camss_csi2phy_clk",
			"csi2phytimer_clk_src",
			"camss_csi2phytimer_clk",
			"camss_csi2rdi_clk",
			"camss_ispif_ahb_clk",
			"clk_camss_vfe0_clk";

		qcom,clock-rates = <19200000
						19200000
						19200000
						19200000
						19200000
						19200000
						0
						0
						0
						320000000
						0
						0
						0
						0
						19200000
						0
						0
						200000000
						200000000
						200000000
						200000000
						200000000
						0
						100000000>;
	};

	ntn1: ntn_avb@1 { /* Neutrno device on RC1*/
		compatible = "qcom,ntn_avb";

		ntn-rst-gpio = <&pm8994_gpios 13 0>;

		vdd-ntn-hsic-supply = <&pm8994_l25>;
		vdd-ntn-pci-supply = <&pm8994_s4>;
		vdd-ntn-io-supply = <&pm8994_s4>;

		qcom,ntn-rst-delay-msec = <100>;
		qcom,ntn-rc-num = <1>;
		qcom,ntn-bus-num = <1>;

		qcom,msm-bus,name = "ntn";
		qcom,msm-bus,num-cases = <2>;
		qcom,msm-bus,num-paths = <1>;
		qcom,msm-bus,vectors-KBps =
				<100 512 0 0>,
				<100 512 207108 14432000>;
	};

	ntn2: ntn_avb@2 { /*Neutrino device on RC2*/
		compatible = "qcom,ntn_avb";
		qcom,ntn-rst-delay-msec = <100>;
		qcom,ntn-rc-num = <2>;
		qcom,ntn-bus-num = <1>;

		qcom,msm-bus,name = "ntn";
		qcom,msm-bus,num-cases = <2>;
		qcom,msm-bus,num-paths = <1>;
		qcom,msm-bus,vectors-KBps =
				<108 512 0 0>,
				<108 512 207108 14432000>;
	};

	i2c@75ba000 {
		synaptics@20 {
			compatible = "synaptics,dsx";
			reg = <0x20>;
			interrupt-parent = <&tlmm>;
			interrupts = <125 0x2008>;
			vdd-supply = <&pm8994_l14>;
			avdd-supply = <&pm8994_l22>;
			pinctrl-names = "pmx_ts_active", "pmx_ts_suspend";
			pinctrl-0 = <&ts_active>;
			pinctrl-1 = <&ts_suspend>;
			synaptics,display-coords = <0 0 1599 2559>;
			synaptics,panel-coords = <0 0 1599 2703>;
			synaptics,reset-gpio = <&tlmm 89 0x00>;
			synaptics,irq-gpio = <&tlmm 125 0x2008>;
			synaptics,disable-gpios;
			synaptics,fw-name = "PR1702898-s3528t_00350002.img";
			/* Underlying clocks used by secure touch */
			clock-names = "iface_clk", "core_clk";
			clocks = <&clock_gcc clk_gcc_blsp2_ahb_clk>,
				 <&clock_gcc clk_gcc_blsp2_qup6_i2c_apps_clk>;
		};
	};

	i2c@75b6000 { /* BLSP8 */
		/* ADV7533 configuration */
		adv7533@3d {
			compatible = "adv7533";
			instance_id = <0>;
			reg = <0x3d>;
			adi,video-mode = <3>; /* 3 = 1080p */
			adi,main-addr = <0x3D>;
			adi,cec-dsi-addr = <0x3E>;
			adi,enable-audio;
			pinctrl-names = "pmx_adv7533_active",
				"pmx_adv7533_suspend";
			pinctrl-0 = <&adv7533_0_int_active
				&adv7533_0_hpd_int_active
				&adv7533_0_switch_active>;
			pinctrl-1 = <&adv7533_0_int_suspend
				&adv7533_0_hpd_int_suspend
				&adv7533_0_switch_suspend>;
			adi,irq-gpio = <&tlmm 71 0x2002>;
			adi,switch-gpio = <&tlmm 72 0x1>;
			vddio-supply = <&pm8994_l17>;
			qcom,supply-names = "vddio";
			qcom,min-voltage-level = <1800000>;
			qcom,max-voltage-level = <1800000>;
			qcom,enable-load = <100000>;
			qcom,disable-load = <100>;
			qcom,post-on-sleep = <60>;
		};

		adv7533@39 {
			compatible = "adv7533";
			instance_id = <1>;
			reg = <0x39>;
			adi,video-mode = <3>; /* 3 = 1080p */
			adi,main-addr = <0x39>;
			adi,cec-dsi-addr = <0x3C>;
			adi,enable-audio;
			pinctrl-names = "pmx_adv7533_active",
				"pmx_adv7533_suspend";
			pinctrl-0 = <&adv7533_1_int_active
				&adv7533_1_hpd_int_active
				&adv7533_1_switch_active>;
			pinctrl-1 = <&adv7533_1_int_suspend
				&adv7533_1_hpd_int_suspend
				&adv7533_1_switch_suspend>;
			adi,irq-gpio = <&tlmm 73 0x2002>;
			adi,switch-gpio = <&tlmm 74 0x0>;
			vddio-supply = <&pm8994_l17>;
			qcom,supply-names = "vddio";
			qcom,min-voltage-level = <1800000>;
			qcom,max-voltage-level = <1800000>;
			qcom,enable-load = <100000>;
			qcom,disable-load = <100>;
		};
	};

	pinctrl@01010000 {
		pcie2 {
			pcie2_perst_default: pcie2_perst_default {
				mux {
					pins = "gpio90";
					function = "gpio";
				};

				config {
					pins = "gpio90";
					drive-strength = <2>;
					bias-pull-down;
				};
			};

			pcie2_wake_default: pcie2_wake_default {
				mux {
					pins = "gpio54";
					function = "gpio";
				};

				config {
					pins = "gpio54";
					drive-strength = <2>;
					bias-pull-down;
				};
			};

			pcie2_wake_sleep: pcie2_wake_sleep {
				mux {
					pins = "gpio54";
					function = "gpio";
				};

				config {
					pins = "gpio54";
					drive-strength = <2>;
					bias-disable;
				};
			};
		};
	};

	gen-vkeys {
		compatible = "qcom,gen-vkeys";
		label = "synaptics_dsx";
		qcom,disp-maxx = <1599>;
		qcom,disp-maxy = <2559>;
		qcom,panel-maxx = <1599>;
		qcom,panel-maxy = <2703>;
		qcom,key-codes = <158 139 102 217>;
	};

	gpio_keys {
		compatible = "gpio-keys";
		input-name = "gpio-keys";

		vol_up {
			label = "volume_up";
			gpios = <&pm8994_gpios 2 0x1>;
			linux,input-type = <1>;
			linux,code = <115>;
			gpio-key,wakeup;
			debounce-interval = <15>;
		};

		cam_snapshot {
			label = "cam_snapshot";
			gpios = <&pm8994_gpios 4 0x1>;
			linux,input-type = <1>;
			linux,code = <766>;
			gpio-key,wakeup;
			debounce-interval = <15>;
		};

		cam_focus {
			label = "cam_focus";
			gpios = <&pm8994_gpios 5 0x1>;
			linux,input-type = <1>;
			linux,code = <528>;
			gpio-key,wakeup;
			debounce-interval = <15>;
		};
	};

	sound-9335 {
		status = "disabled";
	};

	sound-adp-agave {
		compatible = "qcom,apq8096-asoc-snd-adp-agave";
		qcom,model = "apq8096-adp-agave-snd-card";

		asoc-platform = <&pcm0>, <&pcm1>, <&pcm2>, <&voip>, <&voice>,
				<&loopback>, <&compress>, <&hostless>,
				<&afe>, <&lsm>, <&routing>, <&pcmnoirq>,
				<&loopback1>;
		asoc-platform-names = "msm-pcm-dsp.0", "msm-pcm-dsp.1",
				"msm-pcm-dsp.2", "msm-voip-dsp",
				"msm-pcm-voice", "msm-pcm-loopback",
				"msm-compress-dsp", "msm-pcm-hostless",
				"msm-pcm-afe", "msm-lsm-client",
				"msm-pcm-routing", "msm-pcm-dsp-noirq",
				"msm-pcm-loopback.1";
		asoc-cpu = <&dai_pri_auxpcm>, <&dai_sec_auxpcm>, <&dai_hdmi>,
				<&dai_mi2s_sec>, <&dai_mi2s>, <&dai_mi2s_quat>,
				<&afe_pcm_rx>, <&afe_pcm_tx>,
				<&afe_proxy_rx>, <&afe_proxy_tx>,
				<&incall_record_rx>, <&incall_record_tx>,
				<&incall_music_rx>, <&incall_music2_rx>,
				<&dai_sec_tdm_tx_0>, <&dai_sec_tdm_tx_1>,
				<&dai_sec_tdm_tx_2>, <&dai_sec_tdm_tx_3>,
				<&dai_tert_tdm_rx_0>, <&dai_tert_tdm_rx_1>,
				<&dai_tert_tdm_rx_2>, <&dai_tert_tdm_rx_3>,
				<&dai_tert_tdm_rx_4>, <&dai_tert_tdm_tx_0>,
				<&dai_tert_tdm_tx_1>, <&dai_tert_tdm_tx_2>,
				<&dai_tert_tdm_tx_3>, <&dai_quat_tdm_rx_0>,
				<&dai_quat_tdm_rx_1>, <&dai_quat_tdm_rx_2>,
				<&dai_quat_tdm_rx_3>, <&dai_quat_tdm_tx_0>,
				<&dai_quat_tdm_tx_1>, <&dai_quat_tdm_tx_2>,
				<&dai_quat_tdm_tx_3>;
		asoc-cpu-names = "msm-dai-q6-auxpcm.1", "msm-dai-q6-auxpcm.2",
				"msm-dai-q6-hdmi.8", "msm-dai-q6-mi2s.1",
				"msm-dai-q6-mi2s.2", "msm-dai-q6-mi2s.3",
				"msm-dai-q6-dev.224", "msm-dai-q6-dev.225",
				"msm-dai-q6-dev.241", "msm-dai-q6-dev.240",
				"msm-dai-q6-dev.32771", "msm-dai-q6-dev.32772",
				"msm-dai-q6-dev.32773", "msm-dai-q6-dev.32770",
				"msm-dai-q6-tdm.36881", "msm-dai-q6-tdm.36883",
				"msm-dai-q6-tdm.36885", "msm-dai-q6-tdm.36887",
				"msm-dai-q6-tdm.36896", "msm-dai-q6-tdm.36898",
				"msm-dai-q6-tdm.36900", "msm-dai-q6-tdm.36902",
				"msm-dai-q6-tdm.36904", "msm-dai-q6-tdm.36897",
				"msm-dai-q6-tdm.36899", "msm-dai-q6-tdm.36901",
				"msm-dai-q6-tdm.36903", "msm-dai-q6-tdm.36912",
				"msm-dai-q6-tdm.36914", "msm-dai-q6-tdm.36916",
				"msm-dai-q6-tdm.36918", "msm-dai-q6-tdm.36913",
				"msm-dai-q6-tdm.36915", "msm-dai-q6-tdm.36917",
				"msm-dai-q6-tdm.36919";
		asoc-codec = <&stub_codec>;
		asoc-codec-names = "msm-stub-codec.1";
	};

	usb_detect {
		compatible = "qcom,gpio-usbdetect";
		interrupt-parent = <&spmi_bus>;
		interrupts = <0x0 0xd0 0x0>;  /* PM8994 GPIO17 */
		interrupt-names = "vbus_det_irq";
	};

	loopback1: qcom,msm-pcm-loopback-low-latency {
		compatible = "qcom,msm-pcm-loopback";
		qcom,msm-pcm-loopback-low-latency;
	};

	usb_vbus_vreg: usb_vbus_vreg {
		compatible = "regulator-fixed";
		regulator-name = "usb_vbus_vreg";
		gpio = <&pm8994_mpps 8 0>;
		enable-active-high;
	};

	usb2_otg_switch: usb2_otg_switch {
		compatible = "regulator-fixed";
		vin-supply = <&usb_vbus_vreg>;
		regulator-name = "usb2_otg_vreg";
		gpio = <&pm8994_gpios 12 0>;
		enable-active-high;
	};

	qcom,msm-dai-mi2s {
		dai_mi2s_sec: qcom,msm-dai-q6-mi2s-sec {
			qcom,msm-mi2s-rx-lines = <2>;
			qcom,msm-mi2s-tx-lines = <1>;
			pinctrl-names = "default", "sleep";
			pinctrl-0 = <&sec_mi2s_active &sec_mi2s_sd0_active
				&sec_mi2s_sd1_active>;
			pinctrl-1 = <&sec_mi2s_sleep &sec_mi2s_sd0_sleep
				&sec_mi2s_sd1_sleep>;
		};

		dai_mi2s_quat: qcom,msm-dai-q6-mi2s-quat {
			pinctrl-names = "default", "sleep";
			pinctrl-0 = <&quat_mi2s_active &quat_mi2s_sd0_active>;
			pinctrl-1 = <&quat_mi2s_sleep &quat_mi2s_sd0_sleep>;
		};
	};

	qcom,msm-dai-tdm-tert-rx {
		qcom,msm-cpudai-tdm-group-num-ports = <5>;
		qcom,msm-cpudai-tdm-group-port-id = <36896 36898 36900
							36902 36904>;
		pinctrl-names = "default", "sleep";
		pinctrl-0 = <&tert_tdm_dout_active>;
		pinctrl-1 = <&tert_tdm_dout_sleep>;
		dai_tert_tdm_rx_4: qcom,msm-dai-q6-tdm-tert-rx-4 {
			compatible = "qcom,msm-dai-q6-tdm";
			qcom,msm-cpudai-tdm-dev-id = <36904>;
			qcom,msm-cpudai-tdm-sync-mode = <1>;
			qcom,msm-cpudai-tdm-sync-src = <0>;
			qcom,msm-cpudai-tdm-data-out = <0>;
			qcom,msm-cpudai-tdm-invert-sync = <0>;
			qcom,msm-cpudai-tdm-data-delay = <0>;
			qcom,msm-cpudai-tdm-data-align = <0>;
		};
	};

	qcom,msm-dai-tdm-quat-rx {
		pinctrl-names = "default", "sleep";
		pinctrl-0 = <&quat_tdm_dout_active>;
		pinctrl-1 = <&quat_tdm_dout_sleep>;
	};

	qcom,msm-ssc-sensors {
		status = "disabled";
	};
};

&pm8994_gpios {
	gpio@c600 { /* GPIO 7 - NFC DWL REQ */
		qcom,mode = <1>;
		qcom,output-type = <0>;
		qcom,pull = <5>;
		qcom,vin-sel = <2>;
		qcom,out-strength = <3>;
		qcom,src-sel = <0>;
		qcom,master-en = <1>;
		status = "okay";
	};

	gpio@c700 { /* GPIO 8 - WLAN_EN */
		qcom,mode = <1>;		/* Digital output*/
		qcom,pull = <4>;		/* Pulldown 10uA */
		qcom,vin-sel = <2>;		/* VIN2 */
		qcom,src-sel = <0>;		/* GPIO */
		qcom,invert = <0>;		/* Invert */
		qcom,master-en = <1>;		/* Enable GPIO */
		status = "okay";
	};

	gpio@c800 { /* GPIO 9 - Rome 3.3V control */
		qcom,mode = <1>;		/* Digital output */
		qcom,output-type = <0>;		/* MOS logic */
		qcom,invert = <1>;		/* Output high */
		qcom,vin-sel = <0>;		/* VPH_PWR */
		qcom,src-sel = <0>;		/* Constant */
		qcom,out-strength = <1>;	/* High drive strength */
		qcom,master-en = <1>;		/* Enable GPIO */
		status = "okay";
	};

	gpio@c900 { /* GPIO 10 - lcd_bklt_reg_en */
		qcom,mode = <1>;	/* DIGITAL OUT */
		qcom,output-type = <0>;		/* CMOS logic */
		qcom,invert = <1>;	/* output hight initially */
		qcom,vin-sel = <2>;	/* 1.8 */
		qcom,src-sel = <0>;	/* CONSTANT */
		qcom,out-strength = <1>;	/* Low drive strength */
		qcom,master-en = <1>;	/* ENABLE GPIO */
		status = "okay";
	};
	gpio@c100 { /* GPIO 2 */
		qcom,mode = <0>;
		qcom,pull = <0>;
		qcom,vin-sel = <2>;
		qcom,src-sel = <0>;
		status = "okay";
	};

	gpio@c300 { /* GPIO 4 */
		qcom,mode = <0>;
		qcom,pull = <0>;
		qcom,vin-sel = <2>;
		qcom,src-sel = <0>;
		status = "okay";
	};

	gpio@c400 { /* GPIO 5 */
		qcom,mode = <0>;
		qcom,pull = <0>;
		qcom,vin-sel = <2>;
		qcom,src-sel = <0>;
		status = "okay";
	};

	gpio@ca00 { /* GPIO 11 - USB enb1 (otg switch) */
		qcom,mode = <1>;	/* DIGITAL OUT */
		qcom,vin-sel = <2>;	/* 1.8 */
		qcom,src-sel = <0>;	/* GPIO */
		qcom,master-en = <1>;	/* Enable GPIO */
		status = "okay";
	};

	gpio@cb00 { /* GPIO 12 - USB enb2 (otg switch) */
		qcom,mode = <1>;	/* DIGITAL OUT */
		qcom,vin-sel = <2>;	/* 1.8 */
		qcom,src-sel = <0>;	/* GPIO */
		qcom,master-en = <1>;	/* Enable GPIO */
		status = "okay";
	};

	gpio@cc00 { /* GPIO 13 - NTN_RST */
		qcom,mode = <1>; /* DIGITAL OUT */
		qcom,output-type = <0>; /* CMOS logic */
		qcom,pull = <5>;
		qcom,vin-sel = <2>; /* 1.8 */
		qcom,out-strength = <1>;
		qcom,src-sel = <0>; /* GPIO */
		qcom,master-en = <0>; /* Disable GPIO */
		status = "okay";
	};

	gpio@ce00 { /* GPIO 15 */
		qcom,mode = <1>;
		qcom,output-type = <0>;
		qcom,pull = <5>;
		qcom,vin-sel = <2>;
		qcom,out-strength = <1>;
		qcom,src-sel = <2>;
		qcom,master-en = <1>;
		status = "okay";
	};

	gpio@d000 { /* GPIO 17 - USB1 VBUS detect */
		qcom,mode = <0>;	/* Digital Input*/
		qcom,pull = <5>;	/* No pull */
		qcom,vin-sel = <2>;	/* 1.8 V */
		qcom,src-sel = <0>;	/* GPIO */
		qcom,master-en = <1>;	/* Enable GPIO */
		status = "okay";
	};

	gpio@d100 { /* GPIO 18 - Rome Sleep Clock */
		qcom,mode = <1>;		/* Digital output */
		qcom,output-type = <0>;		/* CMOS logic */
		qcom,invert = <0>;		/* Output low initially */
		qcom,vin-sel = <2>;		/* VIN 2 */
		qcom,src-sel = <3>;		/* Function 2 */
		qcom,out-strength = <2>;	/* Medium */
		qcom,master-en = <1>;		/* Enable GPIO */
		status = "okay";
	};

	gpio@d200 { /* GPIO 19 - Rome BT Reset */
		qcom,mode = <1>;		/* Digital output*/
		qcom,pull = <4>;		/* Pulldown 10uA */
		qcom,vin-sel = <2>;		/* VIN2 */
		qcom,src-sel = <0>;		/* GPIO */
		qcom,invert = <0>;		/* Invert */
		qcom,master-en = <1>;		/* Enable GPIO */
		status = "okay";
	};
};

&usb2s {
	status = "ok";
	vbus_dwc3-supply = <&usb2_otg_switch>;
	dwc3@7600000 {
		dr_mode = "host";
	};
};

&usb3 {
	interrupt-parent = <&usb3>;
	interrupts = <0 1 2 3>;
	#interrupt-cells = <1>;
	interrupt-map-mask = <0x0 0xffffffff>;
	interrupt-map = <0x0 0 &intc 0 0 347 0
			 0x0 1 &intc 0 0 243 0
			 0x0 2 &intc 0 0 180 0
			 0x0 3 &spmi_bus 0x0 0x0 0x9 0x0>;
	interrupt-names = "hs_phy_irq", "ss_phy_irq", "pwr_event_irq",
				"pmic_id_irq";

	vbus_dwc3-supply = <&usb_otg_switch>;
};

&blsp1_uart2 {
	status = "ok";
};

&i2c_6 {
	at24@51 {
		compatible = "atmel,24c32";
		reg = <0x51>;
	};
};

&i2c_7 {
	silabs4705@11 { /* SiLabs FM chip, slave id 0x11*/
		status = "disabled";
		compatible = "silabs,si4705";
		reg = <0x11>;
		vdd-supply = <&pm8994_s4>;
		silabs,vdd-supply-voltage = <1800000 1800000>;
		va-supply = <&rome_vreg>;
		silabs,va-supply-voltage = <3300000 3300000>;
		pinctrl-names = "pmx_fm_active","pmx_fm_suspend";
		pinctrl-0 = <&fm_int_active &fm_status_int_active
						 &fm_rst_active>;
		pinctrl-1 = <&fm_int_suspend &fm_status_int_suspend
						&fm_rst_suspend>;
		silabs,reset-gpio = <&tlmm 39 0>;
		silabs,int-gpio = <&tlmm 38 0>;
		silabs,status-gpio = <&tlmm 78 0>;
		#address-cells = <0>;
		interrupts = <0 1>;
		#interrupt-cells = <1>;
		interrupt-map-mask = <0xffffffff>;
		interrupt-map = <
				  0 &tlmm 38 2
				  1 &tlmm 78 1
				>;
		interrupt-names = "silabs_fm_int", "silabs_fm_status_int";
	};
};

&i2c_8 { /* BLSP2 QUP2 */
	nq@28 {
		compatible = "qcom,nq-nci";
		reg = <0x28>;
		qcom,nq-irq = <&tlmm 9 0x00>;
		qcom,nq-ven = <&tlmm 12 0x00>;
		qcom,nq-firm = <&pm8994_gpios 7 0x00>;
		interrupt-parent = <&tlmm>;
		qcom,clk-src = "BBCLK2";
		interrupts = <9 0>;
		interrupt-names = "nfc_irq";
		pinctrl-names = "nfc_active", "nfc_suspend";
		pinctrl-0 = <&nfc_int_active &nfc_disable_active>;
		pinctrl-1 = <&nfc_int_suspend &nfc_disable_suspend>;
		clocks = <&clock_gcc clk_bb_clk2_pin>;
		clock-names = "ref_clk";
	};
};

&soc {
	sound-9335 {
		/delete-property/ qcom,hph-en1-gpio;
	};
};

&slim_msm {
	status = "disabled";
};

/delete-node/  &led_flash0;

&mdss_dsi0 {
	/delete-property/ lab-supply;
	/delete-property/ ibb-supply;
};

&mdss_dsi1 {
	/delete-property/ lab-supply;
	/delete-property/ ibb-supply;
};

&cci {
	qcom,camera@0 {
		/delete-property/ qcom,led-flash-src;
	};

	qcom,camera@1 {
		/delete-property/ cam_vana-supply;
	};
};

&usb_otg_switch {
	gpio = <&pm8994_gpios 11 0>;
	enable-active-high;
	status = "ok";
	/delete-property/ vin-supply;
};

&pcie0 {
	/delete-property/ qcom,l1-supported;
	/delete-property/ qcom,l1ss-supported;
	/delete-property/ qcom,aux-clk-sync;
};

&pcie1 {
	qcom,msi-gicm-addr = <0x09BD0040>;
	qcom,msi-gicm-base = <0x240>;

	/delete-property/ qcom,l1-supported;
	/delete-property/ qcom,l1ss-supported;
	/delete-property/ qcom,aux-clk-sync;
	/delete-property/ qcom,boot-option;
};

&pcie2 {
	perst-gpio = <&tlmm 90 0>;
	wake-gpio = <&tlmm 54 0>;

	/delete-property/ qcom,l1-supported;
	/delete-property/ qcom,l1ss-supported;
	/delete-property/ qcom,aux-clk-sync;
	/delete-property/ qcom,ep-wakeirq;
};

&wsa881x_211 {
	/delete-property/ qcom,spkr-sd-n-gpio;
};

&wsa881x_212 {
	/delete-property/ qcom,spkr-sd-n-gpio;
};

&wsa881x_213 {
	/delete-property/ qcom,spkr-sd-n-gpio;
};

&wsa881x_214 {
	/delete-property/ qcom,spkr-sd-n-gpio;
};

&vfe_smmu {
	qcom,no-smr-check;
};

/ {
	reserved-memory {
		lk_mem: lk_pool@0x91600000 {
			no-map;
			reg = <0 0x91600000 0 0x00600000>;
			label = "lk_pool";
		};

		early_camera_mem: early_camera_mem@b3fff000 {
			reg = <0 0xb3fff000 0 0x800000>;
			label = "early_camera_mem";
		};
	};
};

