linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 1/2] mfd: axp20x: Add missing registers, and mark more registers volatile
@ 2015-08-08 15:58 Hans de Goede
  2015-08-08 15:58 ` [PATCH v4 2/2] mfd: axp20x: Add a cell for the usb power_supply part of the axp20x PMICs Hans de Goede
  2015-08-11 14:17 ` [PATCH v4 1/2] mfd: axp20x: Add missing registers, and mark more registers volatile Lee Jones
  0 siblings, 2 replies; 8+ messages in thread
From: Hans de Goede @ 2015-08-08 15:58 UTC (permalink / raw)
  To: linux-arm-kernel

From: Bruno Pr?mont <bonbons@linux-vserver.org>

Add an extra set of registers which is necessary tu support the PMICs
battery charger function, and mark registers which contain status bits,
gpio status, and adc readings as volatile.

Cc: Bruno Pr?mont <bonbons@linux-vserver.org>
Signed-off-by: Bruno Pr?mont <bonbons@linux-vserver.org>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Acked-by: Lee Jones <lee.jones@linaro.org>
Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
---
Changes in v2:
-Add a AXP20X_OCV_MAX define
Changes in v3:
-Add Bruno's S-o-b
Changes in v4:
-Consistently use AXP20X_OCV_MAX everywhere
---
 drivers/mfd/axp20x.c       | 8 +++++++-
 include/linux/mfd/axp20x.h | 6 ++++++
 2 files changed, 13 insertions(+), 1 deletion(-)

diff --git a/drivers/mfd/axp20x.c b/drivers/mfd/axp20x.c
index b369cfc..d9f2f96 100644
--- a/drivers/mfd/axp20x.c
+++ b/drivers/mfd/axp20x.c
@@ -61,10 +61,16 @@ static const struct regmap_access_table axp152_volatile_table = {
 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),
+	regmap_reg_range(AXP20X_RDC_H, AXP20X_OCV(AXP20X_OCV_MAX)),
 };
 
 static const struct regmap_range axp20x_volatile_ranges[] = {
+	regmap_reg_range(AXP20X_PWR_INPUT_STATUS, AXP20X_USB_OTG_STATUS),
+	regmap_reg_range(AXP20X_CHRG_CTRL1, AXP20X_CHRG_CTRL2),
 	regmap_reg_range(AXP20X_IRQ1_EN, AXP20X_IRQ5_STATE),
+	regmap_reg_range(AXP20X_ACIN_V_ADC_H, AXP20X_IPSOUT_V_HIGH_L),
+	regmap_reg_range(AXP20X_GPIO20_SS, AXP20X_GPIO3_CTRL),
+	regmap_reg_range(AXP20X_FG_RES, AXP20X_RDC_L),
 };
 
 static const struct regmap_access_table axp20x_writeable_table = {
@@ -195,7 +201,7 @@ static const struct regmap_config axp20x_regmap_config = {
 	.val_bits	= 8,
 	.wr_table	= &axp20x_writeable_table,
 	.volatile_table	= &axp20x_volatile_table,
-	.max_register	= AXP20X_FG_RES,
+	.max_register	= AXP20X_OCV(AXP20X_OCV_MAX),
 	.cache_type	= REGCACHE_RBTREE,
 };
 
diff --git a/include/linux/mfd/axp20x.h b/include/linux/mfd/axp20x.h
index 52203d5..cc8ad1e 100644
--- a/include/linux/mfd/axp20x.h
+++ b/include/linux/mfd/axp20x.h
@@ -190,6 +190,12 @@ enum {
 #define AXP20X_CC_CTRL			0xb8
 #define AXP20X_FG_RES			0xb9
 
+/* OCV */
+#define AXP20X_RDC_H			0xba
+#define AXP20X_RDC_L			0xbb
+#define AXP20X_OCV(m)			(0xc0 + (m))
+#define AXP20X_OCV_MAX			0xf
+
 /* AXP22X specific registers */
 #define AXP22X_BATLOW_THRES1		0xe6
 
-- 
2.4.3

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH v4 2/2] mfd: axp20x: Add a cell for the usb power_supply part of the axp20x PMICs
  2015-08-08 15:58 [PATCH v4 1/2] mfd: axp20x: Add missing registers, and mark more registers volatile Hans de Goede
@ 2015-08-08 15:58 ` Hans de Goede
  2015-08-11 14:18   ` Lee Jones
  2015-08-11 14:17 ` [PATCH v4 1/2] mfd: axp20x: Add missing registers, and mark more registers volatile Lee Jones
  1 sibling, 1 reply; 8+ messages in thread
From: Hans de Goede @ 2015-08-08 15:58 UTC (permalink / raw)
  To: linux-arm-kernel

Add a cell for the usb power_supply part of the axp20x PMICs.

Note that this cell is only for the usb power_supply part and not the
ac-power / battery-charger / rtc-backup-bat-charger bits.

Depending on the board each of those must be enabled / disabled separately
in devicetree as most boards do not use all 4. So in dt each one needs its
own child-node of the axp20x node. Another reason for using separate child
nodes for each is so that other devicetree nodes can have a power-supply
property with a phandle referencing a node representing a single
power-supply.

The decision to use a separate devicetree node for each is reflected on
the kernel side by each getting its own mfd-cell / platform_device and
platform-driver.

Note this commit also makes some whitespace changes to the intialization
of existing cells in axp20x_cells, these are pure whitespace changes,
functionally nothing changes.

Cc: Bruno Pr?mont <bonbons@linux-vserver.org>
Signed-off-by: Bruno Pr?mont <bonbons@linux-vserver.org>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Acked-by: Lee Jones <lee.jones@linaro.org>
---
Changes in v2:
-Use DEFINE_RES_IRQ_NAMED
-Change indentation of axp20x_cells initializers to avoid line wrapping
Changes in v3:
-Improve commit message
-Add Bruno's S-o-b
---
 drivers/mfd/axp20x.c | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/drivers/mfd/axp20x.c b/drivers/mfd/axp20x.c
index d9f2f96..3f576b7 100644
--- a/drivers/mfd/axp20x.c
+++ b/drivers/mfd/axp20x.c
@@ -140,6 +140,13 @@ static struct resource axp20x_pek_resources[] = {
 	},
 };
 
+static struct resource axp20x_usb_power_supply_resources[] = {
+	DEFINE_RES_IRQ_NAMED(AXP20X_IRQ_VBUS_PLUGIN, "VBUS_PLUGIN"),
+	DEFINE_RES_IRQ_NAMED(AXP20X_IRQ_VBUS_REMOVAL, "VBUS_REMOVAL"),
+	DEFINE_RES_IRQ_NAMED(AXP20X_IRQ_VBUS_VALID, "VBUS_VALID"),
+	DEFINE_RES_IRQ_NAMED(AXP20X_IRQ_VBUS_NOT_VALID, "VBUS_NOT_VALID"),
+};
+
 static struct resource axp22x_pek_resources[] = {
 	{
 		.name   = "PEK_DBR",
@@ -432,11 +439,16 @@ static const struct regmap_irq_chip axp288_regmap_irq_chip = {
 
 static struct mfd_cell axp20x_cells[] = {
 	{
-		.name			= "axp20x-pek",
-		.num_resources		= ARRAY_SIZE(axp20x_pek_resources),
-		.resources		= axp20x_pek_resources,
+		.name		= "axp20x-pek",
+		.num_resources	= ARRAY_SIZE(axp20x_pek_resources),
+		.resources	= axp20x_pek_resources,
 	}, {
-		.name			= "axp20x-regulator",
+		.name		= "axp20x-regulator",
+	}, {
+		.name		= "axp20x-usb-power-supply",
+		.of_compatible	= "x-powers,axp202-usb-power-supply",
+		.num_resources	= ARRAY_SIZE(axp20x_usb_power_supply_resources),
+		.resources	= axp20x_usb_power_supply_resources,
 	},
 };
 
-- 
2.4.3

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH v4 1/2] mfd: axp20x: Add missing registers, and mark more registers volatile
  2015-08-08 15:58 [PATCH v4 1/2] mfd: axp20x: Add missing registers, and mark more registers volatile Hans de Goede
  2015-08-08 15:58 ` [PATCH v4 2/2] mfd: axp20x: Add a cell for the usb power_supply part of the axp20x PMICs Hans de Goede
@ 2015-08-11 14:17 ` Lee Jones
  1 sibling, 0 replies; 8+ messages in thread
From: Lee Jones @ 2015-08-11 14:17 UTC (permalink / raw)
  To: linux-arm-kernel

On Sat, 08 Aug 2015, Hans de Goede wrote:

> From: Bruno Pr?mont <bonbons@linux-vserver.org>
> 
> Add an extra set of registers which is necessary tu support the PMICs
> battery charger function, and mark registers which contain status bits,
> gpio status, and adc readings as volatile.
> 
> Cc: Bruno Pr?mont <bonbons@linux-vserver.org>
> Signed-off-by: Bruno Pr?mont <bonbons@linux-vserver.org>
> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
> Acked-by: Lee Jones <lee.jones@linaro.org>
> Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
> ---
> Changes in v2:
> -Add a AXP20X_OCV_MAX define
> Changes in v3:
> -Add Bruno's S-o-b
> Changes in v4:
> -Consistently use AXP20X_OCV_MAX everywhere
> ---
>  drivers/mfd/axp20x.c       | 8 +++++++-
>  include/linux/mfd/axp20x.h | 6 ++++++
>  2 files changed, 13 insertions(+), 1 deletion(-)

Applied, thanks.

> diff --git a/drivers/mfd/axp20x.c b/drivers/mfd/axp20x.c
> index b369cfc..d9f2f96 100644
> --- a/drivers/mfd/axp20x.c
> +++ b/drivers/mfd/axp20x.c
> @@ -61,10 +61,16 @@ static const struct regmap_access_table axp152_volatile_table = {
>  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),
> +	regmap_reg_range(AXP20X_RDC_H, AXP20X_OCV(AXP20X_OCV_MAX)),
>  };
>  
>  static const struct regmap_range axp20x_volatile_ranges[] = {
> +	regmap_reg_range(AXP20X_PWR_INPUT_STATUS, AXP20X_USB_OTG_STATUS),
> +	regmap_reg_range(AXP20X_CHRG_CTRL1, AXP20X_CHRG_CTRL2),
>  	regmap_reg_range(AXP20X_IRQ1_EN, AXP20X_IRQ5_STATE),
> +	regmap_reg_range(AXP20X_ACIN_V_ADC_H, AXP20X_IPSOUT_V_HIGH_L),
> +	regmap_reg_range(AXP20X_GPIO20_SS, AXP20X_GPIO3_CTRL),
> +	regmap_reg_range(AXP20X_FG_RES, AXP20X_RDC_L),
>  };
>  
>  static const struct regmap_access_table axp20x_writeable_table = {
> @@ -195,7 +201,7 @@ static const struct regmap_config axp20x_regmap_config = {
>  	.val_bits	= 8,
>  	.wr_table	= &axp20x_writeable_table,
>  	.volatile_table	= &axp20x_volatile_table,
> -	.max_register	= AXP20X_FG_RES,
> +	.max_register	= AXP20X_OCV(AXP20X_OCV_MAX),
>  	.cache_type	= REGCACHE_RBTREE,
>  };
>  
> diff --git a/include/linux/mfd/axp20x.h b/include/linux/mfd/axp20x.h
> index 52203d5..cc8ad1e 100644
> --- a/include/linux/mfd/axp20x.h
> +++ b/include/linux/mfd/axp20x.h
> @@ -190,6 +190,12 @@ enum {
>  #define AXP20X_CC_CTRL			0xb8
>  #define AXP20X_FG_RES			0xb9
>  
> +/* OCV */
> +#define AXP20X_RDC_H			0xba
> +#define AXP20X_RDC_L			0xbb
> +#define AXP20X_OCV(m)			(0xc0 + (m))
> +#define AXP20X_OCV_MAX			0xf
> +
>  /* AXP22X specific registers */
>  #define AXP22X_BATLOW_THRES1		0xe6
>  

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

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH v4 2/2] mfd: axp20x: Add a cell for the usb power_supply part of the axp20x PMICs
  2015-08-08 15:58 ` [PATCH v4 2/2] mfd: axp20x: Add a cell for the usb power_supply part of the axp20x PMICs Hans de Goede
@ 2015-08-11 14:18   ` Lee Jones
  2015-08-12  8:37     ` Hans de Goede
  0 siblings, 1 reply; 8+ messages in thread
From: Lee Jones @ 2015-08-11 14:18 UTC (permalink / raw)
  To: linux-arm-kernel

On Sat, 08 Aug 2015, Hans de Goede wrote:

> Add a cell for the usb power_supply part of the axp20x PMICs.
> 
> Note that this cell is only for the usb power_supply part and not the
> ac-power / battery-charger / rtc-backup-bat-charger bits.
> 
> Depending on the board each of those must be enabled / disabled separately
> in devicetree as most boards do not use all 4. So in dt each one needs its
> own child-node of the axp20x node. Another reason for using separate child
> nodes for each is so that other devicetree nodes can have a power-supply
> property with a phandle referencing a node representing a single
> power-supply.
> 
> The decision to use a separate devicetree node for each is reflected on
> the kernel side by each getting its own mfd-cell / platform_device and
> platform-driver.
> 
> Note this commit also makes some whitespace changes to the intialization
> of existing cells in axp20x_cells, these are pure whitespace changes,
> functionally nothing changes.
> 
> Cc: Bruno Pr?mont <bonbons@linux-vserver.org>
> Signed-off-by: Bruno Pr?mont <bonbons@linux-vserver.org>
> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
> Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
> Acked-by: Lee Jones <lee.jones@linaro.org>
> ---
> Changes in v2:
> -Use DEFINE_RES_IRQ_NAMED
> -Change indentation of axp20x_cells initializers to avoid line wrapping
> Changes in v3:
> -Improve commit message
> -Add Bruno's S-o-b
> ---
>  drivers/mfd/axp20x.c | 20 ++++++++++++++++----
>  1 file changed, 16 insertions(+), 4 deletions(-)

Applied, thanks.

> diff --git a/drivers/mfd/axp20x.c b/drivers/mfd/axp20x.c
> index d9f2f96..3f576b7 100644
> --- a/drivers/mfd/axp20x.c
> +++ b/drivers/mfd/axp20x.c
> @@ -140,6 +140,13 @@ static struct resource axp20x_pek_resources[] = {
>  	},
>  };
>  
> +static struct resource axp20x_usb_power_supply_resources[] = {
> +	DEFINE_RES_IRQ_NAMED(AXP20X_IRQ_VBUS_PLUGIN, "VBUS_PLUGIN"),
> +	DEFINE_RES_IRQ_NAMED(AXP20X_IRQ_VBUS_REMOVAL, "VBUS_REMOVAL"),
> +	DEFINE_RES_IRQ_NAMED(AXP20X_IRQ_VBUS_VALID, "VBUS_VALID"),
> +	DEFINE_RES_IRQ_NAMED(AXP20X_IRQ_VBUS_NOT_VALID, "VBUS_NOT_VALID"),
> +};
> +
>  static struct resource axp22x_pek_resources[] = {
>  	{
>  		.name   = "PEK_DBR",
> @@ -432,11 +439,16 @@ static const struct regmap_irq_chip axp288_regmap_irq_chip = {
>  
>  static struct mfd_cell axp20x_cells[] = {
>  	{
> -		.name			= "axp20x-pek",
> -		.num_resources		= ARRAY_SIZE(axp20x_pek_resources),
> -		.resources		= axp20x_pek_resources,
> +		.name		= "axp20x-pek",
> +		.num_resources	= ARRAY_SIZE(axp20x_pek_resources),
> +		.resources	= axp20x_pek_resources,
>  	}, {
> -		.name			= "axp20x-regulator",
> +		.name		= "axp20x-regulator",
> +	}, {
> +		.name		= "axp20x-usb-power-supply",
> +		.of_compatible	= "x-powers,axp202-usb-power-supply",
> +		.num_resources	= ARRAY_SIZE(axp20x_usb_power_supply_resources),
> +		.resources	= axp20x_usb_power_supply_resources,
>  	},
>  };
>  

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

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH v4 2/2] mfd: axp20x: Add a cell for the usb power_supply part of the axp20x PMICs
  2015-08-11 14:18   ` Lee Jones
@ 2015-08-12  8:37     ` Hans de Goede
  2015-08-12  9:29       ` Lee Jones
  0 siblings, 1 reply; 8+ messages in thread
From: Hans de Goede @ 2015-08-12  8:37 UTC (permalink / raw)
  To: linux-arm-kernel

Hi,

On 11-08-15 16:18, Lee Jones wrote:
> On Sat, 08 Aug 2015, Hans de Goede wrote:
>
>> Add a cell for the usb power_supply part of the axp20x PMICs.
>>
>> Note that this cell is only for the usb power_supply part and not the
>> ac-power / battery-charger / rtc-backup-bat-charger bits.
>>
>> Depending on the board each of those must be enabled / disabled separately
>> in devicetree as most boards do not use all 4. So in dt each one needs its
>> own child-node of the axp20x node. Another reason for using separate child
>> nodes for each is so that other devicetree nodes can have a power-supply
>> property with a phandle referencing a node representing a single
>> power-supply.
>>
>> The decision to use a separate devicetree node for each is reflected on
>> the kernel side by each getting its own mfd-cell / platform_device and
>> platform-driver.
>>
>> Note this commit also makes some whitespace changes to the intialization
>> of existing cells in axp20x_cells, these are pure whitespace changes,
>> functionally nothing changes.
>>
>> Cc: Bruno Pr?mont <bonbons@linux-vserver.org>
>> Signed-off-by: Bruno Pr?mont <bonbons@linux-vserver.org>
>> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
>> Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
>> Acked-by: Lee Jones <lee.jones@linaro.org>
>> ---
>> Changes in v2:
>> -Use DEFINE_RES_IRQ_NAMED
>> -Change indentation of axp20x_cells initializers to avoid line wrapping
>> Changes in v3:
>> -Improve commit message
>> -Add Bruno's S-o-b
>> ---
>>   drivers/mfd/axp20x.c | 20 ++++++++++++++++----
>>   1 file changed, 16 insertions(+), 4 deletions(-)
>
> Applied, thanks.

Great, but I'm not seeing this in:

https://git.kernel.org/cgit/linux/kernel/git/lee/mfd.git/log/?h=for-mfd-next

?

Regards,

Hans


>
>> diff --git a/drivers/mfd/axp20x.c b/drivers/mfd/axp20x.c
>> index d9f2f96..3f576b7 100644
>> --- a/drivers/mfd/axp20x.c
>> +++ b/drivers/mfd/axp20x.c
>> @@ -140,6 +140,13 @@ static struct resource axp20x_pek_resources[] = {
>>   	},
>>   };
>>
>> +static struct resource axp20x_usb_power_supply_resources[] = {
>> +	DEFINE_RES_IRQ_NAMED(AXP20X_IRQ_VBUS_PLUGIN, "VBUS_PLUGIN"),
>> +	DEFINE_RES_IRQ_NAMED(AXP20X_IRQ_VBUS_REMOVAL, "VBUS_REMOVAL"),
>> +	DEFINE_RES_IRQ_NAMED(AXP20X_IRQ_VBUS_VALID, "VBUS_VALID"),
>> +	DEFINE_RES_IRQ_NAMED(AXP20X_IRQ_VBUS_NOT_VALID, "VBUS_NOT_VALID"),
>> +};
>> +
>>   static struct resource axp22x_pek_resources[] = {
>>   	{
>>   		.name   = "PEK_DBR",
>> @@ -432,11 +439,16 @@ static const struct regmap_irq_chip axp288_regmap_irq_chip = {
>>
>>   static struct mfd_cell axp20x_cells[] = {
>>   	{
>> -		.name			= "axp20x-pek",
>> -		.num_resources		= ARRAY_SIZE(axp20x_pek_resources),
>> -		.resources		= axp20x_pek_resources,
>> +		.name		= "axp20x-pek",
>> +		.num_resources	= ARRAY_SIZE(axp20x_pek_resources),
>> +		.resources	= axp20x_pek_resources,
>>   	}, {
>> -		.name			= "axp20x-regulator",
>> +		.name		= "axp20x-regulator",
>> +	}, {
>> +		.name		= "axp20x-usb-power-supply",
>> +		.of_compatible	= "x-powers,axp202-usb-power-supply",
>> +		.num_resources	= ARRAY_SIZE(axp20x_usb_power_supply_resources),
>> +		.resources	= axp20x_usb_power_supply_resources,
>>   	},
>>   };
>>
>

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH v4 2/2] mfd: axp20x: Add a cell for the usb power_supply part of the axp20x PMICs
  2015-08-12  8:37     ` Hans de Goede
@ 2015-08-12  9:29       ` Lee Jones
  2015-08-12 10:20         ` Hans de Goede
  0 siblings, 1 reply; 8+ messages in thread
From: Lee Jones @ 2015-08-12  9:29 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, 12 Aug 2015, Hans de Goede wrote:

> Hi,
> 
> On 11-08-15 16:18, Lee Jones wrote:
> >On Sat, 08 Aug 2015, Hans de Goede wrote:
> >
> >>Add a cell for the usb power_supply part of the axp20x PMICs.
> >>
> >>Note that this cell is only for the usb power_supply part and not the
> >>ac-power / battery-charger / rtc-backup-bat-charger bits.
> >>
> >>Depending on the board each of those must be enabled / disabled separately
> >>in devicetree as most boards do not use all 4. So in dt each one needs its
> >>own child-node of the axp20x node. Another reason for using separate child
> >>nodes for each is so that other devicetree nodes can have a power-supply
> >>property with a phandle referencing a node representing a single
> >>power-supply.
> >>
> >>The decision to use a separate devicetree node for each is reflected on
> >>the kernel side by each getting its own mfd-cell / platform_device and
> >>platform-driver.
> >>
> >>Note this commit also makes some whitespace changes to the intialization
> >>of existing cells in axp20x_cells, these are pure whitespace changes,
> >>functionally nothing changes.
> >>
> >>Cc: Bruno Pr?mont <bonbons@linux-vserver.org>
> >>Signed-off-by: Bruno Pr?mont <bonbons@linux-vserver.org>
> >>Signed-off-by: Hans de Goede <hdegoede@redhat.com>
> >>Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
> >>Acked-by: Lee Jones <lee.jones@linaro.org>
> >>---
> >>Changes in v2:
> >>-Use DEFINE_RES_IRQ_NAMED
> >>-Change indentation of axp20x_cells initializers to avoid line wrapping
> >>Changes in v3:
> >>-Improve commit message
> >>-Add Bruno's S-o-b
> >>---
> >>  drivers/mfd/axp20x.c | 20 ++++++++++++++++----
> >>  1 file changed, 16 insertions(+), 4 deletions(-)
> >
> >Applied, thanks.
> 
> Great, but I'm not seeing this in:
> 
> https://git.kernel.org/cgit/linux/kernel/git/lee/mfd.git/log/?h=for-mfd-next

Well it does usually take me a day or two push my local branch out,
however in this case I had actually dropped a ball somewhere.  I've
been through my backlog of 'applied' patches and these two are the
only ones I failed to pick.  I have now, re-picked, re-applied and
pushed the branch out.  Let me know if something is still not right.

Sorry for the inconvenience.

> >>diff --git a/drivers/mfd/axp20x.c b/drivers/mfd/axp20x.c
> >>index d9f2f96..3f576b7 100644
> >>--- a/drivers/mfd/axp20x.c
> >>+++ b/drivers/mfd/axp20x.c
> >>@@ -140,6 +140,13 @@ static struct resource axp20x_pek_resources[] = {
> >>  	},
> >>  };
> >>
> >>+static struct resource axp20x_usb_power_supply_resources[] = {
> >>+	DEFINE_RES_IRQ_NAMED(AXP20X_IRQ_VBUS_PLUGIN, "VBUS_PLUGIN"),
> >>+	DEFINE_RES_IRQ_NAMED(AXP20X_IRQ_VBUS_REMOVAL, "VBUS_REMOVAL"),
> >>+	DEFINE_RES_IRQ_NAMED(AXP20X_IRQ_VBUS_VALID, "VBUS_VALID"),
> >>+	DEFINE_RES_IRQ_NAMED(AXP20X_IRQ_VBUS_NOT_VALID, "VBUS_NOT_VALID"),
> >>+};
> >>+
> >>  static struct resource axp22x_pek_resources[] = {
> >>  	{
> >>  		.name   = "PEK_DBR",
> >>@@ -432,11 +439,16 @@ static const struct regmap_irq_chip axp288_regmap_irq_chip = {
> >>
> >>  static struct mfd_cell axp20x_cells[] = {
> >>  	{
> >>-		.name			= "axp20x-pek",
> >>-		.num_resources		= ARRAY_SIZE(axp20x_pek_resources),
> >>-		.resources		= axp20x_pek_resources,
> >>+		.name		= "axp20x-pek",
> >>+		.num_resources	= ARRAY_SIZE(axp20x_pek_resources),
> >>+		.resources	= axp20x_pek_resources,
> >>  	}, {
> >>-		.name			= "axp20x-regulator",
> >>+		.name		= "axp20x-regulator",
> >>+	}, {
> >>+		.name		= "axp20x-usb-power-supply",
> >>+		.of_compatible	= "x-powers,axp202-usb-power-supply",
> >>+		.num_resources	= ARRAY_SIZE(axp20x_usb_power_supply_resources),
> >>+		.resources	= axp20x_usb_power_supply_resources,
> >>  	},
> >>  };
> >>
> >

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

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH v4 2/2] mfd: axp20x: Add a cell for the usb power_supply part of the axp20x PMICs
  2015-08-12  9:29       ` Lee Jones
@ 2015-08-12 10:20         ` Hans de Goede
  2015-08-12 10:26           ` Lee Jones
  0 siblings, 1 reply; 8+ messages in thread
From: Hans de Goede @ 2015-08-12 10:20 UTC (permalink / raw)
  To: linux-arm-kernel

Hi,

On 12-08-15 11:29, Lee Jones wrote:
> On Wed, 12 Aug 2015, Hans de Goede wrote:
>
>> Hi,
>>
>> On 11-08-15 16:18, Lee Jones wrote:
>>> On Sat, 08 Aug 2015, Hans de Goede wrote:
>>>
>>>> Add a cell for the usb power_supply part of the axp20x PMICs.
>>>>
>>>> Note that this cell is only for the usb power_supply part and not the
>>>> ac-power / battery-charger / rtc-backup-bat-charger bits.
>>>>
>>>> Depending on the board each of those must be enabled / disabled separately
>>>> in devicetree as most boards do not use all 4. So in dt each one needs its
>>>> own child-node of the axp20x node. Another reason for using separate child
>>>> nodes for each is so that other devicetree nodes can have a power-supply
>>>> property with a phandle referencing a node representing a single
>>>> power-supply.
>>>>
>>>> The decision to use a separate devicetree node for each is reflected on
>>>> the kernel side by each getting its own mfd-cell / platform_device and
>>>> platform-driver.
>>>>
>>>> Note this commit also makes some whitespace changes to the intialization
>>>> of existing cells in axp20x_cells, these are pure whitespace changes,
>>>> functionally nothing changes.
>>>>
>>>> Cc: Bruno Pr?mont <bonbons@linux-vserver.org>
>>>> Signed-off-by: Bruno Pr?mont <bonbons@linux-vserver.org>
>>>> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
>>>> Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
>>>> Acked-by: Lee Jones <lee.jones@linaro.org>
>>>> ---
>>>> Changes in v2:
>>>> -Use DEFINE_RES_IRQ_NAMED
>>>> -Change indentation of axp20x_cells initializers to avoid line wrapping
>>>> Changes in v3:
>>>> -Improve commit message
>>>> -Add Bruno's S-o-b
>>>> ---
>>>>   drivers/mfd/axp20x.c | 20 ++++++++++++++++----
>>>>   1 file changed, 16 insertions(+), 4 deletions(-)
>>>
>>> Applied, thanks.
>>
>> Great, but I'm not seeing this in:
>>
>> https://git.kernel.org/cgit/linux/kernel/git/lee/mfd.git/log/?h=for-mfd-next
>
> Well it does usually take me a day or two push my local branch out,
> however in this case I had actually dropped a ball somewhere.  I've
> been through my backlog of 'applied' patches and these two are the
> only ones I failed to pick.  I have now, re-picked, re-applied and
> pushed the branch out.  Let me know if something is still not right.

Looks good now, thanks.

> Sorry for the inconvenience.

No problem, thanks for all the great work you are doing on maintaining
the mfd subsys.

Regards,

Hans


>
>>>> diff --git a/drivers/mfd/axp20x.c b/drivers/mfd/axp20x.c
>>>> index d9f2f96..3f576b7 100644
>>>> --- a/drivers/mfd/axp20x.c
>>>> +++ b/drivers/mfd/axp20x.c
>>>> @@ -140,6 +140,13 @@ static struct resource axp20x_pek_resources[] = {
>>>>   	},
>>>>   };
>>>>
>>>> +static struct resource axp20x_usb_power_supply_resources[] = {
>>>> +	DEFINE_RES_IRQ_NAMED(AXP20X_IRQ_VBUS_PLUGIN, "VBUS_PLUGIN"),
>>>> +	DEFINE_RES_IRQ_NAMED(AXP20X_IRQ_VBUS_REMOVAL, "VBUS_REMOVAL"),
>>>> +	DEFINE_RES_IRQ_NAMED(AXP20X_IRQ_VBUS_VALID, "VBUS_VALID"),
>>>> +	DEFINE_RES_IRQ_NAMED(AXP20X_IRQ_VBUS_NOT_VALID, "VBUS_NOT_VALID"),
>>>> +};
>>>> +
>>>>   static struct resource axp22x_pek_resources[] = {
>>>>   	{
>>>>   		.name   = "PEK_DBR",
>>>> @@ -432,11 +439,16 @@ static const struct regmap_irq_chip axp288_regmap_irq_chip = {
>>>>
>>>>   static struct mfd_cell axp20x_cells[] = {
>>>>   	{
>>>> -		.name			= "axp20x-pek",
>>>> -		.num_resources		= ARRAY_SIZE(axp20x_pek_resources),
>>>> -		.resources		= axp20x_pek_resources,
>>>> +		.name		= "axp20x-pek",
>>>> +		.num_resources	= ARRAY_SIZE(axp20x_pek_resources),
>>>> +		.resources	= axp20x_pek_resources,
>>>>   	}, {
>>>> -		.name			= "axp20x-regulator",
>>>> +		.name		= "axp20x-regulator",
>>>> +	}, {
>>>> +		.name		= "axp20x-usb-power-supply",
>>>> +		.of_compatible	= "x-powers,axp202-usb-power-supply",
>>>> +		.num_resources	= ARRAY_SIZE(axp20x_usb_power_supply_resources),
>>>> +		.resources	= axp20x_usb_power_supply_resources,
>>>>   	},
>>>>   };
>>>>
>>>
>

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH v4 2/2] mfd: axp20x: Add a cell for the usb power_supply part of the axp20x PMICs
  2015-08-12 10:20         ` Hans de Goede
@ 2015-08-12 10:26           ` Lee Jones
  0 siblings, 0 replies; 8+ messages in thread
From: Lee Jones @ 2015-08-12 10:26 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, 12 Aug 2015, Hans de Goede wrote:

> Hi,
> 
> On 12-08-15 11:29, Lee Jones wrote:
> >On Wed, 12 Aug 2015, Hans de Goede wrote:
> >
> >>Hi,
> >>
> >>On 11-08-15 16:18, Lee Jones wrote:
> >>>On Sat, 08 Aug 2015, Hans de Goede wrote:
> >>>
> >>>>Add a cell for the usb power_supply part of the axp20x PMICs.
> >>>>
> >>>>Note that this cell is only for the usb power_supply part and not the
> >>>>ac-power / battery-charger / rtc-backup-bat-charger bits.
> >>>>
> >>>>Depending on the board each of those must be enabled / disabled separately
> >>>>in devicetree as most boards do not use all 4. So in dt each one needs its
> >>>>own child-node of the axp20x node. Another reason for using separate child
> >>>>nodes for each is so that other devicetree nodes can have a power-supply
> >>>>property with a phandle referencing a node representing a single
> >>>>power-supply.
> >>>>
> >>>>The decision to use a separate devicetree node for each is reflected on
> >>>>the kernel side by each getting its own mfd-cell / platform_device and
> >>>>platform-driver.
> >>>>
> >>>>Note this commit also makes some whitespace changes to the intialization
> >>>>of existing cells in axp20x_cells, these are pure whitespace changes,
> >>>>functionally nothing changes.
> >>>>
> >>>>Cc: Bruno Pr?mont <bonbons@linux-vserver.org>
> >>>>Signed-off-by: Bruno Pr?mont <bonbons@linux-vserver.org>
> >>>>Signed-off-by: Hans de Goede <hdegoede@redhat.com>
> >>>>Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
> >>>>Acked-by: Lee Jones <lee.jones@linaro.org>
> >>>>---
> >>>>Changes in v2:
> >>>>-Use DEFINE_RES_IRQ_NAMED
> >>>>-Change indentation of axp20x_cells initializers to avoid line wrapping
> >>>>Changes in v3:
> >>>>-Improve commit message
> >>>>-Add Bruno's S-o-b
> >>>>---
> >>>>  drivers/mfd/axp20x.c | 20 ++++++++++++++++----
> >>>>  1 file changed, 16 insertions(+), 4 deletions(-)
> >>>
> >>>Applied, thanks.
> >>
> >>Great, but I'm not seeing this in:
> >>
> >>https://git.kernel.org/cgit/linux/kernel/git/lee/mfd.git/log/?h=for-mfd-next
> >
> >Well it does usually take me a day or two push my local branch out,
> >however in this case I had actually dropped a ball somewhere.  I've
> >been through my backlog of 'applied' patches and these two are the
> >only ones I failed to pick.  I have now, re-picked, re-applied and
> >pushed the branch out.  Let me know if something is still not right.
> 
> Looks good now, thanks.

You're welcome.

> >Sorry for the inconvenience.
> 
> No problem, thanks for all the great work you are doing on maintaining
> the mfd subsys.

Thanks. :)

I should print and frame this, to look at when I think about not doing
it anymore.

> >>>>diff --git a/drivers/mfd/axp20x.c b/drivers/mfd/axp20x.c
> >>>>index d9f2f96..3f576b7 100644
> >>>>--- a/drivers/mfd/axp20x.c
> >>>>+++ b/drivers/mfd/axp20x.c
> >>>>@@ -140,6 +140,13 @@ static struct resource axp20x_pek_resources[] = {
> >>>>  	},
> >>>>  };
> >>>>
> >>>>+static struct resource axp20x_usb_power_supply_resources[] = {
> >>>>+	DEFINE_RES_IRQ_NAMED(AXP20X_IRQ_VBUS_PLUGIN, "VBUS_PLUGIN"),
> >>>>+	DEFINE_RES_IRQ_NAMED(AXP20X_IRQ_VBUS_REMOVAL, "VBUS_REMOVAL"),
> >>>>+	DEFINE_RES_IRQ_NAMED(AXP20X_IRQ_VBUS_VALID, "VBUS_VALID"),
> >>>>+	DEFINE_RES_IRQ_NAMED(AXP20X_IRQ_VBUS_NOT_VALID, "VBUS_NOT_VALID"),
> >>>>+};
> >>>>+
> >>>>  static struct resource axp22x_pek_resources[] = {
> >>>>  	{
> >>>>  		.name   = "PEK_DBR",
> >>>>@@ -432,11 +439,16 @@ static const struct regmap_irq_chip axp288_regmap_irq_chip = {
> >>>>
> >>>>  static struct mfd_cell axp20x_cells[] = {
> >>>>  	{
> >>>>-		.name			= "axp20x-pek",
> >>>>-		.num_resources		= ARRAY_SIZE(axp20x_pek_resources),
> >>>>-		.resources		= axp20x_pek_resources,
> >>>>+		.name		= "axp20x-pek",
> >>>>+		.num_resources	= ARRAY_SIZE(axp20x_pek_resources),
> >>>>+		.resources	= axp20x_pek_resources,
> >>>>  	}, {
> >>>>-		.name			= "axp20x-regulator",
> >>>>+		.name		= "axp20x-regulator",
> >>>>+	}, {
> >>>>+		.name		= "axp20x-usb-power-supply",
> >>>>+		.of_compatible	= "x-powers,axp202-usb-power-supply",
> >>>>+		.num_resources	= ARRAY_SIZE(axp20x_usb_power_supply_resources),
> >>>>+		.resources	= axp20x_usb_power_supply_resources,
> >>>>  	},
> >>>>  };
> >>>>
> >>>
> >

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

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2015-08-12 10:26 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-08-08 15:58 [PATCH v4 1/2] mfd: axp20x: Add missing registers, and mark more registers volatile Hans de Goede
2015-08-08 15:58 ` [PATCH v4 2/2] mfd: axp20x: Add a cell for the usb power_supply part of the axp20x PMICs Hans de Goede
2015-08-11 14:18   ` Lee Jones
2015-08-12  8:37     ` Hans de Goede
2015-08-12  9:29       ` Lee Jones
2015-08-12 10:20         ` Hans de Goede
2015-08-12 10:26           ` Lee Jones
2015-08-11 14:17 ` [PATCH v4 1/2] mfd: axp20x: Add missing registers, and mark more registers volatile Lee Jones

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).