Re: [PATCH V4 1/3] mfd: add support for ams AS3722 PMIC

From: Lee Jones
Date: Wed Oct 02 2013 - 11:52:55 EST


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 <ldewangan@xxxxxxxxxx>
> Signed-off-by: Florian Lobmaier <florian.lobmaier@xxxxxxx>
> ---
> 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 <lee.jones@xxxxxxxxxx>

--
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 linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/