linux-samsung-soc.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/5] Correctly handle plaform_get_irq()'s result in the i2C drivers
@ 2021-07-04 14:32 Sergey Shtylyov
  2021-07-04 14:45 ` [PATCH v2 4/5] i2c: s3c2410: fix IRQ check Sergey Shtylyov
  2021-08-11 20:12 ` [PATCH v2 0/5] Correctly handle plaform_get_irq()'s result in the i2C drivers Sergey Shtylyov
  0 siblings, 2 replies; 6+ messages in thread
From: Sergey Shtylyov @ 2021-07-04 14:32 UTC (permalink / raw)
  To: linux-i2c
  Cc: Qii Wang, Matthias Brugger, linux-arm-kernel, linux-mediatek,
	linux-samsung-soc, George Cherian

Here are 5 patches against the 'i2c/for-current' branch of Wolfram's 'linux.git' repo.
The affected drivers call platform_get_irq() but mis-interprete its result -- they consider
IRQ0 as error and (sometimes) the real error codes as valid IRQs... :-/

[1/5] i2c: hix5hd2: fix IRQ check
[2/5] i2c: mt65xx: fix IRQ check
[3/5] i2c: pmcmsp: fix IRQ check
[4/5] i2c: s3c2410: fix IRQ check
[5/5] i2c: xlp9xx: fix main IRQ check

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

* [PATCH v2 4/5] i2c: s3c2410: fix IRQ check
  2021-07-04 14:32 [PATCH v2 0/5] Correctly handle plaform_get_irq()'s result in the i2C drivers Sergey Shtylyov
@ 2021-07-04 14:45 ` Sergey Shtylyov
  2021-07-05  7:46   ` Krzysztof Kozlowski
  2021-08-17 20:08   ` Wolfram Sang
  2021-08-11 20:12 ` [PATCH v2 0/5] Correctly handle plaform_get_irq()'s result in the i2C drivers Sergey Shtylyov
  1 sibling, 2 replies; 6+ messages in thread
From: Sergey Shtylyov @ 2021-07-04 14:45 UTC (permalink / raw)
  To: linux-i2c; +Cc: linux-samsung-soc, Krzysztof Kozlowski, linux-arm-kernel

Iff platform_get_irq() returns 0, the driver's probe() method will return 0
early (as if the method's call was successful).  Let's consider IRQ0 valid
for simplicity -- devm_request_irq() can always override that decision...

Fixes: 2bbd681ba2b ("i2c-s3c2410: Change IRQ to be plain integer.")
Signed-off-by: Sergey Shtylyov <s.shtylyov@omp.ru>

---
 drivers/i2c/busses/i2c-s3c2410.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Index: linux/drivers/i2c/busses/i2c-s3c2410.c
===================================================================
--- linux.orig/drivers/i2c/busses/i2c-s3c2410.c
+++ linux/drivers/i2c/busses/i2c-s3c2410.c
@@ -1137,7 +1137,7 @@ static int s3c24xx_i2c_probe(struct plat
 	 */
 	if (!(i2c->quirks & QUIRK_POLL)) {
 		i2c->irq = ret = platform_get_irq(pdev, 0);
-		if (ret <= 0) {
+		if (ret < 0) {
 			dev_err(&pdev->dev, "cannot find IRQ\n");
 			clk_unprepare(i2c->clk);
 			return ret;



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

* Re: [PATCH v2 4/5] i2c: s3c2410: fix IRQ check
  2021-07-04 14:45 ` [PATCH v2 4/5] i2c: s3c2410: fix IRQ check Sergey Shtylyov
@ 2021-07-05  7:46   ` Krzysztof Kozlowski
  2021-08-17 20:08   ` Wolfram Sang
  1 sibling, 0 replies; 6+ messages in thread
From: Krzysztof Kozlowski @ 2021-07-05  7:46 UTC (permalink / raw)
  To: Sergey Shtylyov, linux-i2c; +Cc: linux-samsung-soc, linux-arm-kernel

On 04/07/2021 16:45, Sergey Shtylyov wrote:
> Iff platform_get_irq() returns 0, the driver's probe() method will return 0
> early (as if the method's call was successful).  Let's consider IRQ0 valid
> for simplicity -- devm_request_irq() can always override that decision...
> 
> Fixes: 2bbd681ba2b ("i2c-s3c2410: Change IRQ to be plain integer.")
> Signed-off-by: Sergey Shtylyov <s.shtylyov@omp.ru>
> 
> ---
>  drivers/i2c/busses/i2c-s3c2410.c |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)


Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>


Best regards,
Krzysztof

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

* Re: [PATCH v2 0/5] Correctly handle plaform_get_irq()'s result in the i2C drivers
  2021-07-04 14:32 [PATCH v2 0/5] Correctly handle plaform_get_irq()'s result in the i2C drivers Sergey Shtylyov
  2021-07-04 14:45 ` [PATCH v2 4/5] i2c: s3c2410: fix IRQ check Sergey Shtylyov
@ 2021-08-11 20:12 ` Sergey Shtylyov
  2021-08-11 20:14   ` Sergey Shtylyov
  1 sibling, 1 reply; 6+ messages in thread
From: Sergey Shtylyov @ 2021-08-11 20:12 UTC (permalink / raw)
  To: linux-i2c, Wolfram Sang
  Cc: Qii Wang, Matthias Brugger, linux-arm-kernel, linux-mediatek,
	linux-samsung-soc, George Cherian

On 7/4/21 5:32 PM, Sergey Shtylyov wrote:

> Here are 5 patches against the 'i2c/for-current' branch of Wolfram's 'linux.git' repo.
> The affected drivers call platform_get_irq() but mis-interprete its result -- they consider
> IRQ0 as error and (sometimes) the real error codes as valid IRQs... :-/
> 
> [1/5] i2c: hix5hd2: fix IRQ check
> [2/5] i2c: mt65xx: fix IRQ check
> [3/5] i2c: pmcmsp: fix IRQ check
> [4/5] i2c: s3c2410: fix IRQ check
> [5/5] i2c: xlp9xx: fix main IRQ check

   Wolfram, hat's up with this series (its status in the patchwork is still "new")? 

MBR, Sergey

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

* Re: [PATCH v2 0/5] Correctly handle plaform_get_irq()'s result in the i2C drivers
  2021-08-11 20:12 ` [PATCH v2 0/5] Correctly handle plaform_get_irq()'s result in the i2C drivers Sergey Shtylyov
@ 2021-08-11 20:14   ` Sergey Shtylyov
  0 siblings, 0 replies; 6+ messages in thread
From: Sergey Shtylyov @ 2021-08-11 20:14 UTC (permalink / raw)
  To: linux-i2c, Wolfram Sang
  Cc: Qii Wang, Matthias Brugger, linux-arm-kernel, linux-mediatek,
	linux-samsung-soc, George Cherian

On 8/11/21 11:12 PM, Sergey Shtylyov wrote:

>> Here are 5 patches against the 'i2c/for-current' branch of Wolfram's 'linux.git' repo.
>> The affected drivers call platform_get_irq() but mis-interprete its result -- they consider
>> IRQ0 as error and (sometimes) the real error codes as valid IRQs... :-/
>>
>> [1/5] i2c: hix5hd2: fix IRQ check
>> [2/5] i2c: mt65xx: fix IRQ check
>> [3/5] i2c: pmcmsp: fix IRQ check
>> [4/5] i2c: s3c2410: fix IRQ check
>> [5/5] i2c: xlp9xx: fix main IRQ check
> 
>    Wolfram, hat's up with this series (its status in the patchwork is still "new")? 

   What's, of/c. :-)

MBR, Sergey


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

* Re: [PATCH v2 4/5] i2c: s3c2410: fix IRQ check
  2021-07-04 14:45 ` [PATCH v2 4/5] i2c: s3c2410: fix IRQ check Sergey Shtylyov
  2021-07-05  7:46   ` Krzysztof Kozlowski
@ 2021-08-17 20:08   ` Wolfram Sang
  1 sibling, 0 replies; 6+ messages in thread
From: Wolfram Sang @ 2021-08-17 20:08 UTC (permalink / raw)
  To: Sergey Shtylyov
  Cc: linux-i2c, linux-samsung-soc, Krzysztof Kozlowski, linux-arm-kernel

[-- Attachment #1: Type: text/plain, Size: 467 bytes --]

On Sun, Jul 04, 2021 at 05:45:25PM +0300, Sergey Shtylyov wrote:
> Iff platform_get_irq() returns 0, the driver's probe() method will return 0
> early (as if the method's call was successful).  Let's consider IRQ0 valid
> for simplicity -- devm_request_irq() can always override that decision...
> 
> Fixes: 2bbd681ba2b ("i2c-s3c2410: Change IRQ to be plain integer.")
> Signed-off-by: Sergey Shtylyov <s.shtylyov@omp.ru>
> 

Applied to for-next, thanks!


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

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

end of thread, other threads:[~2021-08-17 20:08 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-04 14:32 [PATCH v2 0/5] Correctly handle plaform_get_irq()'s result in the i2C drivers Sergey Shtylyov
2021-07-04 14:45 ` [PATCH v2 4/5] i2c: s3c2410: fix IRQ check Sergey Shtylyov
2021-07-05  7:46   ` Krzysztof Kozlowski
2021-08-17 20:08   ` Wolfram Sang
2021-08-11 20:12 ` [PATCH v2 0/5] Correctly handle plaform_get_irq()'s result in the i2C drivers Sergey Shtylyov
2021-08-11 20:14   ` Sergey Shtylyov

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).