diff options
author | Russell King <rmk@dyn-67.arm.linux.org.uk> | 2005-06-30 11:30:07 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2005-06-30 11:30:07 -0400 |
commit | 41359dca9442b0c664336e3fcf3aaf70b6507b1d (patch) | |
tree | cb8cc0057d37afbf6684f74eab2b0efbc686648b /drivers | |
parent | cfb0810eab39d1162f45b73fc96f45ab1cbcbe8b (diff) |
[PATCH] ARM: Acornfb: Don't claim IRQ fbcon for cursor
The generic fbcon code tries to register and use the vsync IRQ for
ARM platforms with acornfb, but forgets to disable its own cursor
timer. The result is a flickering flashing cursor.
Remove the code from the fbcon core to register this platform
private interrupt.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/video/console/fbcon.c | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/drivers/video/console/fbcon.c b/drivers/video/console/fbcon.c index b209adbd508a..9dd0fbccf994 100644 --- a/drivers/video/console/fbcon.c +++ b/drivers/video/console/fbcon.c | |||
@@ -142,7 +142,6 @@ static int fbcon_set_origin(struct vc_data *); | |||
142 | #define CURSOR_DRAW_DELAY (1) | 142 | #define CURSOR_DRAW_DELAY (1) |
143 | 143 | ||
144 | /* # VBL ints between cursor state changes */ | 144 | /* # VBL ints between cursor state changes */ |
145 | #define ARM_CURSOR_BLINK_RATE (10) | ||
146 | #define ATARI_CURSOR_BLINK_RATE (42) | 145 | #define ATARI_CURSOR_BLINK_RATE (42) |
147 | #define MAC_CURSOR_BLINK_RATE (32) | 146 | #define MAC_CURSOR_BLINK_RATE (32) |
148 | #define DEFAULT_CURSOR_BLINK_RATE (20) | 147 | #define DEFAULT_CURSOR_BLINK_RATE (20) |
@@ -288,7 +287,7 @@ static void fb_flashcursor(void *private) | |||
288 | release_console_sem(); | 287 | release_console_sem(); |
289 | } | 288 | } |
290 | 289 | ||
291 | #if (defined(__arm__) && defined(IRQ_VSYNCPULSE)) || defined(CONFIG_ATARI) || defined(CONFIG_MAC) | 290 | #if defined(CONFIG_ATARI) || defined(CONFIG_MAC) |
292 | static int cursor_blink_rate; | 291 | static int cursor_blink_rate; |
293 | static irqreturn_t fb_vbl_handler(int irq, void *dev_id, struct pt_regs *fp) | 292 | static irqreturn_t fb_vbl_handler(int irq, void *dev_id, struct pt_regs *fp) |
294 | { | 293 | { |
@@ -878,11 +877,6 @@ static const char *fbcon_startup(void) | |||
878 | } | 877 | } |
879 | #endif /* CONFIG_MAC */ | 878 | #endif /* CONFIG_MAC */ |
880 | 879 | ||
881 | #if defined(__arm__) && defined(IRQ_VSYNCPULSE) | ||
882 | cursor_blink_rate = ARM_CURSOR_BLINK_RATE; | ||
883 | irqres = request_irq(IRQ_VSYNCPULSE, fb_vbl_handler, SA_SHIRQ, | ||
884 | "framebuffer vbl", info); | ||
885 | #endif | ||
886 | /* Initialize the work queue. If the driver provides its | 880 | /* Initialize the work queue. If the driver provides its |
887 | * own work queue this means it will use something besides | 881 | * own work queue this means it will use something besides |
888 | * default timer to flash the cursor. */ | 882 | * default timer to flash the cursor. */ |