aboutsummaryrefslogtreecommitdiff
path: root/drivers/char/cyclades.c
diff options
context:
space:
mode:
authorFinn Thain <fthain@telegraphics.com.au>2007-05-01 22:33:00 +0200
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-05-04 17:59:07 -0700
commit0251c38ce503de01f5bc07917a824021b86b4ada (patch)
treec0fe5742ca88d7334f02eae5a7835c07df2c03ba /drivers/char/cyclades.c
parentd95fd5fce88f05fd36004f2a0c317e665549e54c (diff)
CUDA ADB fixes
Fix the flakiness in the CUDA ADB driver on m68k macs (keypresses getting wedged down or ADB just going AWOL altogether). The only IRQ used by this driver is the VIA shift register IRQ. The PowerMac conditional code disables the other VIA IRQ sources, so don't mess with the other IRQ flags in the common code -- m68k macs need them. When polling, don't disable local interrupts when we only need to disable the CUDA interrupt. Unless polling, don't clear the shift register IRQ flag. On m68k macs this creates a race that often breaks CUDA ADB. Tested on Quadra 840av and LC630 (both m68k); also Beige G3 (powerpc). Signed-off-by: Finn Thain <fthain@telegraphics.com.au> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/char/cyclades.c')
0 files changed, 0 insertions, 0 deletions