diff mbox series

[v1,2/3] mfd: tps65086: Make interrupt line optional

Message ID 20210625224744.1020108-3-kernel@esmil.dk
State Superseded
Headers show
Series BeagleV Starlight reset support | expand

Commit Message

Emil Renner Berthing June 25, 2021, 10:47 p.m. UTC
The BeagleV Starlight v0.9 board[1] doesn't have the IRQB line routed to
the SoC, but it is still useful to be able to reach the PMIC over I2C
for the other functionality it provides.

[1] https://github.com/beagleboard/beaglev-starlight

Signed-off-by: Emil Renner Berthing <kernel@esmil.dk>
---
 .../devicetree/bindings/mfd/ti,tps65086.yaml  |  3 ---
 drivers/mfd/tps65086.c                        | 21 ++++++++++---------
 2 files changed, 11 insertions(+), 13 deletions(-)

Comments

Lee Jones July 13, 2021, 9:18 a.m. UTC | #1
On Sat, 26 Jun 2021, Emil Renner Berthing wrote:

> The BeagleV Starlight v0.9 board[1] doesn't have the IRQB line routed to

> the SoC, but it is still useful to be able to reach the PMIC over I2C


What is still useful?

The GPIO and Regulator drivers?

> for the other functionality it provides.

> 

> [1] https://github.com/beagleboard/beaglev-starlight

> 

> Signed-off-by: Emil Renner Berthing <kernel@esmil.dk>

> ---

>  .../devicetree/bindings/mfd/ti,tps65086.yaml  |  3 ---

>  drivers/mfd/tps65086.c                        | 21 ++++++++++---------

>  2 files changed, 11 insertions(+), 13 deletions(-)

> 

> diff --git a/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml b/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml

> index ba638bd10a58..4b629fcc0df9 100644

> --- a/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml

> +++ b/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml

> @@ -87,9 +87,6 @@ additionalProperties: false

>  required:

>    - compatible

>    - reg

> -  - interrupts

> -  - interrupt-controller

> -  - '#interrupt-cells'


I can't say that I've been keeping up with the latest DT binding
changes, but shouldn't these lines be relocated into some kind of
optional listing?

Or are optional properties omitted from documentation?

>    - gpio-controller

>    - '#gpio-cells'

>    - regulators

> diff --git a/drivers/mfd/tps65086.c b/drivers/mfd/tps65086.c

> index 341466ef20cc..cc3478ee9a64 100644

> --- a/drivers/mfd/tps65086.c

> +++ b/drivers/mfd/tps65086.c

> @@ -100,29 +100,30 @@ static int tps65086_probe(struct i2c_client *client,

>  		 (char)((version & TPS65086_DEVICEID_OTP_MASK) >> 4) + 'A',

>  		 (version & TPS65086_DEVICEID_REV_MASK) >> 6);

>  

> -	ret = regmap_add_irq_chip(tps->regmap, tps->irq, IRQF_ONESHOT, 0,

> -				  &tps65086_irq_chip, &tps->irq_data);

> -	if (ret) {

> -		dev_err(tps->dev, "Failed to register IRQ chip\n");

> -		return ret;

> +	if (tps->irq > 0) {


Are you sure that the 0th line is not a valid IRQ?

> +		ret = regmap_add_irq_chip(tps->regmap, tps->irq, IRQF_ONESHOT, 0,

> +					  &tps65086_irq_chip, &tps->irq_data);

> +		if (ret) {

> +			dev_err(tps->dev, "Failed to register IRQ chip\n");

> +			return ret;

> +		}

>  	}

>  

>  	ret = mfd_add_devices(tps->dev, PLATFORM_DEVID_AUTO, tps65086_cells,

>  			      ARRAY_SIZE(tps65086_cells), NULL, 0,

>  			      regmap_irq_get_domain(tps->irq_data));

> -	if (ret) {

> +	if (ret && tps->irq > 0)

>  		regmap_del_irq_chip(tps->irq, tps->irq_data);

> -		return ret;

> -	}

>  

> -	return 0;

> +	return ret;

>  }

>  

>  static int tps65086_remove(struct i2c_client *client)

>  {

>  	struct tps65086 *tps = i2c_get_clientdata(client);

>  

> -	regmap_del_irq_chip(tps->irq, tps->irq_data);

> +	if (tps->irq > 0)

> +		regmap_del_irq_chip(tps->irq, tps->irq_data);

>  

>  	return 0;

>  }


-- 
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog
Rob Herring July 14, 2021, 8:38 p.m. UTC | #2
On Tue, Jul 13, 2021 at 10:18:01AM +0100, Lee Jones wrote:
> On Sat, 26 Jun 2021, Emil Renner Berthing wrote:
> 
> > The BeagleV Starlight v0.9 board[1] doesn't have the IRQB line routed to
> > the SoC, but it is still useful to be able to reach the PMIC over I2C
> 
> What is still useful?
> 
> The GPIO and Regulator drivers?
> 
> > for the other functionality it provides.
> > 
> > [1] https://github.com/beagleboard/beaglev-starlight
> > 
> > Signed-off-by: Emil Renner Berthing <kernel@esmil.dk>
> > ---
> >  .../devicetree/bindings/mfd/ti,tps65086.yaml  |  3 ---
> >  drivers/mfd/tps65086.c                        | 21 ++++++++++---------
> >  2 files changed, 11 insertions(+), 13 deletions(-)
> > 
> > diff --git a/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml b/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml
> > index ba638bd10a58..4b629fcc0df9 100644
> > --- a/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml
> > +++ b/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml
> > @@ -87,9 +87,6 @@ additionalProperties: false
> >  required:
> >    - compatible
> >    - reg
> > -  - interrupts
> > -  - interrupt-controller
> > -  - '#interrupt-cells'
> 
> I can't say that I've been keeping up with the latest DT binding
> changes, but shouldn't these lines be relocated into some kind of
> optional listing?
> 
> Or are optional properties omitted from documentation?

Optional properties are the ones not listed in the 'required' list.

Rob
Rob Herring July 14, 2021, 8:44 p.m. UTC | #3
On Sat, 26 Jun 2021 00:47:43 +0200, Emil Renner Berthing wrote:
> The BeagleV Starlight v0.9 board[1] doesn't have the IRQB line routed to
> the SoC, but it is still useful to be able to reach the PMIC over I2C
> for the other functionality it provides.
> 
> [1] https://github.com/beagleboard/beaglev-starlight
> 
> Signed-off-by: Emil Renner Berthing <kernel@esmil.dk>
> ---
>  .../devicetree/bindings/mfd/ti,tps65086.yaml  |  3 ---
>  drivers/mfd/tps65086.c                        | 21 ++++++++++---------
>  2 files changed, 11 insertions(+), 13 deletions(-)
> 

Acked-by: Rob Herring <robh@kernel.org>
Lee Jones July 15, 2021, 11:13 a.m. UTC | #4
On Wed, 14 Jul 2021, Rob Herring wrote:

> On Tue, Jul 13, 2021 at 10:18:01AM +0100, Lee Jones wrote:
> > On Sat, 26 Jun 2021, Emil Renner Berthing wrote:
> > 
> > > The BeagleV Starlight v0.9 board[1] doesn't have the IRQB line routed to
> > > the SoC, but it is still useful to be able to reach the PMIC over I2C
> > 
> > What is still useful?
> > 
> > The GPIO and Regulator drivers?
> > 
> > > for the other functionality it provides.
> > > 
> > > [1] https://github.com/beagleboard/beaglev-starlight
> > > 
> > > Signed-off-by: Emil Renner Berthing <kernel@esmil.dk>
> > > ---
> > >  .../devicetree/bindings/mfd/ti,tps65086.yaml  |  3 ---
> > >  drivers/mfd/tps65086.c                        | 21 ++++++++++---------
> > >  2 files changed, 11 insertions(+), 13 deletions(-)
> > > 
> > > diff --git a/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml b/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml
> > > index ba638bd10a58..4b629fcc0df9 100644
> > > --- a/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml
> > > +++ b/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml
> > > @@ -87,9 +87,6 @@ additionalProperties: false
> > >  required:
> > >    - compatible
> > >    - reg
> > > -  - interrupts
> > > -  - interrupt-controller
> > > -  - '#interrupt-cells'
> > 
> > I can't say that I've been keeping up with the latest DT binding
> > changes, but shouldn't these lines be relocated into some kind of
> > optional listing?
> > 
> > Or are optional properties omitted from documentation?
> 
> Optional properties are the ones not listed in the 'required' list.

Ah, so they are already documented somewhere else in the file?
Emil Renner Berthing July 15, 2021, 11:27 a.m. UTC | #5
On Thu, 15 Jul 2021 at 13:13, Lee Jones <lee.jones@linaro.org> wrote:
> On Wed, 14 Jul 2021, Rob Herring wrote:
> > On Tue, Jul 13, 2021 at 10:18:01AM +0100, Lee Jones wrote:
> > > On Sat, 26 Jun 2021, Emil Renner Berthing wrote:
> > >
> > > > The BeagleV Starlight v0.9 board[1] doesn't have the IRQB line routed to
> > > > the SoC, but it is still useful to be able to reach the PMIC over I2C
> > >
> > > What is still useful?
> > >
> > > The GPIO and Regulator drivers?
> > >
> > > > for the other functionality it provides.
> > > >
> > > > [1] https://github.com/beagleboard/beaglev-starlight
> > > >
> > > > Signed-off-by: Emil Renner Berthing <kernel@esmil.dk>
> > > > ---
> > > >  .../devicetree/bindings/mfd/ti,tps65086.yaml  |  3 ---
> > > >  drivers/mfd/tps65086.c                        | 21 ++++++++++---------
> > > >  2 files changed, 11 insertions(+), 13 deletions(-)
> > > >
> > > > diff --git a/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml b/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml
> > > > index ba638bd10a58..4b629fcc0df9 100644
> > > > --- a/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml
> > > > +++ b/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml
> > > > @@ -87,9 +87,6 @@ additionalProperties: false
> > > >  required:
> > > >    - compatible
> > > >    - reg
> > > > -  - interrupts
> > > > -  - interrupt-controller
> > > > -  - '#interrupt-cells'
> > >
> > > I can't say that I've been keeping up with the latest DT binding
> > > changes, but shouldn't these lines be relocated into some kind of
> > > optional listing?
> > >
> > > Or are optional properties omitted from documentation?
> >
> > Optional properties are the ones not listed in the 'required' list.
>
> Ah, so they are already documented somewhere else in the file?

Yes, just a few lines above.
Lee Jones July 20, 2021, 3:07 p.m. UTC | #6
On Sat, 26 Jun 2021, Emil Renner Berthing wrote:

> The BeagleV Starlight v0.9 board[1] doesn't have the IRQB line routed to

> the SoC, but it is still useful to be able to reach the PMIC over I2C

> for the other functionality it provides.

> 

> [1] https://github.com/beagleboard/beaglev-starlight

> 

> Signed-off-by: Emil Renner Berthing <kernel@esmil.dk>

> ---

>  .../devicetree/bindings/mfd/ti,tps65086.yaml  |  3 ---


This is not present in my current tree.

Looks like it's still *.txt.

Am I missing a patch?

>  drivers/mfd/tps65086.c                        | 21 ++++++++++---------

>  2 files changed, 11 insertions(+), 13 deletions(-)

> 

> diff --git a/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml b/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml

> index ba638bd10a58..4b629fcc0df9 100644

> --- a/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml

> +++ b/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml

> @@ -87,9 +87,6 @@ additionalProperties: false

>  required:

>    - compatible

>    - reg

> -  - interrupts

> -  - interrupt-controller

> -  - '#interrupt-cells'

>    - gpio-controller

>    - '#gpio-cells'

>    - regulators

> diff --git a/drivers/mfd/tps65086.c b/drivers/mfd/tps65086.c

> index 341466ef20cc..cc3478ee9a64 100644

> --- a/drivers/mfd/tps65086.c

> +++ b/drivers/mfd/tps65086.c

> @@ -100,29 +100,30 @@ static int tps65086_probe(struct i2c_client *client,

>  		 (char)((version & TPS65086_DEVICEID_OTP_MASK) >> 4) + 'A',

>  		 (version & TPS65086_DEVICEID_REV_MASK) >> 6);

>  

> -	ret = regmap_add_irq_chip(tps->regmap, tps->irq, IRQF_ONESHOT, 0,

> -				  &tps65086_irq_chip, &tps->irq_data);

> -	if (ret) {

> -		dev_err(tps->dev, "Failed to register IRQ chip\n");

> -		return ret;

> +	if (tps->irq > 0) {

> +		ret = regmap_add_irq_chip(tps->regmap, tps->irq, IRQF_ONESHOT, 0,

> +					  &tps65086_irq_chip, &tps->irq_data);

> +		if (ret) {

> +			dev_err(tps->dev, "Failed to register IRQ chip\n");

> +			return ret;

> +		}

>  	}

>  

>  	ret = mfd_add_devices(tps->dev, PLATFORM_DEVID_AUTO, tps65086_cells,

>  			      ARRAY_SIZE(tps65086_cells), NULL, 0,

>  			      regmap_irq_get_domain(tps->irq_data));

> -	if (ret) {

> +	if (ret && tps->irq > 0)

>  		regmap_del_irq_chip(tps->irq, tps->irq_data);

> -		return ret;

> -	}

>  

> -	return 0;

> +	return ret;

>  }

>  

>  static int tps65086_remove(struct i2c_client *client)

>  {

>  	struct tps65086 *tps = i2c_get_clientdata(client);

>  

> -	regmap_del_irq_chip(tps->irq, tps->irq_data);

> +	if (tps->irq > 0)

> +		regmap_del_irq_chip(tps->irq, tps->irq_data);

>  

>  	return 0;

>  }


-- 
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog
Emil Renner Berthing July 20, 2021, 3:09 p.m. UTC | #7
On Tue, 20 Jul 2021 at 17:07, Lee Jones <lee.jones@linaro.org> wrote:
> On Sat, 26 Jun 2021, Emil Renner Berthing wrote:

> > The BeagleV Starlight v0.9 board[1] doesn't have the IRQB line routed to

> > the SoC, but it is still useful to be able to reach the PMIC over I2C

> > for the other functionality it provides.

> >

> > [1] https://github.com/beagleboard/beaglev-starlight

> >

> > Signed-off-by: Emil Renner Berthing <kernel@esmil.dk>

> > ---

> >  .../devicetree/bindings/mfd/ti,tps65086.yaml  |  3 ---

>

> This is not present in my current tree.

>

> Looks like it's still *.txt.

>

> Am I missing a patch?


Yes, the first patch in the series converts that to yaml. I'm quite
sure I had the same list of recipients on all 4 mails in the series,
so don't know why that should be missing.
Lee Jones July 20, 2021, 3:32 p.m. UTC | #8
On Tue, 20 Jul 2021, Emil Renner Berthing wrote:

> On Tue, 20 Jul 2021 at 17:07, Lee Jones <lee.jones@linaro.org> wrote:
> > On Sat, 26 Jun 2021, Emil Renner Berthing wrote:
> > > The BeagleV Starlight v0.9 board[1] doesn't have the IRQB line routed to
> > > the SoC, but it is still useful to be able to reach the PMIC over I2C
> > > for the other functionality it provides.
> > >
> > > [1] https://github.com/beagleboard/beaglev-starlight
> > >
> > > Signed-off-by: Emil Renner Berthing <kernel@esmil.dk>
> > > ---
> > >  .../devicetree/bindings/mfd/ti,tps65086.yaml  |  3 ---
> >
> > This is not present in my current tree.
> >
> > Looks like it's still *.txt.
> >
> > Am I missing a patch?
> 
> Yes, the first patch in the series converts that to yaml. I'm quite
> sure I had the same list of recipients on all 4 mails in the series,
> so don't know why that should be missing.

Oh, it's not marked as 'important' because it has open review comments
on it.

Just have this for now then:

For my own reference (apply this as-is to your sign-off block):

  Acked-for-MFD-by: Lee Jones <lee.jones@linaro.org>
Emil Renner Berthing July 20, 2021, 3:36 p.m. UTC | #9
On Tue, 20 Jul 2021 at 17:32, Lee Jones <lee.jones@linaro.org> wrote:
> On Tue, 20 Jul 2021, Emil Renner Berthing wrote:
> > On Tue, 20 Jul 2021 at 17:07, Lee Jones <lee.jones@linaro.org> wrote:
> > > On Sat, 26 Jun 2021, Emil Renner Berthing wrote:
> > > > The BeagleV Starlight v0.9 board[1] doesn't have the IRQB line routed to
> > > > the SoC, but it is still useful to be able to reach the PMIC over I2C
> > > > for the other functionality it provides.
> > > >
> > > > [1] https://github.com/beagleboard/beaglev-starlight
> > > >
> > > > Signed-off-by: Emil Renner Berthing <kernel@esmil.dk>
> > > > ---
> > > >  .../devicetree/bindings/mfd/ti,tps65086.yaml  |  3 ---
> > >
> > > This is not present in my current tree.
> > >
> > > Looks like it's still *.txt.
> > >
> > > Am I missing a patch?
> >
> > Yes, the first patch in the series converts that to yaml. I'm quite
> > sure I had the same list of recipients on all 4 mails in the series,
> > so don't know why that should be missing.
>
> Oh, it's not marked as 'important' because it has open review comments
> on it.
>
> Just have this for now then:
>
> For my own reference (apply this as-is to your sign-off block):
>
>   Acked-for-MFD-by: Lee Jones <lee.jones@linaro.org>

Thanks! Do you want to have a look at 3/3 or should I just send a v2
to fix the yaml conversion now?

/Emil
Lee Jones July 20, 2021, 4:07 p.m. UTC | #10
On Tue, 20 Jul 2021, Emil Renner Berthing wrote:

> On Tue, 20 Jul 2021 at 17:32, Lee Jones <lee.jones@linaro.org> wrote:

> > On Tue, 20 Jul 2021, Emil Renner Berthing wrote:

> > > On Tue, 20 Jul 2021 at 17:07, Lee Jones <lee.jones@linaro.org> wrote:

> > > > On Sat, 26 Jun 2021, Emil Renner Berthing wrote:

> > > > > The BeagleV Starlight v0.9 board[1] doesn't have the IRQB line routed to

> > > > > the SoC, but it is still useful to be able to reach the PMIC over I2C

> > > > > for the other functionality it provides.

> > > > >

> > > > > [1] https://github.com/beagleboard/beaglev-starlight

> > > > >

> > > > > Signed-off-by: Emil Renner Berthing <kernel@esmil.dk>

> > > > > ---

> > > > >  .../devicetree/bindings/mfd/ti,tps65086.yaml  |  3 ---

> > > >

> > > > This is not present in my current tree.

> > > >

> > > > Looks like it's still *.txt.

> > > >

> > > > Am I missing a patch?

> > >

> > > Yes, the first patch in the series converts that to yaml. I'm quite

> > > sure I had the same list of recipients on all 4 mails in the series,

> > > so don't know why that should be missing.

> >

> > Oh, it's not marked as 'important' because it has open review comments

> > on it.

> >

> > Just have this for now then:

> >

> > For my own reference (apply this as-is to your sign-off block):

> >

> >   Acked-for-MFD-by: Lee Jones <lee.jones@linaro.org>

> 

> Thanks! Do you want to have a look at 3/3 or should I just send a v2

> to fix the yaml conversion now?


Patch 3 should be split.

I think it should also s/restart/reset/.

-- 
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog
Emil Renner Berthing July 20, 2021, 4:18 p.m. UTC | #11
On Tue, 20 Jul 2021 at 18:07, Lee Jones <lee.jones@linaro.org> wrote:
> On Tue, 20 Jul 2021, Emil Renner Berthing wrote:
> > On Tue, 20 Jul 2021 at 17:32, Lee Jones <lee.jones@linaro.org> wrote:
> > > On Tue, 20 Jul 2021, Emil Renner Berthing wrote:
> > > > On Tue, 20 Jul 2021 at 17:07, Lee Jones <lee.jones@linaro.org> wrote:
> > > > > On Sat, 26 Jun 2021, Emil Renner Berthing wrote:
> > > > > > The BeagleV Starlight v0.9 board[1] doesn't have the IRQB line routed to
> > > > > > the SoC, but it is still useful to be able to reach the PMIC over I2C
> > > > > > for the other functionality it provides.
> > > > > >
> > > > > > [1] https://github.com/beagleboard/beaglev-starlight
> > > > > >
> > > > > > Signed-off-by: Emil Renner Berthing <kernel@esmil.dk>
> > > > > > ---
> > > > > >  .../devicetree/bindings/mfd/ti,tps65086.yaml  |  3 ---
> > > > >
> > > > > This is not present in my current tree.
> > > > >
> > > > > Looks like it's still *.txt.
> > > > >
> > > > > Am I missing a patch?
> > > >
> > > > Yes, the first patch in the series converts that to yaml. I'm quite
> > > > sure I had the same list of recipients on all 4 mails in the series,
> > > > so don't know why that should be missing.
> > >
> > > Oh, it's not marked as 'important' because it has open review comments
> > > on it.
> > >
> > > Just have this for now then:
> > >
> > > For my own reference (apply this as-is to your sign-off block):
> > >
> > >   Acked-for-MFD-by: Lee Jones <lee.jones@linaro.org>
> >
> > Thanks! Do you want to have a look at 3/3 or should I just send a v2
> > to fix the yaml conversion now?
>
> Patch 3 should be split.

Oh, how split? Split off the series or split into adding the "driver"
and then add the cell to the parent?

> I think it should also s/restart/reset/.

Oh right yes. You mean the cell name needs to be .name =
"tps65086-reset", right?
I'll fix that anyway.

> --
> Lee Jones [李琼斯]
> Senior Technical Lead - Developer Services
> Linaro.org │ Open source software for Arm SoCs
> Follow Linaro: Facebook | Twitter | Blog
Lee Jones July 20, 2021, 4:29 p.m. UTC | #12
On Tue, 20 Jul 2021, Emil Renner Berthing wrote:

> On Tue, 20 Jul 2021 at 18:07, Lee Jones <lee.jones@linaro.org> wrote:

> > On Tue, 20 Jul 2021, Emil Renner Berthing wrote:

> > > On Tue, 20 Jul 2021 at 17:32, Lee Jones <lee.jones@linaro.org> wrote:

> > > > On Tue, 20 Jul 2021, Emil Renner Berthing wrote:

> > > > > On Tue, 20 Jul 2021 at 17:07, Lee Jones <lee.jones@linaro.org> wrote:

> > > > > > On Sat, 26 Jun 2021, Emil Renner Berthing wrote:

> > > > > > > The BeagleV Starlight v0.9 board[1] doesn't have the IRQB line routed to

> > > > > > > the SoC, but it is still useful to be able to reach the PMIC over I2C

> > > > > > > for the other functionality it provides.

> > > > > > >

> > > > > > > [1] https://github.com/beagleboard/beaglev-starlight

> > > > > > >

> > > > > > > Signed-off-by: Emil Renner Berthing <kernel@esmil.dk>

> > > > > > > ---

> > > > > > >  .../devicetree/bindings/mfd/ti,tps65086.yaml  |  3 ---

> > > > > >

> > > > > > This is not present in my current tree.

> > > > > >

> > > > > > Looks like it's still *.txt.

> > > > > >

> > > > > > Am I missing a patch?

> > > > >

> > > > > Yes, the first patch in the series converts that to yaml. I'm quite

> > > > > sure I had the same list of recipients on all 4 mails in the series,

> > > > > so don't know why that should be missing.

> > > >

> > > > Oh, it's not marked as 'important' because it has open review comments

> > > > on it.

> > > >

> > > > Just have this for now then:

> > > >

> > > > For my own reference (apply this as-is to your sign-off block):

> > > >

> > > >   Acked-for-MFD-by: Lee Jones <lee.jones@linaro.org>

> > >

> > > Thanks! Do you want to have a look at 3/3 or should I just send a v2

> > > to fix the yaml conversion now?

> >

> > Patch 3 should be split.

> 

> Oh, how split? Split off the series or split into adding the "driver"

> and then add the cell to the parent?


I'm not overly concerned about the ordering.

Just split out the patch per-subsystem.

> > I think it should also s/restart/reset/.

> 

> Oh right yes. You mean the cell name needs to be .name =

> "tps65086-reset", right?


Right.

> I'll fix that anyway.


Ta.

-- 
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml b/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml
index ba638bd10a58..4b629fcc0df9 100644
--- a/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml
+++ b/Documentation/devicetree/bindings/mfd/ti,tps65086.yaml
@@ -87,9 +87,6 @@  additionalProperties: false
 required:
   - compatible
   - reg
-  - interrupts
-  - interrupt-controller
-  - '#interrupt-cells'
   - gpio-controller
   - '#gpio-cells'
   - regulators
diff --git a/drivers/mfd/tps65086.c b/drivers/mfd/tps65086.c
index 341466ef20cc..cc3478ee9a64 100644
--- a/drivers/mfd/tps65086.c
+++ b/drivers/mfd/tps65086.c
@@ -100,29 +100,30 @@  static int tps65086_probe(struct i2c_client *client,
 		 (char)((version & TPS65086_DEVICEID_OTP_MASK) >> 4) + 'A',
 		 (version & TPS65086_DEVICEID_REV_MASK) >> 6);
 
-	ret = regmap_add_irq_chip(tps->regmap, tps->irq, IRQF_ONESHOT, 0,
-				  &tps65086_irq_chip, &tps->irq_data);
-	if (ret) {
-		dev_err(tps->dev, "Failed to register IRQ chip\n");
-		return ret;
+	if (tps->irq > 0) {
+		ret = regmap_add_irq_chip(tps->regmap, tps->irq, IRQF_ONESHOT, 0,
+					  &tps65086_irq_chip, &tps->irq_data);
+		if (ret) {
+			dev_err(tps->dev, "Failed to register IRQ chip\n");
+			return ret;
+		}
 	}
 
 	ret = mfd_add_devices(tps->dev, PLATFORM_DEVID_AUTO, tps65086_cells,
 			      ARRAY_SIZE(tps65086_cells), NULL, 0,
 			      regmap_irq_get_domain(tps->irq_data));
-	if (ret) {
+	if (ret && tps->irq > 0)
 		regmap_del_irq_chip(tps->irq, tps->irq_data);
-		return ret;
-	}
 
-	return 0;
+	return ret;
 }
 
 static int tps65086_remove(struct i2c_client *client)
 {
 	struct tps65086 *tps = i2c_get_clientdata(client);
 
-	regmap_del_irq_chip(tps->irq, tps->irq_data);
+	if (tps->irq > 0)
+		regmap_del_irq_chip(tps->irq, tps->irq_data);
 
 	return 0;
 }