// SPDX-License-Identifier: (GPL-2.0+ OR MIT) /* * Spreadtrum SC2731 PMIC dts file * * Copyright (C) 2018, Spreadtrum Communications Inc. */ &adi_bus { sc2731_pmic: pmic@0 { compatible = "sprd,sc2731"; reg = <0>; spi-max-frequency = <26000000>; interrupts = ; interrupt-controller; #interrupt-cells = <1>; #address-cells = <1>; #size-cells = <0>; charger@0 { compatible = "sprd,sc2731-charger"; reg = <0x0>; monitored-battery = <&bat>; }; led-controller@200 { compatible = "sprd,sc2731-bltc"; reg = <0x200>; #address-cells = <1>; #size-cells = <0>; led@0 { label = "red"; reg = <0x0>; }; led@1 { label = "green"; reg = <0x1>; }; led@2 { label = "blue"; reg = <0x2>; }; }; rtc@280 { compatible = "sprd,sc2731-rtc"; reg = <0x280>; interrupt-parent = <&sc2731_pmic>; interrupts = <2>; }; pmic_eic: gpio@300 { compatible = "sprd,sc2731-eic"; reg = <0x300>; interrupt-parent = <&sc2731_pmic>; interrupts = <5>; gpio-controller; #gpio-cells = <2>; interrupt-controller; #interrupt-cells = <2>; }; efuse@380 { compatible = "sprd,sc2731-efuse"; reg = <0x380>; #address-cells = <1>; #size-cells = <1>; hwlocks = <&hwlock 12>; fgu_calib: calib@6 { reg = <0x6 0x2>; bits = <0 9>; }; adc_big_scale: calib@24 { reg = <0x24 0x2>; }; adc_small_scale: calib@26 { reg = <0x26 0x2>; }; }; pmic_adc: adc@480 { compatible = "sprd,sc2731-adc"; reg = <0x480>; interrupt-parent = <&sc2731_pmic>; interrupts = <0>; #io-channel-cells = <1>; hwlocks = <&hwlock 4>; nvmem-cell-names = "big_scale_calib", "small_scale_calib"; nvmem-cells = <&adc_big_scale>, <&adc_small_scale>; }; fuel-gauge@a00 { compatible = "sprd,sc2731-fgu"; reg = <0xa00>; bat-detect-gpio = <&pmic_eic 9 GPIO_ACTIVE_HIGH>; io-channels = <&pmic_adc 3>, <&pmic_adc 6>; io-channel-names = "bat-temp", "charge-vol"; monitored-battery = <&bat>; nvmem-cell-names = "fgu_calib"; nvmem-cells = <&fgu_calib>; interrupt-parent = <&sc2731_pmic>; interrupts = <4>; }; vibrator@ec8 { compatible = "sprd,sc2731-vibrator"; reg = <0xec8>; }; regulators { compatible = "sprd,sc2731-regulator"; vddarm0: BUCK_CPU0 { regulator-name = "vddarm0"; regulator-min-microvolt = <400000>; regulator-max-microvolt = <1996875>; regulator-ramp-delay = <25000>; regulator-always-on; }; vddarm1: BUCK_CPU1 { regulator-name = "vddarm1"; regulator-min-microvolt = <400000>; regulator-max-microvolt = <1996875>; regulator-ramp-delay = <25000>; regulator-always-on; }; dcdcrf: BUCK_RF { regulator-name = "dcdcrf"; regulator-min-microvolt = <600000>; regulator-max-microvolt = <2196875>; regulator-ramp-delay = <25000>; regulator-enable-ramp-delay = <100>; regulator-always-on; }; vddcama0: LDO_CAMA0 { regulator-name = "vddcama0"; regulator-min-microvolt = <1200000>; regulator-max-microvolt = <3750000>; regulator-enable-ramp-delay = <100>; }; vddcama1: LDO_CAMA1 { regulator-name = "vddcama1"; regulator-min-microvolt = <1200000>; regulator-max-microvolt = <3750000>; regulator-enable-ramp-delay = <100>; regulator-ramp-delay = <25000>; }; vddcammot: LDO_CAMMOT { regulator-name = "vddcammot"; regulator-min-microvolt = <1200000>; regulator-max-microvolt = <3750000>; regulator-enable-ramp-delay = <100>; regulator-ramp-delay = <25000>; }; vddvldo: LDO_VLDO { regulator-name = "vddvldo"; regulator-min-microvolt = <1200000>; regulator-max-microvolt = <3750000>; regulator-enable-ramp-delay = <100>; regulator-ramp-delay = <25000>; }; vddemmccore: LDO_EMMCCORE { regulator-name = "vddemmccore"; regulator-min-microvolt = <1200000>; regulator-max-microvolt = <3750000>; regulator-enable-ramp-delay = <100>; regulator-ramp-delay = <25000>; regulator-boot-on; }; vddsdcore: LDO_SDCORE { regulator-name = "vddsdcore"; regulator-min-microvolt = <1200000>; regulator-max-microvolt = <3750000>; regulator-enable-ramp-delay = <100>; regulator-ramp-delay = <25000>; }; vddsdio: LDO_SDIO { regulator-name = "vddsdio"; regulator-min-microvolt = <1200000>; regulator-max-microvolt = <3750000>; regulator-enable-ramp-delay = <100>; regulator-ramp-delay = <25000>; }; vddwifipa: LDO_WIFIPA { regulator-name = "vddwifipa"; regulator-min-microvolt = <1200000>; regulator-max-microvolt = <3750000>; regulator-enable-ramp-delay = <100>; regulator-ramp-delay = <25000>; }; vddusb33: LDO_USB33 { regulator-name = "vddusb33"; regulator-min-microvolt = <1200000>; regulator-max-microvolt = <3750000>; regulator-enable-ramp-delay = <100>; regulator-ramp-delay = <25000>; }; vddcamd0: LDO_CAMD0 { regulator-name = "vddcamd0"; regulator-min-microvolt = <1000000>; regulator-max-microvolt = <1793750>; regulator-enable-ramp-delay = <100>; regulator-ramp-delay = <25000>; }; vddcamd1: LDO_CAMD1 { regulator-name = "vddcamd1"; regulator-min-microvolt = <1000000>; regulator-max-microvolt = <1793750>; regulator-enable-ramp-delay = <100>; regulator-ramp-delay = <25000>; }; vddcon: LDO_CON { regulator-name = "vddcon"; regulator-min-microvolt = <1000000>; regulator-max-microvolt = <1793750>; regulator-enable-ramp-delay = <100>; regulator-ramp-delay = <25000>; }; vddcamio: LDO_CAMIO { regulator-name = "vddcamio"; regulator-min-microvolt = <1000000>; regulator-max-microvolt = <1793750>; regulator-enable-ramp-delay = <100>; regulator-ramp-delay = <25000>; }; vddsram: LDO_SRAM { regulator-name = "vddsram"; regulator-min-microvolt = <1000000>; regulator-max-microvolt = <1793750>; regulator-enable-ramp-delay = <100>; regulator-ramp-delay = <25000>; regulator-always-on; }; }; }; };