^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) * Marvell 88PM860x Power Management IC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) Required parent device properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) - compatible : "marvell,88pm860x"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) - reg : the I2C slave address for the 88pm860x chip
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) - interrupts : IRQ line for the 88pm860x chip
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) - interrupt-controller: describes the 88pm860x as an interrupt controller (has its own domain)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) - #interrupt-cells : should be 1.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) - The cell is the 88pm860x local IRQ number
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) Optional parent device properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) - marvell,88pm860x-irq-read-clr: inicates whether interrupt status is cleared by read
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) - marvell,88pm860x-slave-addr: 88pm860x are two chips solution. <reg> stores the I2C address
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) of one chip, and this property stores the I2C address of
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) another chip.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) 88pm860x consists of a large and varied group of sub-devices:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) Device Supply Names Description
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) ------ ------------ -----------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) 88pm860x-onkey : : On key
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) 88pm860x-rtc : : RTC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) 88pm8607 : : Regulators
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) 88pm860x-backlight : : Backlight
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) 88pm860x-led : : Led
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) 88pm860x-touch : : Touchscreen
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) Example:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) pmic: 88pm860x@34 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) compatible = "marvell,88pm860x";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) reg = <0x34>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) interrupts = <4>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) interrupt-parent = <&intc>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) interrupt-controller;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) #interrupt-cells = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) marvell,88pm860x-irq-read-clr;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) marvell,88pm860x-slave-addr = <0x11>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) regulators {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) BUCK1 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) regulator-min-microvolt = <1000000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) regulator-max-microvolt = <1500000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) regulator-boot-on;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) regulator-always-on;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) LDO1 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) regulator-min-microvolt = <1200000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) regulator-max-microvolt = <2800000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) regulator-boot-on;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) regulator-always-on;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) rtc {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) marvell,88pm860x-vrtc = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) touch {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) marvell,88pm860x-gpadc-prebias = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) marvell,88pm860x-gpadc-slot-cycle = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) marvell,88pm860x-tsi-prebias = <6>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) marvell,88pm860x-pen-prebias = <16>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) marvell,88pm860x-pen-prechg = <2>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) marvell,88pm860x-resistor-X = <300>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) backlights {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) backlight-0 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) marvell,88pm860x-iset = <4>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) marvell,88pm860x-pwm = <3>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) backlight-2 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) leds {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) led0-red {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) marvell,88pm860x-iset = <12>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) led0-green {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) marvell,88pm860x-iset = <12>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) led0-blue {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) marvell,88pm860x-iset = <12>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85) };