Re: [PATCH V4 1/3] mfd: add support for ams AS3722 PMIC
From: Lee Jones <hidden>
Date: 2013-10-02 15:52:50
Also in:
linux-gpio, lkml
On Wed, 02 Oct 2013, Laxman Dewangan wrote:
The ams AS3722 is a compact system PMU suitable for mobile phones,
tablets etc. It has 4 DC/DC step-down regulators, 3 DC/DC step-down
controller, 11 LDOs, RTC, automatic battery, temperature and
over-current monitoring, 8 GPIOs, ADC and a watchdog.
Add MFD core driver for the AS3722 to support core functionality.
Signed-off-by: Laxman Dewangan <redacted>
Signed-off-by: Florian Lobmaier <redacted>
---
Changes from V1:
- Remove compatible string from DT for subnode.
- Nit cleanups in driver and use module_i2c_driver
Changes from V2:
- Change DT file to reflect the changes in gpio/pincntrl driver.
Now there is no extra subnode.
Changes from V3:
- Combine DT of pincontrol and regulator to mfd.
- Nits cleanups.
- AMS to ams.
Documentation/devicetree/bindings/mfd/as3722.txt | 174 +++++++++
drivers/mfd/Kconfig | 12 +
drivers/mfd/Makefile | 1 +
drivers/mfd/as3722.c | 449 ++++++++++++++++++++++
include/linux/mfd/as3722.h | 423 ++++++++++++++++++++
5 files changed, 1059 insertions(+), 0 deletions(-)
create mode 100644 Documentation/devicetree/bindings/mfd/as3722.txt
create mode 100644 drivers/mfd/as3722.c
create mode 100644 include/linux/mfd/as3722.h<snip>
+Required properties: +------------------- +- compatible: Must be "ams,as3722". +- reg: I2C device address. +- interrupt-controller: AS3722 has internal interrupt controller which takes the + interrupt request from internal sub-blocks like RTC, regulators,
Silly nit: Attention to detail 'from..internal'.
GPIOs as well
80 chars
+ as external input. +- #interrupt-cells: Should be set to 2 for IRQ number and flags. + The first cell is the IRQ number. + The second cell is the flags, encoded as the trigger masks from binding document
80 chars
<snip>
+Optional properties: +------------------- +The input supply of regulators are the optional properties on the +regulator node. The input supply of these regulators are provided +through following properties: +vsup-sd2-supply: Input supply for SD2. +vsup-sd3-supply: Input supply for SD3. +vsup-sd4-supply: Input supply for SD4. +vsup-sd5-supply: Input supply for SD5. +vin-ldo0-supply: Input supply for LDO0. +vin-ldo1-6-supply: Input supply for LDO1 and LDO6. +vin-ldo2-5-7-supply: Input supply for LDO2, LDO5 and LDO7. +vin-ldo3-4-supply: Input supply for LDO3 and LDO4. +vin-ldo9-10-supply: Input supply for LDO9 and LDO10. +vin-ldo11-supply: Input supply for LDO11.
Perhaps some indentation would be good here.
+Optional sub nodes: +----------------- + The subnodes name is the name of regulator and it must be one of: + sd[0-6], ldo[0-7], ldo[9-11] + + Each sub-node should contain the constraints and initialization + information for that regulator. See regulator.txt for a description + of standard properties for these sub-nodes. + Additional custom properties are listed below.
Silly nit: Attention to detail 'properties..are'. <snip> Besides all that stuff that's actually not all that important, the code looks pretty good to me. For the !DT MFD stuff: Acked-by: Lee Jones <redacted> -- Lee Jones Linaro STMicroelectronics Landing Team Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html