19f7c7ceeSCharles KeepaxCirrus Logic/Wolfson Microelectronics wm831x PMICs 29f7c7ceeSCharles Keepax 39f7c7ceeSCharles KeepaxSystem PMICs with a wide range of additional features. 49f7c7ceeSCharles Keepax 59f7c7ceeSCharles KeepaxRequired properties: 69f7c7ceeSCharles Keepax 79f7c7ceeSCharles Keepax - compatible : One of the following chip-specific strings: 89f7c7ceeSCharles Keepax "wlf,wm8310" 99f7c7ceeSCharles Keepax "wlf,wm8311" 109f7c7ceeSCharles Keepax "wlf,wm8312" 119f7c7ceeSCharles Keepax "wlf,wm8320" 129f7c7ceeSCharles Keepax "wlf,wm8321" 139f7c7ceeSCharles Keepax "wlf,wm8325" 149f7c7ceeSCharles Keepax "wlf,wm8326" 159f7c7ceeSCharles Keepax 169f7c7ceeSCharles Keepax - reg : I2C slave address when connected using I2C, chip select number 179f7c7ceeSCharles Keepax when using SPI. 189f7c7ceeSCharles Keepax 199f7c7ceeSCharles Keepax - gpio-controller : Indicates this device is a GPIO controller. 209f7c7ceeSCharles Keepax - #gpio-cells : Must be 2. The first cell is the pin number and the 219f7c7ceeSCharles Keepax second cell is used to specify optional parameters (currently unused). 229f7c7ceeSCharles Keepax 239f7c7ceeSCharles Keepax - interrupts : The interrupt line the IRQ signal for the device is 249f7c7ceeSCharles Keepax connected to. 259f7c7ceeSCharles Keepax 269f7c7ceeSCharles Keepax - interrupt-controller : wm831x devices contain interrupt controllers and 279f7c7ceeSCharles Keepax may provide interrupt services to other devices. 289f7c7ceeSCharles Keepax - #interrupt-cells: Must be 2. The first cell is the IRQ number, and the 299f7c7ceeSCharles Keepax second cell is the flags, encoded as the trigger masks from 309f7c7ceeSCharles Keepax ../interrupt-controller/interrupts.txt 319f7c7ceeSCharles Keepax 329f7c7ceeSCharles KeepaxOptional sub-nodes: 33626b6cd5SBaolin Wang - phys : Contains a phandle to the USB PHY. 349f7c7ceeSCharles Keepax - regulators : Contains sub-nodes for each of the regulators supplied by 359f7c7ceeSCharles Keepax the device. The regulators are bound using their names listed below: 369f7c7ceeSCharles Keepax 379f7c7ceeSCharles Keepax dcdc1 : DCDC1 389f7c7ceeSCharles Keepax dcdc2 : DCDC2 399f7c7ceeSCharles Keepax dcdc3 : DCDC3 409f7c7ceeSCharles Keepax dcdc4 : DCDC3 419f7c7ceeSCharles Keepax isink1 : ISINK1 429f7c7ceeSCharles Keepax isink2 : ISINK2 439f7c7ceeSCharles Keepax ldo1 : LDO1 449f7c7ceeSCharles Keepax ldo2 : LDO2 459f7c7ceeSCharles Keepax ldo3 : LDO3 469f7c7ceeSCharles Keepax ldo4 : LDO4 479f7c7ceeSCharles Keepax ldo5 : LDO5 489f7c7ceeSCharles Keepax ldo7 : LDO7 499f7c7ceeSCharles Keepax ldo11 : LDO11 509f7c7ceeSCharles Keepax 519f7c7ceeSCharles Keepax The bindings details of each regulator can be found in: 529f7c7ceeSCharles Keepax ../regulator/regulator.txt 539f7c7ceeSCharles Keepax 549f7c7ceeSCharles KeepaxExample: 559f7c7ceeSCharles Keepax 569f7c7ceeSCharles Keepaxwm8310: pmic@36 { 579f7c7ceeSCharles Keepax compatible = "wlf,wm8310"; 589f7c7ceeSCharles Keepax reg = <0x36>; 599f7c7ceeSCharles Keepax 609f7c7ceeSCharles Keepax gpio-controller; 619f7c7ceeSCharles Keepax #gpio-cells = <2>; 629f7c7ceeSCharles Keepax 639f7c7ceeSCharles Keepax interrupts = <347>; 649f7c7ceeSCharles Keepax interrupt-parent = <&gic>; 659f7c7ceeSCharles Keepax 669f7c7ceeSCharles Keepax interrupt-controller; 679f7c7ceeSCharles Keepax #interrupt-cells = <2>; 689f7c7ceeSCharles Keepax 699f7c7ceeSCharles Keepax regulators { 709f7c7ceeSCharles Keepax dcdc1: dcdc1 { 719f7c7ceeSCharles Keepax regulator-name = "DCDC1"; 729f7c7ceeSCharles Keepax regulator-min-microvolt = <600000>; 739f7c7ceeSCharles Keepax regulator-max-microvolt = <600000>; 749f7c7ceeSCharles Keepax }; 759f7c7ceeSCharles Keepax ldo1: ldo1 { 769f7c7ceeSCharles Keepax regulator-name = "LDO1"; 779f7c7ceeSCharles Keepax regulator-min-microvolt = <1700000>; 789f7c7ceeSCharles Keepax regulator-max-microvolt = <1700000>; 799f7c7ceeSCharles Keepax }; 809f7c7ceeSCharles Keepax }; 819f7c7ceeSCharles Keepax}; 82