[1/4] ARM: tegra: nyan: Use proper IRQ type definitions

Submitted by Paul Kocialkowski on Aug. 28, 2016, 5:32 p.m.

Details

Message ID 20160828173246.32621-1-contact@paulk.fr
State New
Headers show

Commit Message

Paul Kocialkowski Aug. 28, 2016, 5:32 p.m.
This switches a few interrupt definitions that were using
GPIO_ACTIVE_HIGH as IRQ type, which is invalid.

Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
---
 arch/arm/boot/dts/tegra124-nyan.dtsi | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Jon Hunter Sept. 20, 2016, 5:15 p.m.
On 28/08/16 18:32, Paul Kocialkowski wrote:
> This switches a few interrupt definitions that were using
> GPIO_ACTIVE_HIGH as IRQ type, which is invalid.

May be you are right, but this does not describe why this is invalid.
Can you elaborate?

> Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
> ---
>  arch/arm/boot/dts/tegra124-nyan.dtsi | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/arm/boot/dts/tegra124-nyan.dtsi b/arch/arm/boot/dts/tegra124-nyan.dtsi
> index 271505e..30a77ec 100644
> --- a/arch/arm/boot/dts/tegra124-nyan.dtsi
> +++ b/arch/arm/boot/dts/tegra124-nyan.dtsi
> @@ -59,7 +59,7 @@
>  			compatible = "maxim,max98090";
>  			reg = <0x10>;
>  			interrupt-parent = <&gpio>;
> -			interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>;
> +			interrupts = <TEGRA_GPIO(H, 4) IRQ_TYPE_EDGE_FALLING>;

If this in invalid then the DT binding doc for the max98090 should be
updated as well.

>  		};
>  
>  		temperature-sensor@4c {
> @@ -325,7 +325,7 @@
>  					reg = <0x9>;
>  					interrupt-parent = <&gpio>;
>  					interrupts = <TEGRA_GPIO(J, 0)
> -							GPIO_ACTIVE_HIGH>;
> +							IRQ_TYPE_EDGE_BOTH>;
>  					ti,ac-detect-gpios = <&gpio
>  							TEGRA_GPIO(J, 0)
>  							GPIO_ACTIVE_HIGH>;
> 

Cheers
Jon
Paul Kocialkowski Sept. 20, 2016, 6:14 p.m.
Le mardi 20 septembre 2016 à 18:15 +0100, Jon Hunter a écrit :
> On 28/08/16 18:32, Paul Kocialkowski wrote:
> > 
> > This switches a few interrupt definitions that were using
> > GPIO_ACTIVE_HIGH as IRQ type, which is invalid.
> 
> May be you are right, but this does not describe why this is invalid.
> Can you elaborate?

GPIO_ACTIVE_HIGH is simply not the right kind of define to use in the
"interrupts" devicetree property. Values provided there are understood as
IRQ_TYPE_ defines.

Also, a similar commit[0] was pushed to the cros kernel tree.

Cheers,

[0]: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/f77288938d571b48c9736ac3703cea370c002434

> > Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
> > ---
> >  arch/arm/boot/dts/tegra124-nyan.dtsi | 4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> > 
> > diff --git a/arch/arm/boot/dts/tegra124-nyan.dtsi
> > b/arch/arm/boot/dts/tegra124-nyan.dtsi
> > index 271505e..30a77ec 100644
> > --- a/arch/arm/boot/dts/tegra124-nyan.dtsi
> > +++ b/arch/arm/boot/dts/tegra124-nyan.dtsi
> > @@ -59,7 +59,7 @@
> >  			compatible = "maxim,max98090";
> >  			reg = <0x10>;
> >  			interrupt-parent = <&gpio>;
> > -			interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>;
> > +			interrupts = <TEGRA_GPIO(H, 4)
> > IRQ_TYPE_EDGE_FALLING>;
> 
> If this in invalid then the DT binding doc for the max98090 should be
> updated as well.
> 
> > 
> >  		};
> >  
> >  		temperature-sensor@4c {
> > @@ -325,7 +325,7 @@
> >  					reg = <0x9>;
> >  					interrupt-parent = <&gpio>;
> >  					interrupts = <TEGRA_GPIO(J, 0)
> > -							GPIO_ACTIVE_HIGH>;
> > +							IRQ_TYPE_EDGE_BOTH>
> > ;
> >  					ti,ac-detect-gpios = <&gpio
> >  							TEGRA_GPIO(J, 0)
> >  							GPIO_ACTIVE_HIGH>;
> > 
> 
> Cheers
> Jon
>
Jon Hunter Sept. 21, 2016, 7:52 a.m.
On 20/09/16 19:14, Paul Kocialkowski wrote:
> * PGP Signed by an unknown key
> 
> Le mardi 20 septembre 2016 à 18:15 +0100, Jon Hunter a écrit :
>> On 28/08/16 18:32, Paul Kocialkowski wrote:
>>>
>>> This switches a few interrupt definitions that were using
>>> GPIO_ACTIVE_HIGH as IRQ type, which is invalid.
>>
>> May be you are right, but this does not describe why this is invalid.
>> Can you elaborate?
> 
> GPIO_ACTIVE_HIGH is simply not the right kind of define to use in the
> "interrupts" devicetree property. Values provided there are understood as
> IRQ_TYPE_ defines.

Right, but you are changing the type as GPIO_ACTIVE_HIGH = 0 and
IRQ_TYPE_EDGE_FALLING = 2 and there is no comment about why this has
been changed. It might be correct, but you need to explain it.

Jon
Paul Kocialkowski Sept. 21, 2016, 8:26 a.m.
Le mercredi 21 septembre 2016 à 08:52 +0100, Jon Hunter a écrit :
> On 20/09/16 19:14, Paul Kocialkowski wrote:
> > 
> > * PGP Signed by an unknown key
> > 
> > Le mardi 20 septembre 2016 à 18:15 +0100, Jon Hunter a écrit :
> > > 
> > > On 28/08/16 18:32, Paul Kocialkowski wrote:
> > > > 
> > > > 
> > > > This switches a few interrupt definitions that were using
> > > > GPIO_ACTIVE_HIGH as IRQ type, which is invalid.
> > > 
> > > May be you are right, but this does not describe why this is invalid.
> > > Can you elaborate?
> > 
> > GPIO_ACTIVE_HIGH is simply not the right kind of define to use in the
> > "interrupts" devicetree property. Values provided there are understood as
> > IRQ_TYPE_ defines.
> 
> Right, but you are changing the type as GPIO_ACTIVE_HIGH = 0 and
> IRQ_TYPE_EDGE_FALLING = 2 and there is no comment about why this has
> been changed. It might be correct, but you need to explain it.

This actually makes the IRQ trigger values consistent with the drivers, that
define them regardless of devicetree anyway. The max98090 driver
has IRQF_TRIGGER_FALLING and bq24735 has IRQF_TRIGGER_RISING |
IRQF_TRIGGER_FALLING.

This is really more of a cosmetic change, it doesn't impact actual use.
Jon Hunter Sept. 21, 2016, 9:06 a.m.
On 21/09/16 09:26, Paul Kocialkowski wrote:
> * PGP Signed by an unknown key
> 
> Le mercredi 21 septembre 2016 à 08:52 +0100, Jon Hunter a écrit :
>> On 20/09/16 19:14, Paul Kocialkowski wrote:
>>>
>>>> Old Signed by an unknown key
>>>
>>> Le mardi 20 septembre 2016 à 18:15 +0100, Jon Hunter a écrit :
>>>>
>>>> On 28/08/16 18:32, Paul Kocialkowski wrote:
>>>>>
>>>>>
>>>>> This switches a few interrupt definitions that were using
>>>>> GPIO_ACTIVE_HIGH as IRQ type, which is invalid.
>>>>
>>>> May be you are right, but this does not describe why this is invalid.
>>>> Can you elaborate?
>>>
>>> GPIO_ACTIVE_HIGH is simply not the right kind of define to use in the
>>> "interrupts" devicetree property. Values provided there are understood as
>>> IRQ_TYPE_ defines.
>>
>> Right, but you are changing the type as GPIO_ACTIVE_HIGH = 0 and
>> IRQ_TYPE_EDGE_FALLING = 2 and there is no comment about why this has
>> been changed. It might be correct, but you need to explain it.
> 
> This actually makes the IRQ trigger values consistent with the drivers, that
> define them regardless of devicetree anyway. The max98090 driver
> has IRQF_TRIGGER_FALLING and bq24735 has IRQF_TRIGGER_RISING |
> IRQF_TRIGGER_FALLING.
> 
> This is really more of a cosmetic change, it doesn't impact actual use.

So you are saying that the drivers don't actually use the DT types? May
be that is ok, and yes this is cosmetic, but this should be stated in
the changelog as it is not clear what is going on here.

Cheers
Jon
Paul Kocialkowski Sept. 21, 2016, 9:31 a.m.
Resending with the right CC chain.

Le mercredi 21 septembre 2016 à 10:06 +0100, Jon Hunter a écrit :
> On 21/09/16 09:26, Paul Kocialkowski wrote:
> > 
> > 
> > * PGP Signed by an unknown key
> > 
> > Le mercredi 21 septembre 2016 à 08:52 +0100, Jon Hunter a écrit :
> > > 
> > > 
> > > On 20/09/16 19:14, Paul Kocialkowski wrote:
> > > > 
> > > > 
> > > > 
> > > > > 
> > > > > 
> > > > > Old Signed by an unknown key
> > > > 
> > > > Le mardi 20 septembre 2016 à 18:15 +0100, Jon Hunter a écrit :
> > > > > 
> > > > > 
> > > > > 
> > > > > On 28/08/16 18:32, Paul Kocialkowski wrote:
> > > > > > 
> > > > > > 
> > > > > > 
> > > > > > 
> > > > > > This switches a few interrupt definitions that were using
> > > > > > GPIO_ACTIVE_HIGH as IRQ type, which is invalid.
> > > > > 
> > > > > May be you are right, but this does not describe why this is invalid.
> > > > > Can you elaborate?
> > > > 
> > > > GPIO_ACTIVE_HIGH is simply not the right kind of define to use in the
> > > > "interrupts" devicetree property. Values provided there are understood
> > > > as
> > > > IRQ_TYPE_ defines.
> > > 
> > > Right, but you are changing the type as GPIO_ACTIVE_HIGH = 0 and
> > > IRQ_TYPE_EDGE_FALLING = 2 and there is no comment about why this has
> > > been changed. It might be correct, but you need to explain it.
> > 
> > This actually makes the IRQ trigger values consistent with the drivers, that
> > define them regardless of devicetree anyway. The max98090 driver
> > has IRQF_TRIGGER_FALLING and bq24735 has IRQF_TRIGGER_RISING |
> > IRQF_TRIGGER_FALLING.
> > 
> > This is really more of a cosmetic change, it doesn't impact actual use.
> 
> So you are saying that the drivers don't actually use the DT types?

It appears so. At least they are hardcoded in the kernel driver.

> 
>  May be that is ok, and yes this is cosmetic, but this should be stated in
> the changelog as it is not clear what is going on here.

Fair enough, will do in v2.

Patch hide | download patch | download mbox

diff --git a/arch/arm/boot/dts/tegra124-nyan.dtsi b/arch/arm/boot/dts/tegra124-nyan.dtsi
index 271505e..30a77ec 100644
--- a/arch/arm/boot/dts/tegra124-nyan.dtsi
+++ b/arch/arm/boot/dts/tegra124-nyan.dtsi
@@ -59,7 +59,7 @@ 
 			compatible = "maxim,max98090";
 			reg = <0x10>;
 			interrupt-parent = <&gpio>;
-			interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>;
+			interrupts = <TEGRA_GPIO(H, 4) IRQ_TYPE_EDGE_FALLING>;
 		};
 
 		temperature-sensor@4c {
@@ -325,7 +325,7 @@ 
 					reg = <0x9>;
 					interrupt-parent = <&gpio>;
 					interrupts = <TEGRA_GPIO(J, 0)
-							GPIO_ACTIVE_HIGH>;
+							IRQ_TYPE_EDGE_BOTH>;
 					ti,ac-detect-gpios = <&gpio
 							TEGRA_GPIO(J, 0)
 							GPIO_ACTIVE_HIGH>;