[PATCH] [RFC] sh: dreamcast: Handle virq offset in cascaded IRQ demux

Geert Uytterhoeven posted 1 patch 2 years, 7 months ago
arch/sh/boards/mach-dreamcast/irq.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
[PATCH] [RFC] sh: dreamcast: Handle virq offset in cascaded IRQ demux
Posted by Geert Uytterhoeven 2 years, 7 months ago
Take into account the virq offset when translating cascaded interrupts.

Fixes: a8ac2961148e8c72 ("sh: Avoid using IRQ0 on SH3 and SH4")
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
Compile-tested only.
---
 arch/sh/boards/mach-dreamcast/irq.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/arch/sh/boards/mach-dreamcast/irq.c b/arch/sh/boards/mach-dreamcast/irq.c
index cc06e4cdb4cdf9b7..4e5fb59481a26747 100644
--- a/arch/sh/boards/mach-dreamcast/irq.c
+++ b/arch/sh/boards/mach-dreamcast/irq.c
@@ -108,13 +108,13 @@ int systemasic_irq_demux(int irq)
 	__u32 j, bit;
 
 	switch (irq) {
-	case 13:
+	case 16 + 13:
 		level = 0;
 		break;
-	case 11:
+	case 16 + 11:
 		level = 1;
 		break;
-	case  9:
+	case 16 + 9:
 		level = 2;
 		break;
 	default:
-- 
2.34.1
Re: [PATCH] [RFC] sh: dreamcast: Handle virq offset in cascaded IRQ demux
Posted by John Paul Adrian Glaubitz 2 years, 7 months ago
On Sun, 2023-07-09 at 15:10 +0200, Geert Uytterhoeven wrote:
> Take into account the virq offset when translating cascaded interrupts.
> 
> Fixes: a8ac2961148e8c72 ("sh: Avoid using IRQ0 on SH3 and SH4")
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> ---
> Compile-tested only.
> ---
>  arch/sh/boards/mach-dreamcast/irq.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/arch/sh/boards/mach-dreamcast/irq.c b/arch/sh/boards/mach-dreamcast/irq.c
> index cc06e4cdb4cdf9b7..4e5fb59481a26747 100644
> --- a/arch/sh/boards/mach-dreamcast/irq.c
> +++ b/arch/sh/boards/mach-dreamcast/irq.c
> @@ -108,13 +108,13 @@ int systemasic_irq_demux(int irq)
>  	__u32 j, bit;
>  
>  	switch (irq) {
> -	case 13:
> +	case 16 + 13:
>  		level = 0;
>  		break;
> -	case 11:
> +	case 16 + 11:
>  		level = 1;
>  		break;
> -	case  9:
> +	case 16 + 9:
>  		level = 2;
>  		break;
>  	default:

Reviewed-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>

-- 
 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer
`. `'   Physicist
  `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913
Re: [PATCH] [RFC] sh: dreamcast: Handle virq offset in cascaded IRQ demux
Posted by John Paul Adrian Glaubitz 2 years, 7 months ago
On Sun, 2023-07-09 at 15:10 +0200, Geert Uytterhoeven wrote:
> Take into account the virq offset when translating cascaded interrupts.
> 
> Fixes: a8ac2961148e8c72 ("sh: Avoid using IRQ0 on SH3 and SH4")
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> ---
> Compile-tested only.
> ---
>  arch/sh/boards/mach-dreamcast/irq.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/arch/sh/boards/mach-dreamcast/irq.c b/arch/sh/boards/mach-dreamcast/irq.c
> index cc06e4cdb4cdf9b7..4e5fb59481a26747 100644
> --- a/arch/sh/boards/mach-dreamcast/irq.c
> +++ b/arch/sh/boards/mach-dreamcast/irq.c
> @@ -108,13 +108,13 @@ int systemasic_irq_demux(int irq)
>  	__u32 j, bit;
>  
>  	switch (irq) {
> -	case 13:
> +	case 16 + 13:
>  		level = 0;
>  		break;
> -	case 11:
> +	case 16 + 11:
>  		level = 1;
>  		break;
> -	case  9:
> +	case 16 + 9:
>  		level = 2;
>  		break;
>  	default:

Applied to my for-linus branch.

Thanks,
Adrian

-- 
 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer
`. `'   Physicist
  `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913