| // SPDX-License-Identifier: GPL-2.0-only |
| /* |
| * Common CPCAP configuration used on Motorola phones |
| */ |
| |
| &mcspi1 { |
| cpcap: pmic@0 { |
| compatible = "motorola,cpcap", "st,6556002"; |
| reg = <0>; /* cs0 */ |
| interrupt-parent = <&gpio1>; |
| interrupts = <7 IRQ_TYPE_LEVEL_HIGH>; |
| interrupt-controller; |
| #interrupt-cells = <2>; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| spi-max-frequency = <9600000>; |
| spi-cs-high; |
| spi-cpol; |
| spi-cpha; |
| |
| cpcap_adc: adc { |
| compatible = "motorola,mapphone-cpcap-adc"; |
| interrupts-extended = <&cpcap 8 0>; |
| interrupt-names = "adcdone"; |
| #io-channel-cells = <1>; |
| }; |
| |
| cpcap_battery: battery { |
| compatible = "motorola,cpcap-battery"; |
| interrupts-extended = |
| <&cpcap 6 0>, <&cpcap 5 0>, <&cpcap 3 0>, |
| <&cpcap 20 0>, <&cpcap 54 0>, <&cpcap 57 0>; |
| interrupt-names = |
| "eol", "lowbph", "lowbpl", |
| "chrgcurr1", "battdetb", "cccal"; |
| io-channels = <&cpcap_adc 0>, <&cpcap_adc 1>, |
| <&cpcap_adc 5>, <&cpcap_adc 6>; |
| io-channel-names = "battdetb", "battp", |
| "chg_isense", "batti"; |
| power-supplies = <&cpcap_charger>; |
| }; |
| |
| cpcap_charger: charger { |
| compatible = "motorola,mapphone-cpcap-charger"; |
| interrupts-extended = |
| <&cpcap 13 0>, <&cpcap 12 0>, <&cpcap 29 0>, |
| <&cpcap 28 0>, <&cpcap 22 0>, <&cpcap 21 0>, |
| <&cpcap 20 0>, <&cpcap 19 0>, <&cpcap 54 0>; |
| interrupt-names = |
| "chrg_det", "rvrs_chrg", "chrg_se1b", |
| "se0conn", "rvrs_mode", "chrgcurr2", |
| "chrgcurr1", "vbusvld", "battdetb"; |
| mode-gpios = <&gpio3 29 GPIO_ACTIVE_LOW>, |
| <&gpio3 23 GPIO_ACTIVE_LOW>; |
| io-channels = <&cpcap_adc 0>, <&cpcap_adc 1>, |
| <&cpcap_adc 2>, <&cpcap_adc 5>, |
| <&cpcap_adc 6>; |
| io-channel-names = "battdetb", "battp", |
| "vbus", "chg_isense", |
| "batti"; |
| }; |
| |
| cpcap_regulator: regulator { |
| compatible = "motorola,mapphone-cpcap-regulator"; |
| |
| cpcap_regulators: regulators { |
| }; |
| }; |
| |
| cpcap_audio: audio-codec { |
| #sound-dai-cells = <1>; |
| |
| port@0 { |
| cpcap_audio_codec0: endpoint { |
| }; |
| }; |
| port@1 { |
| cpcap_audio_codec1: endpoint { |
| }; |
| }; |
| }; |
| |
| cpcap_rtc: rtc { |
| compatible = "motorola,cpcap-rtc"; |
| |
| interrupt-parent = <&cpcap>; |
| interrupts = <39 IRQ_TYPE_NONE>, <26 IRQ_TYPE_NONE>; |
| }; |
| |
| power_button: button { |
| compatible = "motorola,cpcap-pwrbutton"; |
| |
| interrupts = <23 IRQ_TYPE_NONE>; |
| }; |
| |
| cpcap_usb2_phy: phy { |
| compatible = "motorola,mapphone-cpcap-usb-phy"; |
| pinctrl-0 = <&usb_gpio_mux_sel1>, <&usb_gpio_mux_sel2>; |
| pinctrl-1 = <&usb_ulpi_pins>; |
| pinctrl-2 = <&usb_utmi_pins>; |
| pinctrl-3 = <&uart3_pins>; |
| pinctrl-names = "default", "ulpi", "utmi", "uart"; |
| #phy-cells = <0>; |
| interrupts-extended = |
| <&cpcap 15 0>, <&cpcap 14 0>, <&cpcap 28 0>, |
| <&cpcap 19 0>, <&cpcap 18 0>, <&cpcap 17 0>, |
| <&cpcap 16 0>, <&cpcap 49 0>, <&cpcap 48 0>; |
| interrupt-names = |
| "id_ground", "id_float", "se0conn", |
| "vbusvld", "sessvld", "sessend", |
| "se1", "dm", "dp"; |
| mode-gpios = <&gpio2 28 GPIO_ACTIVE_HIGH>, |
| <&gpio1 0 GPIO_ACTIVE_HIGH>; |
| io-channels = <&cpcap_adc 2>, <&cpcap_adc 7>; |
| io-channel-names = "vbus", "id"; |
| vusb-supply = <&vusb>; |
| }; |
| |
| led_red: led-red { |
| compatible = "motorola,cpcap-led-red"; |
| vdd-supply = <&sw5>; |
| label = "status-led:red"; |
| }; |
| |
| led_green: led-green { |
| compatible = "motorola,cpcap-led-green"; |
| vdd-supply = <&sw5>; |
| label = "status-led:green"; |
| }; |
| |
| led_blue: led-blue { |
| compatible = "motorola,cpcap-led-blue"; |
| vdd-supply = <&sw5>; |
| label = "status-led:blue"; |
| }; |
| |
| led_adl: led-adl { |
| compatible = "motorola,cpcap-led-adl"; |
| vdd-supply = <&sw5>; |
| label = "button-backlight"; |
| }; |
| |
| led_cp: led-cp { |
| compatible = "motorola,cpcap-led-cp"; |
| vdd-supply = <&sw5>; |
| label = "shift-key-light"; |
| }; |
| }; |
| }; |
| |
| &cpcap_regulators { |
| sw5: SW5 { |
| regulator-min-microvolt = <5050000>; |
| regulator-max-microvolt = <5050000>; |
| regulator-enable-ramp-delay = <50000>; |
| regulator-boot-on; |
| }; |
| |
| vcam: VCAM { |
| regulator-min-microvolt = <2900000>; |
| regulator-max-microvolt = <2900000>; |
| regulator-enable-ramp-delay = <1000>; |
| }; |
| |
| /* Used by DSS and is the "zerov_regulator" trigger for SoC off mode */ |
| vcsi: VCSI { |
| regulator-min-microvolt = <1800000>; |
| regulator-max-microvolt = <1800000>; |
| regulator-enable-ramp-delay = <1000>; |
| regulator-always-on; |
| }; |
| |
| vdac: VDAC { |
| regulator-min-microvolt = <1800000>; |
| regulator-max-microvolt = <1800000>; |
| regulator-enable-ramp-delay = <1000>; |
| }; |
| |
| vdig: VDIG { |
| regulator-min-microvolt = <1875000>; |
| regulator-max-microvolt = <1875000>; |
| regulator-enable-ramp-delay = <1000>; |
| }; |
| |
| vfuse: VFUSE { |
| regulator-min-microvolt = <1500000>; |
| regulator-max-microvolt = <3150000>; |
| regulator-enable-ramp-delay = <1000>; |
| }; |
| |
| vhvio: VHVIO { |
| regulator-min-microvolt = <2775000>; |
| regulator-max-microvolt = <2775000>; |
| regulator-enable-ramp-delay = <1000>; |
| regulator-always-on; |
| }; |
| |
| /* Used by eMMC at mmc2 */ |
| vsdio: VSDIO { |
| regulator-min-microvolt = <2900000>; |
| regulator-max-microvolt = <2900000>; |
| regulator-enable-ramp-delay = <1000>; |
| }; |
| |
| vpll: VPLL { |
| regulator-min-microvolt = <1200000>; |
| regulator-max-microvolt = <1800000>; |
| regulator-enable-ramp-delay = <100>; |
| }; |
| |
| vrf1: VRF1 { |
| regulator-min-microvolt = <2775000>; |
| regulator-max-microvolt = <2775000>; |
| regulator-enable-ramp-delay = <1000>; |
| }; |
| |
| vrf2: VRF2 { |
| regulator-min-microvolt = <2775000>; |
| regulator-max-microvolt = <2775000>; |
| regulator-enable-ramp-delay = <1000>; |
| }; |
| |
| vrfref: VRFREF { |
| regulator-min-microvolt = <2500000>; |
| regulator-max-microvolt = <2775000>; |
| regulator-enable-ramp-delay = <100>; |
| }; |
| |
| vwlan1: VWLAN1 { |
| regulator-min-microvolt = <1800000>; |
| regulator-max-microvolt = <1900000>; |
| regulator-enable-ramp-delay = <1000>; |
| }; |
| |
| /* Used by micro-SDIO at mmc1 */ |
| vwlan2: VWLAN2 { |
| regulator-min-microvolt = <3000000>; |
| regulator-max-microvolt = <3000000>; |
| regulator-enable-ramp-delay = <1000>; |
| }; |
| |
| vsim: VSIM { |
| regulator-min-microvolt = <1800000>; |
| regulator-max-microvolt = <2900000>; |
| regulator-enable-ramp-delay = <1000>; |
| }; |
| |
| vsimcard: VSIMCARD { |
| regulator-min-microvolt = <1800000>; |
| regulator-max-microvolt = <2900000>; |
| regulator-enable-ramp-delay = <1000>; |
| }; |
| |
| vvib: VVIB { |
| regulator-min-microvolt = <1300000>; |
| regulator-max-microvolt = <3000000>; |
| regulator-enable-ramp-delay = <500>; |
| }; |
| |
| vusb: VUSB { |
| regulator-min-microvolt = <3300000>; |
| regulator-max-microvolt = <3300000>; |
| regulator-enable-ramp-delay = <1000>; |
| }; |
| |
| vaudio: VAUDIO { |
| regulator-min-microvolt = <2775000>; |
| regulator-max-microvolt = <2775000>; |
| regulator-enable-ramp-delay = <1000>; |
| regulator-initial-mode = <0x00>; /* NORMAL */ |
| }; |
| }; |