Hi Finn,
On Sat, Dec 22, 2018 at 4:07 AM Finn Thain <[email protected]> wrote:
> The comment says that calling the ROM routine doesn't work. But testing
> shows that the 68030 fall-back reset method does work, so just use that.
>
> Tested-by: Stan Johnson <[email protected]>
> Signed-off-by: Finn Thain <[email protected]>
Thanks for your patch!
> --- a/arch/m68k/mac/misc.c
> +++ b/arch/m68k/mac/misc.c
> @@ -410,9 +410,8 @@ void mac_poweroff(void)
>
> void mac_reset(void)
> {
> - if (macintosh_config->adb_type == MAC_ADB_II) {
> - unsigned long flags;
> -
> + if (macintosh_config->adb_type == MAC_ADB_II &&
> + macintosh_config->ident != MAC_MODEL_SE30) {
> /* need ROMBASE in booter */
> /* indeed, plus need to MAP THE ROM !! */
>
> @@ -422,17 +421,8 @@ void mac_reset(void)
> /* works on some */
> rom_reset = (void *) (mac_bi_data.rombase + 0xa);
>
> - if (macintosh_config->ident == MAC_MODEL_SE30) {
> - /*
> - * MSch: Machines known to crash on ROM reset ...
> - */
> - } else {
> - local_irq_save(flags);
> -
> - rom_reset();
> -
> - local_irq_restore(flags);
I guess you removed the call to local_irq_restore() because you never
get there anyway?
> - }
> + local_irq_disable();
> + rom_reset();
> #ifdef CONFIG_ADB_CUDA
> } else if (macintosh_config->adb_type == MAC_ADB_EGRET ||
> macintosh_config->adb_type == MAC_ADB_CUDA) {
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- [email protected]
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds