Re: [RFC 11/14] powerpc: Eliminate NO_IRQ usage

2013-08-23 Thread Geert Uytterhoeven
On Fri, Jul 26, 2013 at 5:56 AM, Grant Likely grant.lik...@secretlab.ca wrote:
 On Thu, Jul 25, 2013 at 3:58 PM, Geert Uytterhoeven
 ge...@linux-m68k.org wrote:
 On Wed, Jan 11, 2012 at 9:22 PM, Grant Likely grant.lik...@secretlab.ca 
 wrote:
 NO_IRQ is evil.  Stop using it in arch/powerpc and powerpc device drivers

 diff --git a/sound/soc/fsl/fsl_ssi.c b/sound/soc/fsl/fsl_ssi.c
 index 3e06696..55c6ff9 100644
 --- a/sound/soc/fsl/fsl_ssi.c
 +++ b/sound/soc/fsl/fsl_ssi.c
 @@ -666,7 +666,7 @@ static int __devinit fsl_ssi_probe(struct 
 platform_device *pdev)
 ssi_private-ssi_phys = res.start;

 ssi_private-irq = irq_of_parse_and_map(np, 0);
 -   if (ssi_private-irq == NO_IRQ) {
 +   if (!ssi_private-irq) {
 dev_err(pdev-dev, no irq for node %s\n, np-full_name);
 ret = -ENXIO;
 goto error_iomap;

 What's the plan with this patch?

 This is now failing on xtensa, as it's one of the architectures that doesn't
 define NO_IRQ. Only arm, c6x, mn10300, openrisc, parisc, powerpc, and sparc
 define it.

 Wow. I'd pretty much dropped that patch because I didn't have time to
 chase it down. It should be pursued though.

 In that particular case it is safe I think to apply the change. PPC
 defines NO_IRQ to be 0 anyway.

Note that we still have arches that define it as nonzero:

arch/arm/include/asm/irq.h:#define NO_IRQ ((unsigned int)(-1))
arch/mn10300/include/asm/irq.h:#define NO_IRQ INT_MAX
arch/openrisc/include/asm/irq.h:#define NO_IRQ (-1)
arch/parisc/include/asm/irq.h:#define NO_IRQ (-1)
arch/sparc/include/asm/irq_32.h:#define NO_IRQ 0x
arch/sparc/include/asm/irq_64.h:#define NO_IRQ 0x

Only c6x and powerpc use zero, and thus are ready to drop NO_IRQ.

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- ge...@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say programmer or something like that.
-- Linus Torvalds
___
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev


Re: [RFC 11/14] powerpc: Eliminate NO_IRQ usage

2013-08-23 Thread Geert Uytterhoeven
On Fri, Aug 23, 2013 at 3:18 PM, Geert Uytterhoeven
ge...@linux-m68k.org wrote:
 On Fri, Jul 26, 2013 at 5:56 AM, Grant Likely grant.lik...@secretlab.ca 
 wrote:
 On Thu, Jul 25, 2013 at 3:58 PM, Geert Uytterhoeven
 ge...@linux-m68k.org wrote:
 On Wed, Jan 11, 2012 at 9:22 PM, Grant Likely grant.lik...@secretlab.ca 
 wrote:
 NO_IRQ is evil.  Stop using it in arch/powerpc and powerpc device drivers

 diff --git a/sound/soc/fsl/fsl_ssi.c b/sound/soc/fsl/fsl_ssi.c
 index 3e06696..55c6ff9 100644
 --- a/sound/soc/fsl/fsl_ssi.c
 +++ b/sound/soc/fsl/fsl_ssi.c
 @@ -666,7 +666,7 @@ static int __devinit fsl_ssi_probe(struct 
 platform_device *pdev)
 ssi_private-ssi_phys = res.start;

 ssi_private-irq = irq_of_parse_and_map(np, 0);
 -   if (ssi_private-irq == NO_IRQ) {
 +   if (!ssi_private-irq) {
 dev_err(pdev-dev, no irq for node %s\n, np-full_name);
 ret = -ENXIO;
 goto error_iomap;

 What's the plan with this patch?

 This is now failing on xtensa, as it's one of the architectures that doesn't
 define NO_IRQ. Only arm, c6x, mn10300, openrisc, parisc, powerpc, and sparc
 define it.

 Wow. I'd pretty much dropped that patch because I didn't have time to
 chase it down. It should be pursued though.

 In that particular case it is safe I think to apply the change. PPC
 defines NO_IRQ to be 0 anyway.

 Note that we still have arches that define it as nonzero:

 arch/arm/include/asm/irq.h:#define NO_IRQ ((unsigned int)(-1))
 arch/mn10300/include/asm/irq.h:#define NO_IRQ INT_MAX
 arch/openrisc/include/asm/irq.h:#define NO_IRQ (-1)
 arch/parisc/include/asm/irq.h:#define NO_IRQ (-1)
 arch/sparc/include/asm/irq_32.h:#define NO_IRQ 0x
 arch/sparc/include/asm/irq_64.h:#define NO_IRQ 0x

 Only c6x and powerpc use zero, and thus are ready to drop NO_IRQ.

s390 just gained NO_IRQ support in -next, in commit
e15a9dcfdec29786d1830c5b7beaf02a288a89e1 (s390: convert interrupt
handling to use generic hardirq):

/* This number is used when no interrupt has been assigned */
#define NO_IRQ 0

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- ge...@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say programmer or something like that.
-- Linus Torvalds
___
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev


Re: [RFC 11/14] powerpc: Eliminate NO_IRQ usage

2013-07-25 Thread Geert Uytterhoeven
On Wed, Jan 11, 2012 at 9:22 PM, Grant Likely grant.lik...@secretlab.ca wrote:
 NO_IRQ is evil.  Stop using it in arch/powerpc and powerpc device drivers

 diff --git a/sound/soc/fsl/fsl_ssi.c b/sound/soc/fsl/fsl_ssi.c
 index 3e06696..55c6ff9 100644
 --- a/sound/soc/fsl/fsl_ssi.c
 +++ b/sound/soc/fsl/fsl_ssi.c
 @@ -666,7 +666,7 @@ static int __devinit fsl_ssi_probe(struct platform_device 
 *pdev)
 ssi_private-ssi_phys = res.start;

 ssi_private-irq = irq_of_parse_and_map(np, 0);
 -   if (ssi_private-irq == NO_IRQ) {
 +   if (!ssi_private-irq) {
 dev_err(pdev-dev, no irq for node %s\n, np-full_name);
 ret = -ENXIO;
 goto error_iomap;

What's the plan with this patch?

This is now failing on xtensa, as it's one of the architectures that doesn't
define NO_IRQ. Only arm, c6x, mn10300, openrisc, parisc, powerpc, and sparc
define it.

sound/soc/fsl/fsl_ssi.c:705:26: error: 'NO_IRQ' undeclared (first use
in this function)
make[4]: *** [sound/soc/fsl/fsl_ssi.o] Error 1

http://kisskb.ellerman.id.au/kisskb/buildresult/9187959/

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- ge...@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say programmer or something like that.
-- Linus Torvalds
___
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev


Re: [RFC 11/14] powerpc: Eliminate NO_IRQ usage

2013-07-25 Thread Grant Likely
On Thu, Jul 25, 2013 at 3:58 PM, Geert Uytterhoeven
ge...@linux-m68k.org wrote:
 On Wed, Jan 11, 2012 at 9:22 PM, Grant Likely grant.lik...@secretlab.ca 
 wrote:
 NO_IRQ is evil.  Stop using it in arch/powerpc and powerpc device drivers

 diff --git a/sound/soc/fsl/fsl_ssi.c b/sound/soc/fsl/fsl_ssi.c
 index 3e06696..55c6ff9 100644
 --- a/sound/soc/fsl/fsl_ssi.c
 +++ b/sound/soc/fsl/fsl_ssi.c
 @@ -666,7 +666,7 @@ static int __devinit fsl_ssi_probe(struct 
 platform_device *pdev)
 ssi_private-ssi_phys = res.start;

 ssi_private-irq = irq_of_parse_and_map(np, 0);
 -   if (ssi_private-irq == NO_IRQ) {
 +   if (!ssi_private-irq) {
 dev_err(pdev-dev, no irq for node %s\n, np-full_name);
 ret = -ENXIO;
 goto error_iomap;

 What's the plan with this patch?

 This is now failing on xtensa, as it's one of the architectures that doesn't
 define NO_IRQ. Only arm, c6x, mn10300, openrisc, parisc, powerpc, and sparc
 define it.

Wow. I'd pretty much dropped that patch because I didn't have time to
chase it down. It should be pursued though.

In that particular case it is safe I think to apply the change. PPC
defines NO_IRQ to be 0 anyway.

g.
___
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev