Eero,
thanks for your patch!
On 23/09/24 09:48, Eero Tamminen wrote:
Not having it configured, but crash backtraces going through its IRQ
handling code, is confusing (found while debugging issues in Atari
I don't see how backtraces could go through the EtherNAT interrupt code
- the interrupt only gets enabled if the hardware has been detected.
Maybe you meant you see the generic IRQ handling code called for the
EtherNAT's interrupt controller?
emulation).
Signed-off-by: Eero Tamminen <oak@xxxxxxxxxxxxxx>
---
arch/m68k/atari/ataints.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/arch/m68k/atari/ataints.c b/arch/m68k/atari/ataints.c
index 0465444ce..fa189eeb7 100644
--- a/arch/m68k/atari/ataints.c
+++ b/arch/m68k/atari/ataints.c
@@ -179,6 +179,7 @@ static struct irq_chip atari_mfptimer_chip = {
};
+#ifdef CONFIG_ATARI_ETHERNAT
I believe we now use
#if IS_ENABLED(CONFIG_ATARI_ETHERNAT)
but that's perhaps a matter of taste (CONFIG_ATARI_ETHERNAT can't take
the value 'm').
OK by me if it helps with your debugging ...
Cheers,
Michael
/*
* EtherNAT CPLD interrupt handling
* CPLD interrupt register is at phys. 0x80000023
@@ -251,6 +252,7 @@ static struct irq_chip atari_ethernat_chip = {
.irq_enable = atari_ethernat_enable,
.irq_disable = atari_ethernat_disable,
};
+#endif
/*
* void atari_init_IRQ (void)
@@ -343,12 +345,13 @@ void __init atari_init_IRQ(void)
stmfp_base.name, &stmfp_base))
pr_err("Couldn't register %s interrupt\n", stmfp_base.name);
+#ifdef CONFIG_ATARI_ETHERNAT
/*
* EtherNAT ethernet / USB interrupt handlers
*/
-
m68k_setup_irq_controller(&atari_ethernat_chip, handle_simple_irq,
139, 2);
+#endif
}