Re: [PATCH v2 1/4] MFD: Palmas: Check if interrupts property exists and then only request irq

2013-06-18 Thread Stephen Warren
On 06/18/2013 04:01 AM, J Keerthy wrote:
 Check if interrupts property exists and then only request irq.
 On some boards INT line might not be connected to a valid
 irq line on the application processor. Hence keeping a check
 before requesting irq.

When there is no interrupts property, surely i2c-irq == 0, which is an
invalid IRQ, and hence there's no need to check this before copying the
value?

In other words, I think this whole patch could just be:

+   palmas-irq = i2c-irq;

right?
--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v2 1/4] MFD: Palmas: Check if interrupts property exists and then only request irq

2013-06-18 Thread Stephen Warren
On 06/18/2013 10:54 AM, J, KEERTHY wrote:
 Hi Stephen,
 
 -Original Message-
 From: Stephen Warren [mailto:swar...@wwwdotorg.org]
 Sent: Tuesday, June 18, 2013 9:22 PM
 To: J, KEERTHY
 Cc: linux-omap@vger.kernel.org; broo...@kernel.org;
 ldewan...@nvidia.com; sa...@linux.intel.com; grant.lik...@secretlab.ca;
 swar...@nvidia.com; linux-ker...@vger.kernel.org; linux-
 d...@vger.kernel.org; g...@slimlogic.co.uk
 Subject: Re: [PATCH v2 1/4] MFD: Palmas: Check if interrupts property
 exists and then only request irq

 On 06/18/2013 04:01 AM, J Keerthy wrote:
 Check if interrupts property exists and then only request irq.
 On some boards INT line might not be connected to a valid irq line on
 the application processor. Hence keeping a check before requesting
 irq.

 When there is no interrupts property, surely i2c-irq == 0, which is an
 invalid IRQ, and hence there's no need to check this before copying the
 value?
 
 The intent here is NOT to request irq with 0 or Invalid IRQ.

Sure.

 The board File will not populate the interrupts entry if the INT line is not
 Connected.

Do you mean the interrupts DT property won't be present if there is no
interrupt. If so, sure.

 Hence the patch checks for the 'interrupts' property.

That shouldn't be necessary; IIRC, the I2C core has already parsed the
interrupts property if there was one, and if there wasn't, it has set
i2c-irq to some invalid value already.

So, you simply need to check the value in i2c-irq, and don't need to
look at the DT at all.
--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [PATCH v2 1/4] MFD: Palmas: Check if interrupts property exists and then only request irq

2013-06-18 Thread J, KEERTHY
Hi Stephen,

 -Original Message-
 From: Stephen Warren [mailto:swar...@wwwdotorg.org]
 Sent: Tuesday, June 18, 2013 9:22 PM
 To: J, KEERTHY
 Cc: linux-omap@vger.kernel.org; broo...@kernel.org;
 ldewan...@nvidia.com; sa...@linux.intel.com; grant.lik...@secretlab.ca;
 swar...@nvidia.com; linux-ker...@vger.kernel.org; linux-
 d...@vger.kernel.org; g...@slimlogic.co.uk
 Subject: Re: [PATCH v2 1/4] MFD: Palmas: Check if interrupts property
 exists and then only request irq
 
 On 06/18/2013 04:01 AM, J Keerthy wrote:
  Check if interrupts property exists and then only request irq.
  On some boards INT line might not be connected to a valid irq line on
  the application processor. Hence keeping a check before requesting
  irq.
 
 When there is no interrupts property, surely i2c-irq == 0, which is an
 invalid IRQ, and hence there's no need to check this before copying the
 value?

The intent here is NOT to request irq with 0 or Invalid IRQ. The board
File will not populate the interrupts entry if the INT line is not
Connected. Hence the patch checks for the 'interrupts' property.

This is essential since I do not want the probe to return error
Just because the i2c-irq == 0. The explicit check for the property
Ensures that the board does not have the INT line connected to
A valid interrupt line on the other side.

 
 In other words, I think this whole patch could just be:
 
 + palmas-irq = i2c-irq;
 
 right?

Just this will cause a probe failure. That is not what is needed.
Instead the probe should continue skipping irq part.

Regards,
Keerthy
--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [PATCH v2 1/4] MFD: Palmas: Check if interrupts property exists and then only request irq

2013-06-18 Thread J, KEERTHY


 -Original Message-
 From: Stephen Warren [mailto:swar...@wwwdotorg.org]
 Sent: Tuesday, June 18, 2013 10:38 PM
 To: J, KEERTHY
 Cc: linux-omap@vger.kernel.org; broo...@kernel.org;
 ldewan...@nvidia.com; sa...@linux.intel.com; grant.lik...@secretlab.ca;
 swar...@nvidia.com; linux-ker...@vger.kernel.org; linux-
 d...@vger.kernel.org; g...@slimlogic.co.uk
 Subject: Re: [PATCH v2 1/4] MFD: Palmas: Check if interrupts property
 exists and then only request irq
 
 On 06/18/2013 10:54 AM, J, KEERTHY wrote:
  Hi Stephen,
 
  -Original Message-
  From: Stephen Warren [mailto:swar...@wwwdotorg.org]
  Sent: Tuesday, June 18, 2013 9:22 PM
  To: J, KEERTHY
  Cc: linux-omap@vger.kernel.org; broo...@kernel.org;
  ldewan...@nvidia.com; sa...@linux.intel.com;
  grant.lik...@secretlab.ca; swar...@nvidia.com;
  linux-ker...@vger.kernel.org; linux- d...@vger.kernel.org;
  g...@slimlogic.co.uk
  Subject: Re: [PATCH v2 1/4] MFD: Palmas: Check if interrupts
 property
  exists and then only request irq
 
  On 06/18/2013 04:01 AM, J Keerthy wrote:
  Check if interrupts property exists and then only request irq.
  On some boards INT line might not be connected to a valid irq line
  on the application processor. Hence keeping a check before
  requesting irq.
 
  When there is no interrupts property, surely i2c-irq == 0, which is
  an invalid IRQ, and hence there's no need to check this before
  copying the value?
 
  The intent here is NOT to request irq with 0 or Invalid IRQ.
 
 Sure.
 
  The board File will not populate the interrupts entry if the INT line
  is not Connected.
 
 Do you mean the interrupts DT property won't be present if there is no
 interrupt. If so, sure.

Yes.

 
  Hence the patch checks for the 'interrupts' property.
 
 That shouldn't be necessary; IIRC, the I2C core has already parsed the
 interrupts property if there was one, and if there wasn't, it has set
 i2c-irq to some invalid value already.
 
 So, you simply need to check the value in i2c-irq, and don't need to
 look at the DT at all.

Instead of checking the Invalid irq value which most likely can be 0.
I am not sure.
I am explicitly checking if the interrupts property exists or not.

If not present then It throws out a warning. Either there is no
Valid INT line connection or the DeviceTree was not populated fully.

This additional piece of information is good to have in the driver
IMHO. Let me know if this is rational enough to have in the driver.

Regards,
Keerthy
--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v2 1/4] MFD: Palmas: Check if interrupts property exists and then only request irq

2013-06-18 Thread Stephen Warren
On 06/18/2013 11:19 AM, J, KEERTHY wrote:
 
 
 -Original Message-
 From: Stephen Warren [mailto:swar...@wwwdotorg.org]
 Sent: Tuesday, June 18, 2013 10:38 PM
 To: J, KEERTHY
 Cc: linux-omap@vger.kernel.org; broo...@kernel.org;
 ldewan...@nvidia.com; sa...@linux.intel.com; grant.lik...@secretlab.ca;
 swar...@nvidia.com; linux-ker...@vger.kernel.org; linux-
 d...@vger.kernel.org; g...@slimlogic.co.uk
 Subject: Re: [PATCH v2 1/4] MFD: Palmas: Check if interrupts property
 exists and then only request irq

 On 06/18/2013 10:54 AM, J, KEERTHY wrote:
 Hi Stephen,

 -Original Message-
 From: Stephen Warren [mailto:swar...@wwwdotorg.org]
 Sent: Tuesday, June 18, 2013 9:22 PM
 To: J, KEERTHY
 Cc: linux-omap@vger.kernel.org; broo...@kernel.org;
 ldewan...@nvidia.com; sa...@linux.intel.com;
 grant.lik...@secretlab.ca; swar...@nvidia.com;
 linux-ker...@vger.kernel.org; linux- d...@vger.kernel.org;
 g...@slimlogic.co.uk
 Subject: Re: [PATCH v2 1/4] MFD: Palmas: Check if interrupts
 property
 exists and then only request irq

 On 06/18/2013 04:01 AM, J Keerthy wrote:
 Check if interrupts property exists and then only request irq.
 On some boards INT line might not be connected to a valid irq line
 on the application processor. Hence keeping a check before
 requesting irq.

 When there is no interrupts property, surely i2c-irq == 0, which is
 an invalid IRQ, and hence there's no need to check this before
 copying the value?

 The intent here is NOT to request irq with 0 or Invalid IRQ.

 Sure.

 The board File will not populate the interrupts entry if the INT line
 is not Connected.

 Do you mean the interrupts DT property won't be present if there is no
 interrupt. If so, sure.
 
 Yes.
 

 Hence the patch checks for the 'interrupts' property.

 That shouldn't be necessary; IIRC, the I2C core has already parsed the
 interrupts property if there was one, and if there wasn't, it has set
 i2c-irq to some invalid value already.

 So, you simply need to check the value in i2c-irq, and don't need to
 look at the DT at all.
 
 Instead of checking the Invalid irq value which most likely can be 0.
 I am not sure.
 I am explicitly checking if the interrupts property exists or not.
 
 If not present then It throws out a warning. Either there is no
 Valid INT line connection or the DeviceTree was not populated fully.
 
 This additional piece of information is good to have in the driver
 IMHO. Let me know if this is rational enough to have in the driver.

No, you should just check the IRQ number.

Consider this:

If the device was instantiated from a board file *or* a device tree,
i2c-irq is correctly set. Hence, checking that value works in both cases.

If you check the interrupts DT property, that will only work if the
device was instantiated from device tree, and not if it was instantiated
from a board file; the property will never exist in the board file case,
and hence you'll never be able to have a board file provide an interrupt.
--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [PATCH v2 1/4] MFD: Palmas: Check if interrupts property exists and then only request irq

2013-06-18 Thread J, KEERTHY


 -Original Message-
 From: Stephen Warren [mailto:swar...@wwwdotorg.org]
 Sent: Tuesday, June 18, 2013 10:53 PM
 To: J, KEERTHY
 Cc: linux-omap@vger.kernel.org; broo...@kernel.org;
 ldewan...@nvidia.com; sa...@linux.intel.com; grant.lik...@secretlab.ca;
 swar...@nvidia.com; linux-ker...@vger.kernel.org; linux-
 d...@vger.kernel.org; g...@slimlogic.co.uk
 Subject: Re: [PATCH v2 1/4] MFD: Palmas: Check if interrupts property
 exists and then only request irq
 
 On 06/18/2013 11:19 AM, J, KEERTHY wrote:
 
 
  -Original Message-
  From: Stephen Warren [mailto:swar...@wwwdotorg.org]
  Sent: Tuesday, June 18, 2013 10:38 PM
  To: J, KEERTHY
  Cc: linux-omap@vger.kernel.org; broo...@kernel.org;
  ldewan...@nvidia.com; sa...@linux.intel.com;
  grant.lik...@secretlab.ca; swar...@nvidia.com;
  linux-ker...@vger.kernel.org; linux- d...@vger.kernel.org;
  g...@slimlogic.co.uk
  Subject: Re: [PATCH v2 1/4] MFD: Palmas: Check if interrupts
 property
  exists and then only request irq
 
  On 06/18/2013 10:54 AM, J, KEERTHY wrote:
  Hi Stephen,
 
  -Original Message-
  From: Stephen Warren [mailto:swar...@wwwdotorg.org]
  Sent: Tuesday, June 18, 2013 9:22 PM
  To: J, KEERTHY
  Cc: linux-omap@vger.kernel.org; broo...@kernel.org;
  ldewan...@nvidia.com; sa...@linux.intel.com;
  grant.lik...@secretlab.ca; swar...@nvidia.com;
  linux-ker...@vger.kernel.org; linux- d...@vger.kernel.org;
  g...@slimlogic.co.uk
  Subject: Re: [PATCH v2 1/4] MFD: Palmas: Check if interrupts
  property
  exists and then only request irq
 
  On 06/18/2013 04:01 AM, J Keerthy wrote:
  Check if interrupts property exists and then only request irq.
  On some boards INT line might not be connected to a valid irq
 line
  on the application processor. Hence keeping a check before
  requesting irq.
 
  When there is no interrupts property, surely i2c-irq == 0, which
  is an invalid IRQ, and hence there's no need to check this before
  copying the value?
 
  The intent here is NOT to request irq with 0 or Invalid IRQ.
 
  Sure.
 
  The board File will not populate the interrupts entry if the INT
  line is not Connected.
 
  Do you mean the interrupts DT property won't be present if there is
  no interrupt. If so, sure.
 
  Yes.
 
 
  Hence the patch checks for the 'interrupts' property.
 
  That shouldn't be necessary; IIRC, the I2C core has already parsed
  the interrupts property if there was one, and if there wasn't, it
 has
  set
  i2c-irq to some invalid value already.
 
  So, you simply need to check the value in i2c-irq, and don't need
 to
  look at the DT at all.
 
  Instead of checking the Invalid irq value which most likely can be 0.
  I am not sure.
  I am explicitly checking if the interrupts property exists or not.
 
  If not present then It throws out a warning. Either there is no Valid
  INT line connection or the DeviceTree was not populated fully.
 
  This additional piece of information is good to have in the driver
  IMHO. Let me know if this is rational enough to have in the driver.
 
 No, you should just check the IRQ number.

Hmmm...so something like (!i2c-irq)

 
 Consider this:
 
 If the device was instantiated from a board file *or* a device tree,
 i2c-irq is correctly set. Hence, checking that value works in both
 cases.
 
 If you check the interrupts DT property, that will only work if the
 device was instantiated from device tree, and not if it was
 instantiated from a board file; the property will never exist in the
 board file case, and hence you'll never be able to have a board file
 provide an interrupt.

The board file approach is getting deprecated for this. I
Myself removed board file related pdata stuff in one of the patches.

http://www.mail-archive.com/linux-omap@vger.kernel.org/msg90598.html

So going the DeviceTree way.

Regards,
Keerthy



--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v2 1/4] MFD: Palmas: Check if interrupts property exists and then only request irq

2013-06-18 Thread Mark Brown
On Tue, Jun 18, 2013 at 11:22:41AM -0600, Stephen Warren wrote:

 If the device was instantiated from a board file *or* a device tree,
 i2c-irq is correctly set. Hence, checking that value works in both cases.

The same thing will happen with any other firmware interface that gets
introduced in the future - one of the goals with factoring all this out
into the bus code is that it means the driver doesn't need to have any
special handling.

 If you check the interrupts DT property, that will only work if the
 device was instantiated from device tree, and not if it was instantiated
 from a board file; the property will never exist in the board file case,
 and hence you'll never be able to have a board file provide an interrupt.

Exactly.


signature.asc
Description: Digital signature


Re: [PATCH v2 1/4] MFD: Palmas: Check if interrupts property exists and then only request irq

2013-06-18 Thread Stephen Warren
On 06/18/2013 11:33 AM, J, KEERTHY wrote:
 Stephen Warren wrote at Tuesday, June 18, 2013 10:53 PM:
... No, you should just check the IRQ number.
 
 Hmmm...so something like (!i2c-irq)

Yes.

 Consider this:

 If the device was instantiated from a board file *or* a device tree,
 i2c-irq is correctly set. Hence, checking that value works in both
 cases.

 If you check the interrupts DT property, that will only work if the
 device was instantiated from device tree, and not if it was
 instantiated from a board file; the property will never exist in the
 board file case, and hence you'll never be able to have a board file
 provide an interrupt.
 
 The board file approach is getting deprecated for this. I
 Myself removed board file related pdata stuff in one of the patches.
 
 http://www.mail-archive.com/linux-omap@vger.kernel.org/msg90598.html
 
 So going the DeviceTree way.

Even if you're 100% sure this driver will only ever work with DT (which
seems like a bad assumption to make no matter what the circumstance),
it'd still be best to detect whether an IRQ was specified in a generic
way. That way, nobody will read this driver, assume the code is generic,
and just copy/paste it without thinking.
--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [PATCH v2 1/4] MFD: Palmas: Check if interrupts property exists and then only request irq

2013-06-18 Thread J, KEERTHY
Hi Stephen,

 -Original Message-
 From: Stephen Warren [mailto:swar...@wwwdotorg.org]
 Sent: Wednesday, June 19, 2013 12:42 AM
 To: J, KEERTHY
 Cc: linux-omap@vger.kernel.org; broo...@kernel.org;
 ldewan...@nvidia.com; sa...@linux.intel.com; grant.lik...@secretlab.ca;
 swar...@nvidia.com; linux-ker...@vger.kernel.org; linux-
 d...@vger.kernel.org; g...@slimlogic.co.uk
 Subject: Re: [PATCH v2 1/4] MFD: Palmas: Check if interrupts property
 exists and then only request irq
 
 On 06/18/2013 11:33 AM, J, KEERTHY wrote:
  Stephen Warren wrote at Tuesday, June 18, 2013 10:53 PM:
 ... No, you should just check the IRQ number.
 
  Hmmm...so something like (!i2c-irq)
 
 Yes.

Ok.

 
  Consider this:
 
  If the device was instantiated from a board file *or* a device tree,
  i2c-irq is correctly set. Hence, checking that value works in both
  cases.
 
  If you check the interrupts DT property, that will only work if the
  device was instantiated from device tree, and not if it was
  instantiated from a board file; the property will never exist in the
  board file case, and hence you'll never be able to have a board file
  provide an interrupt.
 
  The board file approach is getting deprecated for this. I Myself
  removed board file related pdata stuff in one of the patches.
 
  http://www.mail-archive.com/linux-omap@vger.kernel.org/msg90598.html
 
  So going the DeviceTree way.
 
 Even if you're 100% sure this driver will only ever work with DT (which
 seems like a bad assumption to make no matter what the circumstance),
 it'd still be best to detect whether an IRQ was specified in a generic
 way. That way, nobody will read this driver, assume the code is
 generic, and just copy/paste it without thinking.

Ok. I understand. I will incorporate this.

Thanks,
Keerthy
--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html