// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
 * Copyright (c) 2021 Rockchip Electronics Co., Ltd.
 * Copyright (c) 2023 Thomas McKahan
 *
 */

/dts-v1/;

#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/pinctrl/rockchip.h>
#include <dt-bindings/usb/pd.h>
#include "rk3588.dtsi"

/ {
	model = "FriendlyElec NanoPC-T6";
	compatible = "friendlyarm,nanopc-t6", "rockchip,rk3588";

	aliases {
		mmc0 = &sdhci;
		mmc1 = &sdmmc;
	};

	chosen {
		stdout-path = "serial2:1500000n8";
	};

	leds {
		compatible = "gpio-leds";

		sys_led: led-0 {
			gpios = <&gpio2 RK_PB7 GPIO_ACTIVE_HIGH>;
			label = "system-led";
			linux,default-trigger = "heartbeat";
			pinctrl-names = "default";
			pinctrl-0 = <&sys_led_pin>;
		};

		usr_led: led-1 {
			gpios = <&gpio2 RK_PC0 GPIO_ACTIVE_HIGH>;
			label = "user-led";
			pinctrl-names = "default";
			pinctrl-0 = <&usr_led_pin>;
		};
	};

	sound {
		compatible = "simple-audio-card";
		pinctrl-names = "default";
		pinctrl-0 = <&hp_det>;

		simple-audio-card,name = "realtek,rt5616-codec";
		simple-audio-card,format = "i2s";
		simple-audio-card,mclk-fs = <256>;

		simple-audio-card,hp-det-gpio = <&gpio1 RK_PC4 GPIO_ACTIVE_LOW>;
		simple-audio-card,hp-pin-name = "Headphones";

		simple-audio-card,widgets =
			"Headphone", "Headphones",
			"Microphone", "Microphone Jack";
		simple-audio-card,routing =
			"Headphones", "HPOL",
			"Headphones", "HPOR",
			"MIC1", "Microphone Jack",
			"Microphone Jack", "micbias1";

		simple-audio-card,cpu {
			sound-dai = <&i2s0_8ch>;
		};
		simple-audio-card,codec {
			sound-dai = <&rt5616>;
		};
	};

	vcc12v_dcin: vcc12v-dcin-regulator {
		compatible = "regulator-fixed";
		regulator-name = "vcc12v_dcin";
		regulator-always-on;
		regulator-boot-on;
		regulator-min-microvolt = <12000000>;
		regulator-max-microvolt = <12000000>;
	};

	/* vcc5v0_sys powers peripherals */
	vcc5v0_sys: vcc5v0-sys-regulator {
		compatible = "regulator-fixed";
		regulator-name = "vcc5v0_sys";
		regulator-always-on;
		regulator-boot-on;
		regulator-min-microvolt = <5000000>;
		regulator-max-microvolt = <5000000>;
		vin-supply = <&vcc12v_dcin>;
	};

	/* vcc4v0_sys powers the RK806, RK860's */
	vcc4v0_sys: vcc4v0-sys-regulator {
		compatible = "regulator-fixed";
		regulator-name = "vcc4v0_sys";
		regulator-always-on;
		regulator-boot-on;
		regulator-min-microvolt = <4000000>;
		regulator-max-microvolt = <4000000>;
		vin-supply = <&vcc12v_dcin>;
	};

	vcc_1v1_nldo_s3: vcc-1v1-nldo-s3-regulator {
		compatible = "regulator-fixed";
		regulator-name = "vcc-1v1-nldo-s3";
		regulator-always-on;
		regulator-boot-on;
		regulator-min-microvolt = <1100000>;
		regulator-max-microvolt = <1100000>;
		vin-supply = <&vcc4v0_sys>;
	};

	vcc_3v3_pcie20: vcc3v3-pcie20-regulator {
		compatible = "regulator-fixed";
		regulator-name = "vcc_3v3_pcie20";
		regulator-always-on;
		regulator-boot-on;
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		vin-supply = <&vcc_3v3_s3>;
	};

	vbus5v0_typec: vbus5v0-typec-regulator {
		compatible = "regulator-fixed";
		enable-active-high;
		gpio = <&gpio1 RK_PD2 GPIO_ACTIVE_HIGH>;
		pinctrl-names = "default";
		pinctrl-0 = <&typec5v_pwren>;
		regulator-name = "vbus5v0_typec";
		regulator-min-microvolt = <5000000>;
		regulator-max-microvolt = <5000000>;
		vin-supply = <&vcc5v0_sys>;
	};

	vcc3v3_pcie2x1l0: vcc3v3-pcie2x1l0-regulator {
		compatible = "regulator-fixed";
		enable-active-high;
		gpio = <&gpio4 RK_PC2 GPIO_ACTIVE_HIGH>;
		pinctrl-names = "default";
		pinctrl-0 = <&pcie_m2_1_pwren>;
		regulator-name = "vcc3v3_pcie2x1l0";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		vin-supply = <&vcc5v0_sys>;
	};

	vcc3v3_pcie30: vcc3v3-pcie30-regulator {
		compatible = "regulator-fixed";
		enable-active-high;
		gpios = <&gpio2 RK_PC5 GPIO_ACTIVE_HIGH>;
		pinctrl-names = "default";
		pinctrl-0 = <&pcie_m2_0_pwren>;
		regulator-name = "vcc3v3_pcie30";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		vin-supply = <&vcc5v0_sys>;
	};
};

&combphy0_ps {
	status = "okay";
};

&combphy1_ps {
	status = "okay";
};

&combphy2_psu {
	status = "okay";
};

&cpu_l0 {
	cpu-supply = <&vdd_cpu_lit_s0>;
};

&cpu_l1 {
	cpu-supply = <&vdd_cpu_lit_s0>;
};

&cpu_l2 {
	cpu-supply = <&vdd_cpu_lit_s0>;
};

&cpu_l3 {
	cpu-supply = <&vdd_cpu_lit_s0>;
};

&cpu_b0{
	cpu-supply = <&vdd_cpu_big0_s0>;
};

&cpu_b1{
	cpu-supply = <&vdd_cpu_big0_s0>;
};

&cpu_b2{
	cpu-supply = <&vdd_cpu_big1_s0>;
};

&cpu_b3{
	cpu-supply = <&vdd_cpu_big1_s0>;
};

&gpio0 {
	gpio-line-names = /* GPIO0 A0-A7 */
			  "", "", "", "",
			  "", "", "", "",
			  /* GPIO0 B0-B7 */
			  "", "", "", "",
			  "", "", "", "",
			  /* GPIO0 C0-C7 */
			  "", "", "", "",
			  "HEADER_10", "HEADER_08", "HEADER_32", "",
			  /* GPIO0 D0-D7 */
			  "", "", "", "",
			  "", "", "", "";
};

&gpio1 {
	gpio-line-names = /* GPIO1 A0-A7 */
			  "HEADER_27", "HEADER_28", "", "",
			  "", "", "", "HEADER_15",
			  /* GPIO1 B0-B7 */
			  "HEADER_26", "HEADER_21", "HEADER_19", "HEADER_23",
			  "HEADER_24", "HEADER_22", "", "",
			  /* GPIO1 C0-C7 */
			  "", "", "", "",
			  "", "", "", "",
			  /* GPIO1 D0-D7 */
			  "", "", "", "",
			  "", "", "HEADER_05", "HEADER_03";
};

&gpio2 {
	gpio-line-names = /* GPIO2 A0-A7 */
			  "", "", "", "",
			  "", "", "", "",
			  /* GPIO2 B0-B7 */
			  "", "", "", "",
			  "", "", "", "",
			  /* GPIO2 C0-C7 */
			  "", "CSI1_11", "CSI1_12", "",
			  "", "", "", "",
			  /* GPIO2 D0-D7 */
			  "", "", "", "",
			  "", "", "", "";
};

&gpio3 {
	gpio-line-names = /* GPIO3 A0-A7 */
			  "HEADER_35", "HEADER_38", "HEADER_40", "HEADER_36",
			  "HEADER_37", "", "DSI0_12", "",
			  /* GPIO3 B0-B7 */
			  "HEADER_33", "DSI0_10", "HEADER_07", "HEADER_16",
			  "HEADER_18", "HEADER_29", "HEADER_31", "HEADER_12",
			  /* GPIO3 C0-C7 */
			  "DSI0_08", "DSI0_14", "HEADER_11", "HEADER_13",
			  "", "", "", "",
			  /* GPIO3 D0-D7 */
			  "", "", "", "",
			  "", "DSI1_10", "", "";
};

&gpio4 {
	gpio-line-names = /* GPIO4 A0-A7 */
			  "DSI1_08", "DSI1_14", "", "DSI1_12",
			  "", "", "", "",
			  /* GPIO4 B0-B7 */
			  "", "", "", "",
			  "", "", "", "",
			  /* GPIO4 C0-C7 */
			  "", "", "", "",
			  "CSI0_11", "CSI0_12", "", "",
			  /* GPIO4 D0-D7 */
			  "", "", "", "",
			  "", "", "", "";
};

&i2c0 {
	pinctrl-names = "default";
	pinctrl-0 = <&i2c0m2_xfer>;
	status = "okay";

	vdd_cpu_big0_s0: regulator@42 {
		compatible = "rockchip,rk8602";
		reg = <0x42>;
		fcs,suspend-voltage-selector = <1>;
		regulator-name = "vdd_cpu_big0_s0";
		regulator-always-on;
		regulator-boot-on;
		regulator-min-microvolt = <550000>;
		regulator-max-microvolt = <1050000>;
		regulator-ramp-delay = <2300>;
		vin-supply = <&vcc4v0_sys>;

		regulator-state-mem {
			regulator-off-in-suspend;
		};
	};

	vdd_cpu_big1_s0: regulator@43 {
		compatible = "rockchip,rk8603", "rockchip,rk8602";
		reg = <0x43>;
		fcs,suspend-voltage-selector = <1>;
		regulator-name = "vdd_cpu_big1_s0";
		regulator-always-on;
		regulator-boot-on;
		regulator-min-microvolt = <550000>;
		regulator-max-microvolt = <1050000>;
		regulator-ramp-delay = <2300>;
		vin-supply = <&vcc4v0_sys>;

		regulator-state-mem {
			regulator-off-in-suspend;
		};
	};
};

&i2c2 {
	status = "okay";

	vdd_npu_s0: regulator@42 {
		compatible = "rockchip,rk8602";
		reg = <0x42>;
		rockchip,suspend-voltage-selector = <1>;
		regulator-name = "vdd_npu_s0";
		regulator-always-on;
		regulator-boot-on;
		regulator-min-microvolt = <550000>;
		regulator-max-microvolt = <950000>;
		regulator-ramp-delay = <2300>;
		vin-supply = <&vcc4v0_sys>;

		regulator-state-mem {
			regulator-off-in-suspend;
		};
	};
};

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

	fusb302: typec-portc@22 {
		compatible = "fcs,fusb302";
		reg = <0x22>;
		interrupt-parent = <&gpio0>;
		interrupts = <RK_PD3 IRQ_TYPE_LEVEL_LOW>;
		pinctrl-0 = <&usbc0_int>;
		pinctrl-names = "default";
		vbus-supply = <&vbus5v0_typec>;

		connector {
			compatible = "usb-c-connector";
			data-role = "dual";
			label = "USB-C";
			power-role = "dual";
			try-power-role = "sink";
			source-pdos = <PDO_FIXED(5000, 2000, PDO_FIXED_USB_COMM)>;
			sink-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)>;
			op-sink-microwatt = <1000000>;
		};
	};

	hym8563: rtc@51 {
		compatible = "haoyu,hym8563";
		reg = <0x51>;
		#clock-cells = <0>;
		clock-output-names = "hym8563";
		pinctrl-names = "default";
		pinctrl-0 = <&hym8563_int>;
		interrupt-parent = <&gpio0>;
		interrupts = <RK_PB0 IRQ_TYPE_LEVEL_LOW>;
		wakeup-source;
	};
};

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

	rt5616: codec@1b {
		compatible = "realtek,rt5616";
		reg = <0x1b>;
		clocks = <&cru I2S0_8CH_MCLKOUT>;
		clock-names = "mclk";
		#sound-dai-cells = <0>;
		assigned-clocks = <&cru I2S0_8CH_MCLKOUT>;
		assigned-clock-rates = <12288000>;

		port {
			rt5616_p0_0: endpoint {
				remote-endpoint = <&i2s0_8ch_p0_0>;
			};
		};
	};

	/* connected with MIPI-CSI1 */
};

&i2c8 {
	pinctrl-0 = <&i2c8m2_xfer>;
};

&i2s0_8ch {
	pinctrl-names = "default";
	pinctrl-0 = <&i2s0_lrck
		     &i2s0_mclk
		     &i2s0_sclk
		     &i2s0_sdi0
		     &i2s0_sdo0>;
	status = "okay";

	i2s0_8ch_p0: port {
		i2s0_8ch_p0_0: endpoint {
			dai-format = "i2s";
			mclk-fs = <256>;
			remote-endpoint = <&rt5616_p0_0>;
		};
	};
};

&pcie2x1l0 {
	reset-gpios = <&gpio4 RK_PB3 GPIO_ACTIVE_HIGH>;
	vpcie3v3-supply = <&vcc_3v3_pcie20>;
	pinctrl-names = "default";
	pinctrl-0 = <&pcie2_0_rst>;
	status = "okay";
};

&pcie2x1l1 {
	reset-gpios = <&gpio4 RK_PA2 GPIO_ACTIVE_HIGH>;
	vpcie3v3-supply = <&vcc3v3_pcie2x1l0>;
	pinctrl-names = "default";
	pinctrl-0 = <&pcie2_1_rst>;
	status = "okay";
};

&pcie2x1l2 {
	reset-gpios = <&gpio4 RK_PA4 GPIO_ACTIVE_HIGH>;
	vpcie3v3-supply = <&vcc_3v3_pcie20>;
	pinctrl-names = "default";
	pinctrl-0 = <&pcie2_2_rst>;
	status = "okay";
};

&pcie30phy {
	status = "okay";
};

&pcie3x4 {
	reset-gpios = <&gpio4 RK_PB6 GPIO_ACTIVE_HIGH>;
	vpcie3v3-supply = <&vcc3v3_pcie30>;
	status = "okay";
};

&pinctrl {
	gpio-leds {
		sys_led_pin: sys-led-pin {
			rockchip,pins = <2 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>;
		};

		usr_led_pin: usr-led-pin {
			rockchip,pins = <2 RK_PC0 RK_FUNC_GPIO &pcfg_pull_none>;
		};
	};

	headphone {
		hp_det: hp-det {
			rockchip,pins = <1 RK_PC4 RK_FUNC_GPIO &pcfg_pull_none>;
		};
	};

	hym8563 {
		hym8563_int: hym8563-int {
			rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_up>;
		};
	};

	pcie {
		pcie2_0_rst: pcie2-0-rst {
			rockchip,pins = <4 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>;
		};

		pcie2_1_rst: pcie2-1-rst {
			rockchip,pins = <4 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
		};

		pcie2_2_rst: pcie2-2-rst {
			rockchip,pins = <4 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>;
		};

		pcie_m2_0_pwren: pcie-m20-pwren {
			rockchip,pins = <2 RK_PC5 RK_FUNC_GPIO &pcfg_pull_none>;
		};

		pcie_m2_1_pwren: pcie-m21-pwren {
			rockchip,pins = <4 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>;
		};
	};

	usb {
		typec5v_pwren: typec5v-pwren {
			rockchip,pins = <1 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
		};

		usbc0_int: usbc0-int {
			rockchip,pins = <0 RK_PD3 RK_FUNC_GPIO &pcfg_pull_up>;
		};
	};
};

&pwm1 {
	pinctrl-0 = <&pwm1m1_pins>;
	status = "okay";
};

&saradc {
	vref-supply = <&avcc_1v8_s0>;
	status = "okay";
};

&sdhci {
	bus-width = <8>;
	no-sdio;
	no-sd;
	non-removable;
	max-frequency = <200000000>;
	mmc-hs400-1_8v;
	mmc-hs400-enhanced-strobe;
	status = "okay";
};

&sdmmc {
	bus-width = <4>;
	cap-mmc-highspeed;
	cap-sd-highspeed;
	disable-wp;
	no-mmc;
	no-sdio;
	sd-uhs-sdr104;
	vmmc-supply = <&vcc_3v3_s3>;
	vqmmc-supply = <&vccio_sd_s0>;
	status = "okay";
};

&spi2 {
	status = "okay";
	assigned-clocks = <&cru CLK_SPI2>;
	assigned-clock-rates = <200000000>;
	pinctrl-names = "default";
	pinctrl-0 = <&spi2m2_cs0 &spi2m2_pins>;
	num-cs = <1>;

	pmic@0 {
		compatible = "rockchip,rk806";
		spi-max-frequency = <1000000>;
		reg = <0x0>;

		interrupt-parent = <&gpio0>;
		interrupts = <7 IRQ_TYPE_LEVEL_LOW>;

		pinctrl-names = "default";
		pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>,
			    <&rk806_dvs2_null>, <&rk806_dvs3_null>;

		system-power-controller;

		vcc1-supply = <&vcc4v0_sys>;
		vcc2-supply = <&vcc4v0_sys>;
		vcc3-supply = <&vcc4v0_sys>;
		vcc4-supply = <&vcc4v0_sys>;
		vcc5-supply = <&vcc4v0_sys>;
		vcc6-supply = <&vcc4v0_sys>;
		vcc7-supply = <&vcc4v0_sys>;
		vcc8-supply = <&vcc4v0_sys>;
		vcc9-supply = <&vcc4v0_sys>;
		vcc10-supply = <&vcc4v0_sys>;
		vcc11-supply = <&vcc_2v0_pldo_s3>;
		vcc12-supply = <&vcc4v0_sys>;
		vcc13-supply = <&vcc_1v1_nldo_s3>;
		vcc14-supply = <&vcc_1v1_nldo_s3>;
		vcca-supply = <&vcc4v0_sys>;

		gpio-controller;
		#gpio-cells = <2>;

		rk806_dvs1_null: dvs1-null-pins {
			pins = "gpio_pwrctrl1";
			function = "pin_fun0";
		};

		rk806_dvs2_null: dvs2-null-pins {
			pins = "gpio_pwrctrl2";
			function = "pin_fun0";
		};

		rk806_dvs3_null: dvs3-null-pins {
			pins = "gpio_pwrctrl3";
			function = "pin_fun0";
		};

		regulators {
			vdd_gpu_s0: vdd_gpu_mem_s0: dcdc-reg1 {
				regulator-boot-on;
				regulator-min-microvolt = <550000>;
				regulator-max-microvolt = <950000>;
				regulator-ramp-delay = <12500>;
				regulator-name = "vdd_gpu_s0";
				regulator-enable-ramp-delay = <400>;

				regulator-state-mem {
					regulator-off-in-suspend;
				};
			};

			vdd_cpu_lit_s0: vdd_cpu_lit_mem_s0: dcdc-reg2 {
				regulator-always-on;
				regulator-boot-on;
				regulator-min-microvolt = <550000>;
				regulator-max-microvolt = <950000>;
				regulator-ramp-delay = <12500>;
				regulator-name = "vdd_cpu_lit_s0";

				regulator-state-mem {
					regulator-off-in-suspend;
				};
			};

			vdd_log_s0: dcdc-reg3 {
				regulator-always-on;
				regulator-boot-on;
				regulator-min-microvolt = <675000>;
				regulator-max-microvolt = <750000>;
				regulator-ramp-delay = <12500>;
				regulator-name = "vdd_log_s0";

				regulator-state-mem {
					regulator-off-in-suspend;
					regulator-suspend-microvolt = <750000>;
				};
			};

			vdd_vdenc_s0: vdd_vdenc_mem_s0: dcdc-reg4 {
				regulator-always-on;
				regulator-boot-on;
				regulator-min-microvolt = <550000>;
				regulator-max-microvolt = <950000>;
				regulator-init-microvolt = <750000>;
				regulator-ramp-delay = <12500>;
				regulator-name = "vdd_vdenc_s0";

				regulator-state-mem {
					regulator-off-in-suspend;
				};
			};

			vdd_ddr_s0: dcdc-reg5 {
				regulator-always-on;
				regulator-boot-on;
				regulator-min-microvolt = <675000>;
				regulator-max-microvolt = <900000>;
				regulator-ramp-delay = <12500>;
				regulator-name = "vdd_ddr_s0";

				regulator-state-mem {
					regulator-off-in-suspend;
					regulator-suspend-microvolt = <850000>;
				};
			};

			vdd2_ddr_s3: dcdc-reg6 {
				regulator-always-on;
				regulator-boot-on;
				regulator-name = "vdd2_ddr_s3";

				regulator-state-mem {
					regulator-on-in-suspend;
				};
			};

			vcc_2v0_pldo_s3: dcdc-reg7 {
				regulator-always-on;
				regulator-boot-on;
				regulator-min-microvolt = <2000000>;
				regulator-max-microvolt = <2000000>;
				regulator-ramp-delay = <12500>;
				regulator-name = "vdd_2v0_pldo_s3";

				regulator-state-mem {
					regulator-on-in-suspend;
					regulator-suspend-microvolt = <2000000>;
				};
			};

			vcc_3v3_s3: dcdc-reg8 {
				regulator-always-on;
				regulator-boot-on;
				regulator-min-microvolt = <3300000>;
				regulator-max-microvolt = <3300000>;
				regulator-name = "vcc_3v3_s3";

				regulator-state-mem {
					regulator-on-in-suspend;
					regulator-suspend-microvolt = <3300000>;
				};
			};

			vddq_ddr_s0: dcdc-reg9 {
				regulator-always-on;
				regulator-boot-on;
				regulator-name = "vddq_ddr_s0";

				regulator-state-mem {
					regulator-off-in-suspend;
				};
			};

			vcc_1v8_s3: dcdc-reg10 {
				regulator-always-on;
				regulator-boot-on;
				regulator-min-microvolt = <1800000>;
				regulator-max-microvolt = <1800000>;
				regulator-name = "vcc_1v8_s3";

				regulator-state-mem {
					regulator-on-in-suspend;
					regulator-suspend-microvolt = <1800000>;
				};
			};

			avcc_1v8_s0: pldo-reg1 {
				regulator-always-on;
				regulator-boot-on;
				regulator-min-microvolt = <1800000>;
				regulator-max-microvolt = <1800000>;
				regulator-name = "avcc_1v8_s0";

				regulator-state-mem {
					regulator-off-in-suspend;
				};
			};

			vcc_1v8_s0: pldo-reg2 {
				regulator-always-on;
				regulator-boot-on;
				regulator-min-microvolt = <1800000>;
				regulator-max-microvolt = <1800000>;
				regulator-name = "vcc_1v8_s0";

				regulator-state-mem {
					regulator-off-in-suspend;
					regulator-suspend-microvolt = <1800000>;
				};
			};

			avdd_1v2_s0: pldo-reg3 {
				regulator-always-on;
				regulator-boot-on;
				regulator-min-microvolt = <1200000>;
				regulator-max-microvolt = <1200000>;
				regulator-name = "avdd_1v2_s0";

				regulator-state-mem {
					regulator-off-in-suspend;
				};
			};

			vcc_3v3_s0: pldo-reg4 {
				regulator-always-on;
				regulator-boot-on;
				regulator-min-microvolt = <3300000>;
				regulator-max-microvolt = <3300000>;
				regulator-ramp-delay = <12500>;
				regulator-name = "vcc_3v3_s0";

				regulator-state-mem {
					regulator-off-in-suspend;
				};
			};

			vccio_sd_s0: pldo-reg5 {
				regulator-always-on;
				regulator-boot-on;
				regulator-min-microvolt = <1800000>;
				regulator-max-microvolt = <3300000>;
				regulator-ramp-delay = <12500>;
				regulator-name = "vccio_sd_s0";

				regulator-state-mem {
					regulator-off-in-suspend;
				};
			};

			pldo6_s3: pldo-reg6 {
				regulator-always-on;
				regulator-boot-on;
				regulator-min-microvolt = <1800000>;
				regulator-max-microvolt = <1800000>;
				regulator-name = "pldo6_s3";

				regulator-state-mem {
					regulator-on-in-suspend;
					regulator-suspend-microvolt = <1800000>;
				};
			};

			vdd_0v75_s3: nldo-reg1 {
				regulator-always-on;
				regulator-boot-on;
				regulator-min-microvolt = <750000>;
				regulator-max-microvolt = <750000>;
				regulator-name = "vdd_0v75_s3";

				regulator-state-mem {
					regulator-on-in-suspend;
					regulator-suspend-microvolt = <750000>;
				};
			};

			vdd_ddr_pll_s0: nldo-reg2 {
				regulator-always-on;
				regulator-boot-on;
				regulator-min-microvolt = <850000>;
				regulator-max-microvolt = <850000>;
				regulator-name = "vdd_ddr_pll_s0";

				regulator-state-mem {
					regulator-off-in-suspend;
					regulator-suspend-microvolt = <850000>;
				};
			};

			avdd_0v75_s0: nldo-reg3 {
				regulator-always-on;
				regulator-boot-on;
				regulator-min-microvolt = <750000>;
				regulator-max-microvolt = <750000>;
				regulator-name = "avdd_0v75_s0";

				regulator-state-mem {
					regulator-off-in-suspend;
				};
			};

			vdd_0v85_s0: nldo-reg4 {
				regulator-always-on;
				regulator-boot-on;
				regulator-min-microvolt = <850000>;
				regulator-max-microvolt = <850000>;
				regulator-name = "vdd_0v85_s0";

				regulator-state-mem {
					regulator-off-in-suspend;
				};
			};

			vdd_0v75_s0: nldo-reg5 {
				regulator-always-on;
				regulator-boot-on;
				regulator-min-microvolt = <750000>;
				regulator-max-microvolt = <750000>;
				regulator-name = "vdd_0v75_s0";

				regulator-state-mem {
					regulator-off-in-suspend;
				};
			};
		};
	};
};

&tsadc {
	status = "okay";
};

&uart2 {
	pinctrl-0 = <&uart2m0_xfer>;
	status = "okay";
};

&u2phy2_host {
	status = "okay";
};

&u2phy3_host {
	status = "okay";
};

&u2phy2 {
	status = "okay";
};

&u2phy3 {
	status = "okay";
};

&usb_host0_ehci {
	status = "okay";
};

&usb_host0_ohci {
	status = "okay";
};

&usb_host1_ehci {
	status = "okay";
};

&usb_host1_ohci {
	status = "okay";
};
