Xserver Xfbdev (kdrive) uses linux framebuffer in graphics mode. It doesn't
need the text mode cursor, it's a bit annoying to have it there sitting in a
corner. This patch disables the cursor when switching to graphics mode.
Signed-off-by: Risto Suominen <[email protected]>
---
The testing is done on kernel version 2.6.18.
--- a/drivers/char/vt_ioctl.c.org 2006-09-20 06:42:06.000000000 +0300
+++ b/drivers/char/vt_ioctl.c 2009-01-22 12:42:38.000000000 +0200
@@ -491,6 +491,10 @@ int vt_ioctl(struct tty_struct *tty, str
return -EPERM;
switch (arg) {
case KD_GRAPHICS:
+ /*
+ * hide H/W (text) cursor in graphics mode
+ */
+ vc->vc_sw->con_cursor(vc, CM_ERASE);
break;
case KD_TEXT0:
case KD_TEXT1:
On Thu, 22 Jan 2009 20:23:05 +0200
Risto Suominen <[email protected]> wrote:
> Xserver Xfbdev (kdrive) uses linux framebuffer in graphics mode. It doesn't
> need the text mode cursor, it's a bit annoying to have it there sitting in a
> corner. This patch disables the cursor when switching to graphics mode.
>
> Signed-off-by: Risto Suominen <[email protected]>
NAK. You need to work out what your real problem is I think. When we
enter graphics mode we hide the cursor automatically and always have done.
See set_cursor() and also do_blank_screen(1)
2009/1/22 Alan Cox <[email protected]>:
>
> NAK. You need to work out what your real problem is I think. When we
> enter graphics mode we hide the cursor automatically and always have done.
>
> See set_cursor() and also do_blank_screen(1)
>
Could it be that console != fg_console, and we never reach do_blank_screen?
Risto
2009/1/22 Risto Suominen <[email protected]>:
> 2009/1/22 Alan Cox <[email protected]>:
>>
>> NAK. You need to work out what your real problem is I think. When we
>> enter graphics mode we hide the cursor automatically and always have done.
>>
>> See set_cursor() and also do_blank_screen(1)
>>
> Could it be that console != fg_console, and we never reach do_blank_screen?
>
> Risto
>
Wait, I have a better theory: fbcon_is_inactive() hinders
fbcon_cursor() from doing anything, if the vc is already in graphics
mode.
Risto
On Thu, 22 Jan 2009 21:53:45 +0200
Risto Suominen <[email protected]> wrote:
> 2009/1/22 Alan Cox <[email protected]>:
> >
> > NAK. You need to work out what your real problem is I think. When we
> > enter graphics mode we hide the cursor automatically and always have done.
> >
> > See set_cursor() and also do_blank_screen(1)
> >
> Could it be that console != fg_console, and we never reach do_blank_screen?
console != fg_console means that the console you are updating is not the
one displayed - so won't have the cursor on it anyway
2009/1/22 Risto Suominen <[email protected]>:
> 2009/1/22 Risto Suominen <[email protected]>:
>> 2009/1/22 Alan Cox <[email protected]>:
>>>
>>> NAK. You need to work out what your real problem is I think. When we
>>> enter graphics mode we hide the cursor automatically and always have done.
>>>
>>> See set_cursor() and also do_blank_screen(1)
>>>
>> Could it be that console != fg_console, and we never reach do_blank_screen?
>>
>> Risto
>>
> Wait, I have a better theory: fbcon_is_inactive() hinders
> fbcon_cursor() from doing anything, if the vc is already in graphics
> mode.
>
> Risto
>
Well, looks like this theory holds. I'll send another patch, this time
for fbcon.c, that demonstrates this by fixing the problem.
Risto