Re: [PATCH 1/3] mfd: ax20x: Add axp152 support

Lee Jones
2015-06-25T10:11:56Z

On Tue, 23 Jun 2015, Hans de Goede wrote:

> From: Michal Suchanek <hramrach-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
>
> The axp152 is a stripped down version of the axp202 pmic with the battery
> charging function removed as it is intended for top-set boxes.
>
> Signed-off-by: Hans de Goede <hdegoede-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
> ---
> Documentation/devicetree/bindings/mfd/axp20x.txt | 4 +-

This should be in a separate patch.

> drivers/mfd/axp20x.c | 92 ++++++++++++++++++++++++
> include/linux/mfd/axp20x.h | 61 +++++++++++++++-
> 3 files changed, 155 insertions(+), 2 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/mfd/axp20x.txt b/Documentation/devicetree/bindings/mfd/axp20x.txt
> index 753f14f..4181122 100644
> --- a/Documentation/devicetree/bindings/mfd/axp20x.txt
> +++ b/Documentation/devicetree/bindings/mfd/axp20x.txt
> @@ -1,12 +1,14 @@
> AXP family PMIC device tree bindings
>
> The axp20x family current members :
> +axp152 (X-Powers)
> axp202 (X-Powers)
> axp209 (X-Powers)
> axp221 (X-Powers)
>
> Required properties:
> -- compatible: "x-powers,axp202", "x-powers,axp209", "x-powers,axp221"
> +- compatible: "x-powers,axp152", "x-powers,axp202", "x-powers,axp209",
> + "x-powers,axp221"
> - reg: The I2C slave address for the AXP chip
> - interrupt-parent: The parent interrupt controller
> - interrupts: SoC NMI / GPIO interrupt connected to the PMIC's IRQ pin

For this patch, when it is separated out:
Acked-by: Lee Jones <lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>

> diff --git a/drivers/mfd/axp20x.c b/drivers/mfd/axp20x.c
> index ca4a604..49bba28 100644
> --- a/drivers/mfd/axp20x.c
> +++ b/drivers/mfd/axp20x.c
> @@ -30,12 +30,34 @@
> #define AXP20X_OFF 0x80
>
> static const char * const axp20x_model_names[] = {
> + "AXP152",
> "AXP202",
> "AXP209",
> "AXP221",
> "AXP288",
> };
>
> +static const struct regmap_range axp152_writeable_ranges[] = {
> + regmap_reg_range(AXP152_LDO3456_DC1234_CTRL, AXP152_IRQ3_STATE),
> + regmap_reg_range(AXP152_DCDC_MODE, AXP152_PWM1_DUTY_CYCLE),
> +};
> +
> +static const struct regmap_range axp152_volatile_ranges[] = {
> + regmap_reg_range(AXP152_PWR_OP_MODE, AXP152_PWR_OP_MODE),
> + regmap_reg_range(AXP152_IRQ1_EN, AXP152_IRQ3_STATE),
> + regmap_reg_range(AXP152_GPIO_INPUT, AXP152_GPIO_INPUT),
> +};
> +
> +static const struct regmap_access_table axp152_writeable_table = {
> + .yes_ranges = axp152_writeable_ranges,
> + .n_yes_ranges = ARRAY_SIZE(axp152_writeable_ranges),
> +};
> +
> +static const struct regmap_access_table axp152_volatile_table = {
> + .yes_ranges = axp152_volatile_ranges,
> + .n_yes_ranges = ARRAY_SIZE(axp152_volatile_ranges),
> +};
> +
> static const struct regmap_range axp20x_writeable_ranges[] = {
> regmap_reg_range(AXP20X_DATACACHE(0), AXP20X_IRQ5_STATE),
> regmap_reg_range(AXP20X_DCDC_MODE, AXP20X_FG_RES),
> @@ -99,6 +121,20 @@ static const struct regmap_access_table axp288_volatile_table = {
> .n_yes_ranges = ARRAY_SIZE(axp288_volatile_ranges),
> };
>
> +static struct resource axp152_pek_resources[] = {
> + {
> + .name = "PEK_DBR",
> + .start = AXP152_IRQ_PEK_RIS_EDGE,
> + .end = AXP152_IRQ_PEK_RIS_EDGE,
> + .flags = IORESOURCE_IRQ,
> + }, {
> + .name = "PEK_DBF",
> + .start = AXP152_IRQ_PEK_FAL_EDGE,
> + .end = AXP152_IRQ_PEK_FAL_EDGE,
> + .flags = IORESOURCE_IRQ,
> + },
> +};

DEFINE_RES_*()

After you've fixed this up, please add my:

Acked-by: Lee Jones <lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>

--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

--
You received this message because you are subscribed to the Google Groups "linux-sunxi" group.
To unsubscribe from this group and stop receiving emails from it, send an email to linux-sunxi+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
For more options, visit https://groups.google.com/d/optout.