Re: m68k: Convert to genirq (WIP)
From: Michael Schmitz
Date: Thu Jun 16 2011 - 17:10:20 EST
On Fri, Jun 17, 2011 at 7:45 AM, Geert Uytterhoeven
> This is the WARN_ONCE(!irqs_disabled()) check.
> static inline bool arch_irqs_disabled_flags(unsigned long flags)
> return (flags & ~ALLOWINT) != 0;
> with flags = 0x2300. Due to the "special" value of ALLOWINT on Atari:
> #if defined(MACH_ATARI_ONLY)
> /* block out HSYNC on the atari */
> #define ALLOWINT (~0x400)
> #define MAX_NOINT_IPL 3
> /* portable version */
> #define ALLOWINT (~0x700)
> #define MAX_NOINT_IPL 0
> #endif /* machine compilation types */
> the test fails.
> Would it harm to always use the "portable" version?
> That one is used on multi-platform kernels anyway?
> Or would it cause too many HBLANK interrupts?
I'd say it would cause too many unnecessary interrupts. At least with
the original Falcon hardware that was a problem (haven't ever tried
this on the CT60). Not sure I tried multi platform kernels in a long
time, either. For these, it would probably required to male ALLOWINT a
runtime optiion in order to avoid this problem (I seem to recall we
used the corresponding hbl interrrupt handler for this originally
since it only was a problem on Falcon, not on TT. Does the TT use IPL
1 and 2, Andreas?).
MAX_NOINT_IPL may not needed any longer because all interrupt and
signal return is now done from assembler code in entry.S, I guess.
Probably best to ignore the two lowest IRQ bits on Atari for the
purpose of this test since these are always going to be disabled.
> BTW, MAX_NOINT_IPL is no longer used.
> Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx
> 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
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/