summaryrefslogtreecommitdiffstats
path: root/arch/m68k/atari
diff options
context:
space:
mode:
authorEero Tamminen <oak@helsinkinet.fi>2024-06-24 17:49:01 +0300
committerGeert Uytterhoeven <geert@linux-m68k.org>2024-07-01 14:23:05 +0200
commitf70065a9fd988983b2c693631b801f25a615fc04 (patch)
tree67c5cb035f3d662479fdfde4b47f4e0cc3c02dbc /arch/m68k/atari
parent156872f08e33af7a23c1e4827f6127d7861b23fd (diff)
downloadlinux-stable-f70065a9fd988983b2c693631b801f25a615fc04.tar.gz
linux-stable-f70065a9fd988983b2c693631b801f25a615fc04.tar.bz2
linux-stable-f70065a9fd988983b2c693631b801f25a615fc04.zip
m68k: atari: Fix TT bootup freeze / unexpected (SCU) interrupt messages
Avoid freeze on Atari TT / MegaSTe boot with continuous messages of: unexpected interrupt from 112 Which was due to VBL interrupt being enabled in SCU sys mask, but there being no handler for that any more. (Bug and fix were first verified on real Atari TT HW by Christian, this patch later on in Hatari emulator.) Fixes: 1fa0b29f3a43f9dd ("fbdev: Kill Atari vblank cursor blinking") Reported-by: Nicolas Pomarède <npomarede@corp.free.fr> Closes: https://listengine.tuxfamily.org/lists.tuxfamily.org/hatari-devel/2024/06/msg00016.html Closes: https://lore.kernel.org/all/9aa793d7-82ed-4fbd-bce5-60810d8a9119@helsinkinet.fi Tested-by: Christian Zietz <czietz@gmx.net> Signed-off-by: Eero Tamminen <oak@helsinkinet.fi> Reviewed-by: Michael Schmitz <schmitzmic@gmail.com> Reviewed-by: Geert Uytterhoeven <geert@linux-m68k.org> Link: https://lore.kernel.org/20240624144901.5236-1-oak@helsinkinet.fi Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Diffstat (limited to 'arch/m68k/atari')
-rw-r--r--arch/m68k/atari/ataints.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/arch/m68k/atari/ataints.c b/arch/m68k/atari/ataints.c
index 23256434191c..0465444ceb21 100644
--- a/arch/m68k/atari/ataints.c
+++ b/arch/m68k/atari/ataints.c
@@ -301,11 +301,7 @@ void __init atari_init_IRQ(void)
if (ATARIHW_PRESENT(SCU)) {
/* init the SCU if present */
- tt_scu.sys_mask = 0x10; /* enable VBL (for the cursor) and
- * disable HSYNC interrupts (who
- * needs them?) MFP and SCC are
- * enabled in VME mask
- */
+ tt_scu.sys_mask = 0x0; /* disable all interrupts */
tt_scu.vme_mask = 0x60; /* enable MFP and SCC ints */
} else {
/* If no SCU and no Hades, the HSYNC interrupt needs to be