#include #include #include / { i2c@7000d000 { as3722: as3722@40 { compatible = "ams,as3722"; reg = <0x40>; interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>; #interrupt-cells = <2>; interrupt-controller; gpio-controller; #gpio-cells = <2>; ams,major-rev = <1>; ams,minor-rev = <2>; ams,system-power-controller; ams,extcon-name = "as3722-extcon"; ams,enable-adc1-continuous-mode; ams,enable-low-voltage-range; ams,adc-channel = <12>; ams,hi-threshold = <256>; ams,low-threshold = <128>; ams,enable-clock32k-out; ams,backup-battery-chargable; ams,battery-backup-charge-current = ; ams,battery-backup-enable-bypass; ams,battery-backup-charge-mode = ; pinctrl-names = "default"; pinctrl-0 = <&as3722_default>; as3722_default: pinmux@0 { gpio2_7 { pins = "gpio2", /* PWR_EN_+V3.3 */ "gpio7"; /* +V1.6_LPO */ function = "gpio"; bias-pull-up; }; gpio1_3_4_5_6 { pins = "gpio1", "gpio3", "gpio4", "gpio5", "gpio6"; bias-high-impedance; }; }; regulators { compatible = "ams,as3722"; ldo0-in-supply = <&as3722_sd2>; ldo2-in-supply = <&as3722_sd5>; ldo5-in-supply = <&as3722_sd5>; ldo7-in-supply = <&as3722_sd5>; as3722_sd0: sd0 { regulator-name = "+VDD_CPU_AP"; regulator-min-microvolt = <650000>; regulator-max-microvolt = <1400000>; regulator-min-microamp = <3500000>; regulator-max-microamp = <3500000>; regulator-always-on; regulator-boot-on; ams,ext-control = ; consumers { c1 { regulator-consumer-supply = "vdd_cpu"; }; }; }; as3722_sd1: sd1 { regulator-name = "+VDD_CORE"; regulator-min-microvolt = <700000>; regulator-max-microvolt = <1350000>; regulator-min-microamp = <3500000>; regulator-max-microamp = <3500000>; regulator-init-microvolt = <1150000>; regulator-always-on; regulator-boot-on; ams,ext-control = ; consumers { c1 { regulator-consumer-supply = "vdd_core"; }; }; }; as3722_sd2: sd2 { regulator-name = "+V1.35_VDDIO_DDR(sd2)"; regulator-min-microvolt = <1350000>; regulator-max-microvolt = <1350000>; regulator-always-on; regulator-boot-on; consumers { c1 { regulator-consumer-supply = "vddio_ddr"; }; c2 { regulator-consumer-supply = "vddio_ddr_mclk"; }; c3 { regulator-consumer-supply = "vddio_ddr3"; }; c4 { regulator-consumer-supply = "vcore1_ddr3"; }; }; }; as3722_sd4: sd4 { regulator-name = "+V1.05"; regulator-min-microvolt = <1050000>; regulator-max-microvolt = <1050000>; consumers { c1 { regulator-consumer-supply = "avdd_pex_pll"; regulator-consumer-device = "tegra-pcie"; }; c2 { regulator-consumer-supply = "avddio_pex_pll"; regulator-consumer-device = "tegra-pcie"; }; c3 { regulator-consumer-supply = "dvddio_pex"; regulator-consumer-device = "tegra-pcie"; }; c4 { regulator-consumer-supply = "pwrdet_pex_ctl"; regulator-consumer-device = "tegra-pcie"; }; c5 { regulator-consumer-supply = "avdd_sata"; }; c6 { regulator-consumer-supply = "vdd_sata"; }; c7 { regulator-consumer-supply = "avdd_sata_pll"; }; c8 { regulator-consumer-supply = "avddio_usb"; regulator-consumer-device = "tegra-xhci"; }; c9 { regulator-consumer-supply = "avdd_hdmi"; regulator-consumer-device = "tegradc.1"; }; c10 { regulator-consumer-supply = "avdd_hdmi"; regulator-consumer-device = "tegradc.0"; }; }; }; as3722_sd5: sd5 { regulator-name = "+V1.8"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; regulator-always-on; regulator-boot-on; consumers { c1 { regulator-consumer-supply = "vddio_sys"; }; c2 { regulator-consumer-supply = "vddio_sys_2"; }; c3 { regulator-consumer-supply = "vddio_audio"; }; c4 { regulator-consumer-supply = "pwrdet_audio"; }; c5 { regulator-consumer-supply = "vdd_1v8_emmc"; }; c6 { regulator-consumer-supply = "vddio_sdmmc"; regulator-consumer-device = "sdhci-tegra.3"; }; c7 { regulator-consumer-supply = "pwrdet_sdmmc4"; }; c8 { regulator-consumer-supply = "vddio_uart"; }; c9 { regulator-consumer-supply = "pwrdet_uart"; }; c10 { regulator-consumer-supply = "vddio_bb"; }; c11 { regulator-consumer-supply = "pwrdet_bb"; }; c12 { regulator-consumer-supply = "vddio_gmi"; }; c13 { regulator-consumer-supply = "pwrdet_nand"; }; c14 { regulator-consumer-supply = "avdd_osc"; }; c15 { /* LVDS */ regulator-consumer-supply = "dvdd_lcd"; }; c16 { /* LVDS */ regulator-consumer-supply = "vdd_ds_1v8"; }; c17 { regulator-consumer-supply = "VDDD"; regulator-consumer-device = "4-000a"; }; c18 { regulator-consumer-supply = "VDDIO"; regulator-consumer-device = "4-000a"; }; c19 { regulator-consumer-supply = "vdd_1v8_sensor"; }; c20 { regulator-consumer-supply = "vdd_1v8_sdmmc"; }; c21 { regulator-consumer-supply = "vdd_kp_1v8"; }; c22 { regulator-consumer-supply = "vdd_tp_1v8"; }; c23 { regulator-consumer-supply = "dvdd"; regulator-consumer-device = "spi0.0"; }; c24 { regulator-consumer-supply = "vlogic"; regulator-consumer-device = "0-0069"; }; c25 { regulator-consumer-supply = "avdd_pll_utmip"; regulator-consumer-device = "tegra-udc.0"; }; c26 { regulator-consumer-supply = "avdd_pll_utmip"; regulator-consumer-device = "tegra-ehci.0"; }; c27 { regulator-consumer-supply = "avdd_pll_utmip"; regulator-consumer-device = "tegra-ehci.1"; }; c28 { regulator-consumer-supply = "avdd_pll_utmip"; regulator-consumer-device = "tegra-ehci.2"; }; c29 { regulator-consumer-supply = "avdd_pll_utmip"; regulator-consumer-device = "tegra-xhci"; }; }; }; as3722_sd6: sd6 { regulator-name = "+VDD_GPU_AP"; regulator-min-microvolt = <650000>; regulator-max-microvolt = <1200000>; regulator-min-microamp = <3500000>; regulator-max-microamp = <3500000>; regulator-init-microvolt = <1000000>; regulator-boot-on; regulator-always-on; consumers { c1 { regulator-consumer-supply = "vdd_gpu"; }; c2 { regulator-consumer-supply = "vdd_gpu_simon"; }; }; }; as3722_ldo0: ldo0 { regulator-name = "+V1.05_AVDD"; regulator-min-microvolt = <1050000>; regulator-max-microvolt = <1050000>; regulator-boot-on; regulator-always-on; ams,ext-control = ; consumers { c1 { regulator-consumer-supply = "avdd_pll_m"; }; c2 { regulator-consumer-supply = "avdd_pll_ap_c2_c3"; }; c3 { regulator-consumer-supply = "avdd_pll_cud2dpd"; }; c4 { regulator-consumer-supply = "avdd_pll_c4"; }; c5 { regulator-consumer-supply = "avdd_lvds0_io"; }; c6 { regulator-consumer-supply = "vddio_ddr_hs"; }; c7 { regulator-consumer-supply = "avdd_pll_erefe"; }; c8 { regulator-consumer-supply = "avdd_pll_x"; }; c9 { regulator-consumer-supply = "avdd_pll_cg"; }; }; }; as3722_ldo1: ldo1 { regulator-name = "VDDIO_SDMMC1"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <3300000>; consumers { c1 { regulator-consumer-supply = "vddio_sdmmc"; regulator-consumer-device = "sdhci-tegra.0"; }; c2 { regulator-consumer-supply = "pwrdet_sdmmc1"; }; }; }; as3722_ldo2: ldo2 { regulator-name = "+V1.2"; regulator-min-microvolt = <1200000>; regulator-max-microvolt = <1200000>; regulator-boot-on; regulator-always-on; consumers { c1 { regulator-consumer-supply = "vddio_hsic"; regulator-consumer-device = "tegra-ehci.1"; }; c2 { regulator-consumer-supply = "vddio_hsic"; regulator-consumer-device = "tegra-ehci.2"; }; c3 { regulator-consumer-supply = "vddio_hsic"; regulator-consumer-device = "tegra-xhci"; }; c4 { regulator-consumer-supply = "avdd_dsi_csi"; regulator-consumer-device = "tegradc.0"; }; c5 { regulator-consumer-supply = "avdd_dsi_csi"; regulator-consumer-device = "tegradc.1"; }; c6 { regulator-consumer-supply = "avdd_dsi_csi"; regulator-consumer-device = "vi.0"; }; c7 { regulator-consumer-supply = "avdd_dsi_csi"; regulator-consumer-device = "vi.1"; }; c8 { regulator-consumer-supply = "pwrdet_mipi"; }; c9 { regulator-consumer-supply = "avdd_hsic_com"; }; c10 { regulator-consumer-supply = "avdd_hsic_mdm"; }; c11 { regulator-consumer-supply = "vdig_csi"; regulator-consumer-device = "2-0036"; }; c12 { /* panel-a-1080p-14-0.c */ regulator-consumer-supply = "vdd_1v2_en"; }; }; }; as3722_ldo3: ldo3 { regulator-name = "+V1.05_RTC"; regulator-min-microvolt = <1000000>; regulator-max-microvolt = <1000000>; regulator-boot-on; regulator-always-on; ams,enable-tracking; ams,disable-tracking-suspend; consumers { c1 { regulator-consumer-supply = "vdd_rtc"; }; }; }; /* 1.8V for LVDS, 3.3V for eDP */ as3722_ldo4: ldo4 { regulator-name = "AVDD_LVDS0_PLL"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <3300000>; regulator-init-microvolt = <1800000>; consumers { c1 { regulator-consumer-supply = "avdd_lvds0_pll"; }; c2 { regulator-consumer-supply = "avdd_3v3_dp"; }; c3 { regulator-consumer-supply = "avdd_lcd"; }; }; }; /* LDO5 not used */ as3722_ldo6: ldo6 { regulator-name = "VDDIO_SDMMC3"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <3300000>; consumers { c1 { regulator-consumer-supply = "vddio_sdmmc"; regulator-consumer-device = "sdhci-tegra.2"; }; c2 { regulator-consumer-supply = "pwrdet_sdmmc3"; }; }; }; /* LDO7 not used */ as3722_ldo9: ldo9 { regulator-name = "+V3.3_ETH(ldo9)"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; consumers { c1 { regulator-consumer-supply = "i210_vdd3p3_ldo9"; regulator-consumer-device = "pcie-controller.1"; }; }; }; as3722_ldo10: ldo10 { regulator-name = "+V3.3_ETH(ldo10)"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; consumers { c1 { regulator-consumer-supply = "i210_vdd3p3_ldo10"; regulator-consumer-device = "pcie-controller.1"; }; }; }; as3722_ldo11: ldo11 { regulator-name = "+V1.8_VPP_FUSE"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; }; }; }; }; /* Populate fuse supply */ efuse@7000f800 { vpp_fuse-supply = <&as3722_ldo11>; }; };