kernel-ark/arch/m68k/mac
Finn Thain ed6344e1fd m68k/mac: Remove SHUTUP_SONIC interrupt hack
In macints.c there is some startup code which disables the SONIC interrupt
in an attempt to avoid an unhandled slot interrupt, which would be fatal.
This only works on those machines where the SONIC device is on-board.

When the mac_sonic driver is built-in, there's little point in doing this,
because the device will be initialized a few seconds later anyway. But
when mac_sonic is a module, the window for an unhandled interrupt is
longer.

Either way, we've already run the gauntlet for 5 or 10 seconds by the time
we get around to disabling this particular device. It's only by sheer luck
that we got this far.

Really, this is too little too late. The general problem of unhandled
early interrupts also affects other devices on other models. There are
better ways to resolve this problem.

1) When using the Penguin bootloader, boot Mac OS with extensions disabled
   (by holding down the shift key at startup or by use of the Extensions
   Manager control panel). The Penguin docs already contain this advice,
   as it is always effective.

2) Have the Penguin bootloader disable the device. It already attempts
   to disable slot interrupts. But since some hardware cannot mask slot
   interrupts, Penguin should probably close the relevant device
   drivers.

3) Use Emile instead of Penguin. AFAIK the boot ROM never enables network
   device interrupts and hence they don't need to be disabled.

Remove this hack. It requires maintenance and it doesn't solve the
problem. It improves the odds for a few models, but so does setting
CONFIG_MAC_SONIC=y.

Signed-off-by: Finn Thain <fthain@telegraphics.com.au>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2017-02-09 14:18:19 +01:00
..
baboon.c genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
config.c m68k: Use IS_ENABLED() instead of checking for built-in or module 2016-09-19 11:29:45 +02:00
iop.c m68k: Assorted spelling fixes 2016-07-03 14:05:28 +02:00
mac_penguin.S
macboing.c Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2010-10-24 13:41:39 -07:00
macints.c m68k/mac: Remove SHUTUP_SONIC interrupt hack 2017-02-09 14:18:19 +01:00
Makefile mac68k: replace mac68k SCC code with platform device 2010-02-27 18:31:09 +01:00
misc.c m68k/mac: Remove unneeded linux/miscdevice.h include 2017-02-09 14:14:17 +01:00
oss.c genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
psc.c m68k/mac: Kill psc_present 2015-11-23 09:58:30 +01:00
via.c m68k: Fix misspellings in comments. 2016-02-29 09:51:44 +01:00