mfd: axp20x: adapt to newly refactored unmask_base in regmap-irq

Message ID 20221127072307.2092327-1-uwu@icenowy.me
State New
Headers
Series mfd: axp20x: adapt to newly refactored unmask_base in regmap-irq |

Commit Message

Icenowy Zheng Nov. 27, 2022, 7:23 a.m. UTC
  The mask_base and unmask_base fields in a regmap-irq description is
recently refactored to be orthogonal and mask_inverted property is
deprecated. The new semantics of unmask_base just fits AXP PMICs.

Specify enabling registers as unmask_base and drop mask_inverted
property to adapt to the new interface.

Signed-off-by: Icenowy Zheng <uwu@icenowy.me>
---
 drivers/mfd/axp20x.c | 21 +++++++--------------
 1 file changed, 7 insertions(+), 14 deletions(-)
  

Comments

Samuel Holland Nov. 30, 2022, 6:33 a.m. UTC | #1
Hi Icenowy,

On 11/27/22 01:23, Icenowy Zheng wrote:
> The mask_base and unmask_base fields in a regmap-irq description is
> recently refactored to be orthogonal and mask_inverted property is
> deprecated. The new semantics of unmask_base just fits AXP PMICs.
> 
> Specify enabling registers as unmask_base and drop mask_inverted
> property to adapt to the new interface.
> 
> Signed-off-by: Icenowy Zheng <uwu@icenowy.me>

An equivalent patch was already merged:

https://lore.kernel.org/lkml/20221112151835.39059-4-aidanmacdonald.0x0@gmail.com/

> ---
>  drivers/mfd/axp20x.c | 21 +++++++--------------
>  1 file changed, 7 insertions(+), 14 deletions(-)
> 
> diff --git a/drivers/mfd/axp20x.c b/drivers/mfd/axp20x.c
> index 88a212a8168c..6e6b5dbab098 100644
> --- a/drivers/mfd/axp20x.c
> +++ b/drivers/mfd/axp20x.c
> @@ -506,8 +506,7 @@ static const struct regmap_irq_chip axp152_regmap_irq_chip = {
>  	.name			= "axp152_irq_chip",
>  	.status_base		= AXP152_IRQ1_STATE,
>  	.ack_base		= AXP152_IRQ1_STATE,
> -	.mask_base		= AXP152_IRQ1_EN,
> -	.mask_invert		= true,
> +	.unmask_base		= AXP152_IRQ1_EN,
>  	.init_ack_masked	= true,
>  	.irqs			= axp152_regmap_irqs,
>  	.num_irqs		= ARRAY_SIZE(axp152_regmap_irqs),
> @@ -518,8 +517,7 @@ static const struct regmap_irq_chip axp20x_regmap_irq_chip = {
>  	.name			= "axp20x_irq_chip",
>  	.status_base		= AXP20X_IRQ1_STATE,
>  	.ack_base		= AXP20X_IRQ1_STATE,
> -	.mask_base		= AXP20X_IRQ1_EN,
> -	.mask_invert		= true,
> +	.unmask_base		= AXP20X_IRQ1_EN,
>  	.init_ack_masked	= true,
>  	.irqs			= axp20x_regmap_irqs,
>  	.num_irqs		= ARRAY_SIZE(axp20x_regmap_irqs),
> @@ -531,8 +529,7 @@ static const struct regmap_irq_chip axp22x_regmap_irq_chip = {
>  	.name			= "axp22x_irq_chip",
>  	.status_base		= AXP20X_IRQ1_STATE,
>  	.ack_base		= AXP20X_IRQ1_STATE,
> -	.mask_base		= AXP20X_IRQ1_EN,
> -	.mask_invert		= true,
> +	.unmask_base		= AXP20X_IRQ1_EN,
>  	.init_ack_masked	= true,
>  	.irqs			= axp22x_regmap_irqs,
>  	.num_irqs		= ARRAY_SIZE(axp22x_regmap_irqs),
> @@ -543,8 +540,7 @@ static const struct regmap_irq_chip axp288_regmap_irq_chip = {
>  	.name			= "axp288_irq_chip",
>  	.status_base		= AXP20X_IRQ1_STATE,
>  	.ack_base		= AXP20X_IRQ1_STATE,
> -	.mask_base		= AXP20X_IRQ1_EN,
> -	.mask_invert		= true,
> +	.unmask_base		= AXP20X_IRQ1_EN,
>  	.init_ack_masked	= true,
>  	.irqs			= axp288_regmap_irqs,
>  	.num_irqs		= ARRAY_SIZE(axp288_regmap_irqs),
> @@ -556,8 +552,7 @@ static const struct regmap_irq_chip axp803_regmap_irq_chip = {
>  	.name			= "axp803",
>  	.status_base		= AXP20X_IRQ1_STATE,
>  	.ack_base		= AXP20X_IRQ1_STATE,
> -	.mask_base		= AXP20X_IRQ1_EN,
> -	.mask_invert		= true,
> +	.unmask_base		= AXP20X_IRQ1_EN,
>  	.init_ack_masked	= true,
>  	.irqs			= axp803_regmap_irqs,
>  	.num_irqs		= ARRAY_SIZE(axp803_regmap_irqs),
> @@ -568,8 +563,7 @@ static const struct regmap_irq_chip axp806_regmap_irq_chip = {
>  	.name			= "axp806",
>  	.status_base		= AXP20X_IRQ1_STATE,
>  	.ack_base		= AXP20X_IRQ1_STATE,
> -	.mask_base		= AXP20X_IRQ1_EN,
> -	.mask_invert		= true,
> +	.unmask_base		= AXP20X_IRQ1_EN,
>  	.init_ack_masked	= true,
>  	.irqs			= axp806_regmap_irqs,
>  	.num_irqs		= ARRAY_SIZE(axp806_regmap_irqs),
> @@ -580,8 +574,7 @@ static const struct regmap_irq_chip axp809_regmap_irq_chip = {
>  	.name			= "axp809",
>  	.status_base		= AXP20X_IRQ1_STATE,
>  	.ack_base		= AXP20X_IRQ1_STATE,
> -	.mask_base		= AXP20X_IRQ1_EN,
> -	.mask_invert		= true,
> +	.unmask_base		= AXP20X_IRQ1_EN,
>  	.init_ack_masked	= true,
>  	.irqs			= axp809_regmap_irqs,
>  	.num_irqs		= ARRAY_SIZE(axp809_regmap_irqs),
  
Icenowy Zheng Nov. 30, 2022, 7:07 a.m. UTC | #2
在 2022-11-30星期三的 00:33 -0600,Samuel Holland写道:
> Hi Icenowy,
> 
> On 11/27/22 01:23, Icenowy Zheng wrote:
> > The mask_base and unmask_base fields in a regmap-irq description is
> > recently refactored to be orthogonal and mask_inverted property is
> > deprecated. The new semantics of unmask_base just fits AXP PMICs.
> > 
> > Specify enabling registers as unmask_base and drop mask_inverted
> > property to adapt to the new interface.
> > 
> > Signed-off-by: Icenowy Zheng <uwu@icenowy.me>
> 
> An equivalent patch was already merged:
> 
> https://lore.kernel.org/lkml/20221112151835.39059-4-aidanmacdonald.0x0@gmail.com/

I am sorry for only checking torvalds/master before sending this patch.

> 
> > ---
> >  drivers/mfd/axp20x.c | 21 +++++++--------------
> >  1 file changed, 7 insertions(+), 14 deletions(-)
> > 
> > diff --git a/drivers/mfd/axp20x.c b/drivers/mfd/axp20x.c
> > index 88a212a8168c..6e6b5dbab098 100644
> > --- a/drivers/mfd/axp20x.c
> > +++ b/drivers/mfd/axp20x.c
> > @@ -506,8 +506,7 @@ static const struct regmap_irq_chip
> > axp152_regmap_irq_chip = {
> >         .name                   = "axp152_irq_chip",
> >         .status_base            = AXP152_IRQ1_STATE,
> >         .ack_base               = AXP152_IRQ1_STATE,
> > -       .mask_base              = AXP152_IRQ1_EN,
> > -       .mask_invert            = true,
> > +       .unmask_base            = AXP152_IRQ1_EN,
> >         .init_ack_masked        = true,
> >         .irqs                   = axp152_regmap_irqs,
> >         .num_irqs               = ARRAY_SIZE(axp152_regmap_irqs),
> > @@ -518,8 +517,7 @@ static const struct regmap_irq_chip
> > axp20x_regmap_irq_chip = {
> >         .name                   = "axp20x_irq_chip",
> >         .status_base            = AXP20X_IRQ1_STATE,
> >         .ack_base               = AXP20X_IRQ1_STATE,
> > -       .mask_base              = AXP20X_IRQ1_EN,
> > -       .mask_invert            = true,
> > +       .unmask_base            = AXP20X_IRQ1_EN,
> >         .init_ack_masked        = true,
> >         .irqs                   = axp20x_regmap_irqs,
> >         .num_irqs               = ARRAY_SIZE(axp20x_regmap_irqs),
> > @@ -531,8 +529,7 @@ static const struct regmap_irq_chip
> > axp22x_regmap_irq_chip = {
> >         .name                   = "axp22x_irq_chip",
> >         .status_base            = AXP20X_IRQ1_STATE,
> >         .ack_base               = AXP20X_IRQ1_STATE,
> > -       .mask_base              = AXP20X_IRQ1_EN,
> > -       .mask_invert            = true,
> > +       .unmask_base            = AXP20X_IRQ1_EN,
> >         .init_ack_masked        = true,
> >         .irqs                   = axp22x_regmap_irqs,
> >         .num_irqs               = ARRAY_SIZE(axp22x_regmap_irqs),
> > @@ -543,8 +540,7 @@ static const struct regmap_irq_chip
> > axp288_regmap_irq_chip = {
> >         .name                   = "axp288_irq_chip",
> >         .status_base            = AXP20X_IRQ1_STATE,
> >         .ack_base               = AXP20X_IRQ1_STATE,
> > -       .mask_base              = AXP20X_IRQ1_EN,
> > -       .mask_invert            = true,
> > +       .unmask_base            = AXP20X_IRQ1_EN,
> >         .init_ack_masked        = true,
> >         .irqs                   = axp288_regmap_irqs,
> >         .num_irqs               = ARRAY_SIZE(axp288_regmap_irqs),
> > @@ -556,8 +552,7 @@ static const struct regmap_irq_chip
> > axp803_regmap_irq_chip = {
> >         .name                   = "axp803",
> >         .status_base            = AXP20X_IRQ1_STATE,
> >         .ack_base               = AXP20X_IRQ1_STATE,
> > -       .mask_base              = AXP20X_IRQ1_EN,
> > -       .mask_invert            = true,
> > +       .unmask_base            = AXP20X_IRQ1_EN,
> >         .init_ack_masked        = true,
> >         .irqs                   = axp803_regmap_irqs,
> >         .num_irqs               = ARRAY_SIZE(axp803_regmap_irqs),
> > @@ -568,8 +563,7 @@ static const struct regmap_irq_chip
> > axp806_regmap_irq_chip = {
> >         .name                   = "axp806",
> >         .status_base            = AXP20X_IRQ1_STATE,
> >         .ack_base               = AXP20X_IRQ1_STATE,
> > -       .mask_base              = AXP20X_IRQ1_EN,
> > -       .mask_invert            = true,
> > +       .unmask_base            = AXP20X_IRQ1_EN,
> >         .init_ack_masked        = true,
> >         .irqs                   = axp806_regmap_irqs,
> >         .num_irqs               = ARRAY_SIZE(axp806_regmap_irqs),
> > @@ -580,8 +574,7 @@ static const struct regmap_irq_chip
> > axp809_regmap_irq_chip = {
> >         .name                   = "axp809",
> >         .status_base            = AXP20X_IRQ1_STATE,
> >         .ack_base               = AXP20X_IRQ1_STATE,
> > -       .mask_base              = AXP20X_IRQ1_EN,
> > -       .mask_invert            = true,
> > +       .unmask_base            = AXP20X_IRQ1_EN,
> >         .init_ack_masked        = true,
> >         .irqs                   = axp809_regmap_irqs,
> >         .num_irqs               = ARRAY_SIZE(axp809_regmap_irqs),
>
  

Patch

diff --git a/drivers/mfd/axp20x.c b/drivers/mfd/axp20x.c
index 88a212a8168c..6e6b5dbab098 100644
--- a/drivers/mfd/axp20x.c
+++ b/drivers/mfd/axp20x.c
@@ -506,8 +506,7 @@  static const struct regmap_irq_chip axp152_regmap_irq_chip = {
 	.name			= "axp152_irq_chip",
 	.status_base		= AXP152_IRQ1_STATE,
 	.ack_base		= AXP152_IRQ1_STATE,
-	.mask_base		= AXP152_IRQ1_EN,
-	.mask_invert		= true,
+	.unmask_base		= AXP152_IRQ1_EN,
 	.init_ack_masked	= true,
 	.irqs			= axp152_regmap_irqs,
 	.num_irqs		= ARRAY_SIZE(axp152_regmap_irqs),
@@ -518,8 +517,7 @@  static const struct regmap_irq_chip axp20x_regmap_irq_chip = {
 	.name			= "axp20x_irq_chip",
 	.status_base		= AXP20X_IRQ1_STATE,
 	.ack_base		= AXP20X_IRQ1_STATE,
-	.mask_base		= AXP20X_IRQ1_EN,
-	.mask_invert		= true,
+	.unmask_base		= AXP20X_IRQ1_EN,
 	.init_ack_masked	= true,
 	.irqs			= axp20x_regmap_irqs,
 	.num_irqs		= ARRAY_SIZE(axp20x_regmap_irqs),
@@ -531,8 +529,7 @@  static const struct regmap_irq_chip axp22x_regmap_irq_chip = {
 	.name			= "axp22x_irq_chip",
 	.status_base		= AXP20X_IRQ1_STATE,
 	.ack_base		= AXP20X_IRQ1_STATE,
-	.mask_base		= AXP20X_IRQ1_EN,
-	.mask_invert		= true,
+	.unmask_base		= AXP20X_IRQ1_EN,
 	.init_ack_masked	= true,
 	.irqs			= axp22x_regmap_irqs,
 	.num_irqs		= ARRAY_SIZE(axp22x_regmap_irqs),
@@ -543,8 +540,7 @@  static const struct regmap_irq_chip axp288_regmap_irq_chip = {
 	.name			= "axp288_irq_chip",
 	.status_base		= AXP20X_IRQ1_STATE,
 	.ack_base		= AXP20X_IRQ1_STATE,
-	.mask_base		= AXP20X_IRQ1_EN,
-	.mask_invert		= true,
+	.unmask_base		= AXP20X_IRQ1_EN,
 	.init_ack_masked	= true,
 	.irqs			= axp288_regmap_irqs,
 	.num_irqs		= ARRAY_SIZE(axp288_regmap_irqs),
@@ -556,8 +552,7 @@  static const struct regmap_irq_chip axp803_regmap_irq_chip = {
 	.name			= "axp803",
 	.status_base		= AXP20X_IRQ1_STATE,
 	.ack_base		= AXP20X_IRQ1_STATE,
-	.mask_base		= AXP20X_IRQ1_EN,
-	.mask_invert		= true,
+	.unmask_base		= AXP20X_IRQ1_EN,
 	.init_ack_masked	= true,
 	.irqs			= axp803_regmap_irqs,
 	.num_irqs		= ARRAY_SIZE(axp803_regmap_irqs),
@@ -568,8 +563,7 @@  static const struct regmap_irq_chip axp806_regmap_irq_chip = {
 	.name			= "axp806",
 	.status_base		= AXP20X_IRQ1_STATE,
 	.ack_base		= AXP20X_IRQ1_STATE,
-	.mask_base		= AXP20X_IRQ1_EN,
-	.mask_invert		= true,
+	.unmask_base		= AXP20X_IRQ1_EN,
 	.init_ack_masked	= true,
 	.irqs			= axp806_regmap_irqs,
 	.num_irqs		= ARRAY_SIZE(axp806_regmap_irqs),
@@ -580,8 +574,7 @@  static const struct regmap_irq_chip axp809_regmap_irq_chip = {
 	.name			= "axp809",
 	.status_base		= AXP20X_IRQ1_STATE,
 	.ack_base		= AXP20X_IRQ1_STATE,
-	.mask_base		= AXP20X_IRQ1_EN,
-	.mask_invert		= true,
+	.unmask_base		= AXP20X_IRQ1_EN,
 	.init_ack_masked	= true,
 	.irqs			= axp809_regmap_irqs,
 	.num_irqs		= ARRAY_SIZE(axp809_regmap_irqs),