All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] ARM: S3C24XX: Correct NR_IRQS definition for s3c2440
@ 2013-04-07 20:22 ` Sylwester Nawrocki
  0 siblings, 0 replies; 8+ messages in thread
From: Sylwester Nawrocki @ 2013-04-07 20:22 UTC (permalink / raw)
  To: kgene.kim
  Cc: linux-samsung-soc, linux-arm-kernel, Sylwester Nawrocki,
	Heiko Stübner, Tomasz Figa

Due to NR_IRQS being incorrectly defined not all IRQ domains can
be registered for S3C2440. It causes following errors on a s3c2440
SoC based board:

NR_IRQS:89
S3C2440: IRQ Support
irq: clearing pending status 00000002
------------[ cut here ]------------
WARNING: at kernel/irq/irqdomain.c:234 0xc0056ed0()
...
irq: could not create irq-domain
...
s3c2410-wdt s3c2410-wdt: failed to install irq (-22)
s3c2410-wdt: probe of s3c2410-wdt failed with error -22
...
samsung-uart s3c2440-uart.0: cannot get irq 74

Fix this by increasing NR_IRQS to at least (IRQ_S3C2443_AC97 + 1)
if CPU_S3C2440 is selected, so the subintc IRQ domain gets properly
registered.

Cc: Heiko Stübner <heiko@sntech.de>
Signed-off-by: Tomasz Figa <tomasz.figa@gmail.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
---
 arch/arm/mach-s3c24xx/include/mach/irqs.h |    4 +---
 1 files changed, 1 insertions(+), 3 deletions(-)

diff --git a/arch/arm/mach-s3c24xx/include/mach/irqs.h b/arch/arm/mach-s3c24xx/include/mach/irqs.h
index 43cada8..b6dd4cb 100644
--- a/arch/arm/mach-s3c24xx/include/mach/irqs.h
+++ b/arch/arm/mach-s3c24xx/include/mach/irqs.h
@@ -192,10 +192,8 @@
 
 #if defined(CONFIG_CPU_S3C2416)
 #define NR_IRQS (IRQ_S3C2416_I2S1 + 1)
-#elif defined(CONFIG_CPU_S3C2443)
-#define NR_IRQS (IRQ_S3C2443_AC97+1)
 #else
-#define NR_IRQS (IRQ_S3C2440_AC97+1)
+#define NR_IRQS (IRQ_S3C2443_AC97 + 1)
 #endif
 
 /* compatibility define. */
-- 
1.7.4.1

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

* [PATCH] ARM: S3C24XX: Correct NR_IRQS definition for s3c2440
@ 2013-04-07 20:22 ` Sylwester Nawrocki
  0 siblings, 0 replies; 8+ messages in thread
From: Sylwester Nawrocki @ 2013-04-07 20:22 UTC (permalink / raw)
  To: linux-arm-kernel

Due to NR_IRQS being incorrectly defined not all IRQ domains can
be registered for S3C2440. It causes following errors on a s3c2440
SoC based board:

NR_IRQS:89
S3C2440: IRQ Support
irq: clearing pending status 00000002
------------[ cut here ]------------
WARNING: at kernel/irq/irqdomain.c:234 0xc0056ed0()
...
irq: could not create irq-domain
...
s3c2410-wdt s3c2410-wdt: failed to install irq (-22)
s3c2410-wdt: probe of s3c2410-wdt failed with error -22
...
samsung-uart s3c2440-uart.0: cannot get irq 74

Fix this by increasing NR_IRQS to at least (IRQ_S3C2443_AC97 + 1)
if CPU_S3C2440 is selected, so the subintc IRQ domain gets properly
registered.

Cc: Heiko St?bner <heiko@sntech.de>
Signed-off-by: Tomasz Figa <tomasz.figa@gmail.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
---
 arch/arm/mach-s3c24xx/include/mach/irqs.h |    4 +---
 1 files changed, 1 insertions(+), 3 deletions(-)

diff --git a/arch/arm/mach-s3c24xx/include/mach/irqs.h b/arch/arm/mach-s3c24xx/include/mach/irqs.h
index 43cada8..b6dd4cb 100644
--- a/arch/arm/mach-s3c24xx/include/mach/irqs.h
+++ b/arch/arm/mach-s3c24xx/include/mach/irqs.h
@@ -192,10 +192,8 @@
 
 #if defined(CONFIG_CPU_S3C2416)
 #define NR_IRQS (IRQ_S3C2416_I2S1 + 1)
-#elif defined(CONFIG_CPU_S3C2443)
-#define NR_IRQS (IRQ_S3C2443_AC97+1)
 #else
-#define NR_IRQS (IRQ_S3C2440_AC97+1)
+#define NR_IRQS (IRQ_S3C2443_AC97 + 1)
 #endif
 
 /* compatibility define. */
-- 
1.7.4.1

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

* Re: [PATCH] ARM: S3C24XX: Correct NR_IRQS definition for s3c2440
  2013-04-07 20:22 ` Sylwester Nawrocki
@ 2013-04-07 20:35   ` Heiko Stübner
  -1 siblings, 0 replies; 8+ messages in thread
From: Heiko Stübner @ 2013-04-07 20:35 UTC (permalink / raw)
  To: Sylwester Nawrocki
  Cc: kgene.kim, linux-samsung-soc, linux-arm-kernel,
	Sylwester Nawrocki, Tomasz Figa

Am Sonntag, 7. April 2013, 22:22:50 schrieb Sylwester Nawrocki:
> Due to NR_IRQS being incorrectly defined not all IRQ domains can
> be registered for S3C2440. It causes following errors on a s3c2440
> SoC based board:
> 
> NR_IRQS:89
> S3C2440: IRQ Support
> irq: clearing pending status 00000002
> ------------[ cut here ]------------
> WARNING: at kernel/irq/irqdomain.c:234 0xc0056ed0()
> ...
> irq: could not create irq-domain
> ...
> s3c2410-wdt s3c2410-wdt: failed to install irq (-22)
> s3c2410-wdt: probe of s3c2410-wdt failed with error -22
> ...
> samsung-uart s3c2440-uart.0: cannot get irq 74
> 
> Fix this by increasing NR_IRQS to at least (IRQ_S3C2443_AC97 + 1)
> if CPU_S3C2440 is selected, so the subintc IRQ domain gets properly
> registered.
> 
> Cc: Heiko Stübner <heiko@sntech.de>
> Signed-off-by: Tomasz Figa <tomasz.figa@gmail.com>
> Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>

Thanks for testing the irq changes on another subarchitecture and fixing the 
glitch.

Acked-by: Heiko Stuebner <heiko@sntech.de>


> ---
>  arch/arm/mach-s3c24xx/include/mach/irqs.h |    4 +---
>  1 files changed, 1 insertions(+), 3 deletions(-)
> 
> diff --git a/arch/arm/mach-s3c24xx/include/mach/irqs.h
> b/arch/arm/mach-s3c24xx/include/mach/irqs.h index 43cada8..b6dd4cb 100644
> --- a/arch/arm/mach-s3c24xx/include/mach/irqs.h
> +++ b/arch/arm/mach-s3c24xx/include/mach/irqs.h
> @@ -192,10 +192,8 @@
> 
>  #if defined(CONFIG_CPU_S3C2416)
>  #define NR_IRQS (IRQ_S3C2416_I2S1 + 1)
> -#elif defined(CONFIG_CPU_S3C2443)
> -#define NR_IRQS (IRQ_S3C2443_AC97+1)
>  #else
> -#define NR_IRQS (IRQ_S3C2440_AC97+1)
> +#define NR_IRQS (IRQ_S3C2443_AC97 + 1)
>  #endif
> 
>  /* compatibility define. */

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

* [PATCH] ARM: S3C24XX: Correct NR_IRQS definition for s3c2440
@ 2013-04-07 20:35   ` Heiko Stübner
  0 siblings, 0 replies; 8+ messages in thread
From: Heiko Stübner @ 2013-04-07 20:35 UTC (permalink / raw)
  To: linux-arm-kernel

Am Sonntag, 7. April 2013, 22:22:50 schrieb Sylwester Nawrocki:
> Due to NR_IRQS being incorrectly defined not all IRQ domains can
> be registered for S3C2440. It causes following errors on a s3c2440
> SoC based board:
> 
> NR_IRQS:89
> S3C2440: IRQ Support
> irq: clearing pending status 00000002
> ------------[ cut here ]------------
> WARNING: at kernel/irq/irqdomain.c:234 0xc0056ed0()
> ...
> irq: could not create irq-domain
> ...
> s3c2410-wdt s3c2410-wdt: failed to install irq (-22)
> s3c2410-wdt: probe of s3c2410-wdt failed with error -22
> ...
> samsung-uart s3c2440-uart.0: cannot get irq 74
> 
> Fix this by increasing NR_IRQS to at least (IRQ_S3C2443_AC97 + 1)
> if CPU_S3C2440 is selected, so the subintc IRQ domain gets properly
> registered.
> 
> Cc: Heiko St?bner <heiko@sntech.de>
> Signed-off-by: Tomasz Figa <tomasz.figa@gmail.com>
> Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>

Thanks for testing the irq changes on another subarchitecture and fixing the 
glitch.

Acked-by: Heiko Stuebner <heiko@sntech.de>


> ---
>  arch/arm/mach-s3c24xx/include/mach/irqs.h |    4 +---
>  1 files changed, 1 insertions(+), 3 deletions(-)
> 
> diff --git a/arch/arm/mach-s3c24xx/include/mach/irqs.h
> b/arch/arm/mach-s3c24xx/include/mach/irqs.h index 43cada8..b6dd4cb 100644
> --- a/arch/arm/mach-s3c24xx/include/mach/irqs.h
> +++ b/arch/arm/mach-s3c24xx/include/mach/irqs.h
> @@ -192,10 +192,8 @@
> 
>  #if defined(CONFIG_CPU_S3C2416)
>  #define NR_IRQS (IRQ_S3C2416_I2S1 + 1)
> -#elif defined(CONFIG_CPU_S3C2443)
> -#define NR_IRQS (IRQ_S3C2443_AC97+1)
>  #else
> -#define NR_IRQS (IRQ_S3C2440_AC97+1)
> +#define NR_IRQS (IRQ_S3C2443_AC97 + 1)
>  #endif
> 
>  /* compatibility define. */

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

* Re: [PATCH] ARM: S3C24XX: Correct NR_IRQS definition for s3c2440
  2013-04-07 20:35   ` Heiko Stübner
@ 2013-04-07 21:42     ` Sylwester Nawrocki
  -1 siblings, 0 replies; 8+ messages in thread
From: Sylwester Nawrocki @ 2013-04-07 21:42 UTC (permalink / raw)
  To: Heiko Stübner
  Cc: kgene.kim, linux-samsung-soc, linux-arm-kernel,
	Sylwester Nawrocki, Tomasz Figa

On 04/07/2013 10:35 PM, Heiko Stübner wrote:
> Am Sonntag, 7. April 2013, 22:22:50 schrieb Sylwester Nawrocki:
[...]
> Thanks for testing the irq changes on another subarchitecture and fixing the
> glitch.

And thanks for your effort in adding DT support for s3c24xx!

I'm still debugging one more issue, which prevents the ethernet controller
from working properly. I.e. currently booting stops on starting network 
interfaces.
There is some problem with the external interrupts handling on s3c2440. 
In my
case EINT7 does not trigger any interrupts, even though gpcon_reg and 
extint_reg
seem to be configured properly.


Regards,
Sylwester

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

* [PATCH] ARM: S3C24XX: Correct NR_IRQS definition for s3c2440
@ 2013-04-07 21:42     ` Sylwester Nawrocki
  0 siblings, 0 replies; 8+ messages in thread
From: Sylwester Nawrocki @ 2013-04-07 21:42 UTC (permalink / raw)
  To: linux-arm-kernel

On 04/07/2013 10:35 PM, Heiko St?bner wrote:
> Am Sonntag, 7. April 2013, 22:22:50 schrieb Sylwester Nawrocki:
[...]
> Thanks for testing the irq changes on another subarchitecture and fixing the
> glitch.

And thanks for your effort in adding DT support for s3c24xx!

I'm still debugging one more issue, which prevents the ethernet controller
from working properly. I.e. currently booting stops on starting network 
interfaces.
There is some problem with the external interrupts handling on s3c2440. 
In my
case EINT7 does not trigger any interrupts, even though gpcon_reg and 
extint_reg
seem to be configured properly.


Regards,
Sylwester

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

* RE: [PATCH] ARM: S3C24XX: Correct NR_IRQS definition for s3c2440
  2013-04-07 20:35   ` Heiko Stübner
@ 2013-04-08  9:45     ` Kukjin Kim
  -1 siblings, 0 replies; 8+ messages in thread
From: Kukjin Kim @ 2013-04-08  9:45 UTC (permalink / raw)
  To: 'Heiko Stübner', 'Sylwester Nawrocki'
  Cc: linux-samsung-soc, linux-arm-kernel, 'Sylwester Nawrocki',
	'Tomasz Figa'

Heiko Stübner wrote:
> 
> Am Sonntag, 7. April 2013, 22:22:50 schrieb Sylwester Nawrocki:
> > Due to NR_IRQS being incorrectly defined not all IRQ domains can
> > be registered for S3C2440. It causes following errors on a s3c2440
> > SoC based board:
> >
> > NR_IRQS:89
> > S3C2440: IRQ Support
> > irq: clearing pending status 00000002
> > ------------[ cut here ]------------
> > WARNING: at kernel/irq/irqdomain.c:234 0xc0056ed0()
> > ...
> > irq: could not create irq-domain
> > ...
> > s3c2410-wdt s3c2410-wdt: failed to install irq (-22)
> > s3c2410-wdt: probe of s3c2410-wdt failed with error -22
> > ...
> > samsung-uart s3c2440-uart.0: cannot get irq 74
> >
> > Fix this by increasing NR_IRQS to at least (IRQ_S3C2443_AC97 + 1)
> > if CPU_S3C2440 is selected, so the subintc IRQ domain gets properly
> > registered.
> >
> > Cc: Heiko Stübner <heiko@sntech.de>
> > Signed-off-by: Tomasz Figa <tomasz.figa@gmail.com>
> > Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
> 
> Thanks for testing the irq changes on another subarchitecture and fixing
> the
> glitch.
> 
> Acked-by: Heiko Stuebner <heiko@sntech.de>
> 
> 
Thanks for you guys' effort.

Applied.

- Kukjin

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

* [PATCH] ARM: S3C24XX: Correct NR_IRQS definition for s3c2440
@ 2013-04-08  9:45     ` Kukjin Kim
  0 siblings, 0 replies; 8+ messages in thread
From: Kukjin Kim @ 2013-04-08  9:45 UTC (permalink / raw)
  To: linux-arm-kernel

Heiko St?bner wrote:
> 
> Am Sonntag, 7. April 2013, 22:22:50 schrieb Sylwester Nawrocki:
> > Due to NR_IRQS being incorrectly defined not all IRQ domains can
> > be registered for S3C2440. It causes following errors on a s3c2440
> > SoC based board:
> >
> > NR_IRQS:89
> > S3C2440: IRQ Support
> > irq: clearing pending status 00000002
> > ------------[ cut here ]------------
> > WARNING: at kernel/irq/irqdomain.c:234 0xc0056ed0()
> > ...
> > irq: could not create irq-domain
> > ...
> > s3c2410-wdt s3c2410-wdt: failed to install irq (-22)
> > s3c2410-wdt: probe of s3c2410-wdt failed with error -22
> > ...
> > samsung-uart s3c2440-uart.0: cannot get irq 74
> >
> > Fix this by increasing NR_IRQS to at least (IRQ_S3C2443_AC97 + 1)
> > if CPU_S3C2440 is selected, so the subintc IRQ domain gets properly
> > registered.
> >
> > Cc: Heiko St?bner <heiko@sntech.de>
> > Signed-off-by: Tomasz Figa <tomasz.figa@gmail.com>
> > Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
> 
> Thanks for testing the irq changes on another subarchitecture and fixing
> the
> glitch.
> 
> Acked-by: Heiko Stuebner <heiko@sntech.de>
> 
> 
Thanks for you guys' effort.

Applied.

- Kukjin

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

end of thread, other threads:[~2013-04-08  9:45 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-04-07 20:22 [PATCH] ARM: S3C24XX: Correct NR_IRQS definition for s3c2440 Sylwester Nawrocki
2013-04-07 20:22 ` Sylwester Nawrocki
2013-04-07 20:35 ` Heiko Stübner
2013-04-07 20:35   ` Heiko Stübner
2013-04-07 21:42   ` Sylwester Nawrocki
2013-04-07 21:42     ` Sylwester Nawrocki
2013-04-08  9:45   ` Kukjin Kim
2013-04-08  9:45     ` Kukjin Kim

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.