Update of /cvsroot/linuxconsole/ruby/ruby-2.6/drivers/video/console
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12910/ruby-2.6/drivers/video/console
Modified Files:
fbcon.c fbcon.h
Log Message:
vt is a class. fbdev and fbcon load in any order.
Index: fbcon.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/ruby-2.6/drivers/video/console/fbcon.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- fbcon.c 9 Feb 2004 07:33:28 -0000 1.5
+++ fbcon.c 12 Feb 2004 06:33:04 -0000 1.6
@@ -2278,6 +2278,12 @@
struct vt_struct *vt;
struct vc_data *vc;
+ if(vt2fb[unit] == TAKE_OVER_CONSOLE) {
+ admin_vt->data_hook = (void *)registered_fb[unit];
+ take_over_console(admin_vt, &fb_con);
+ return 0;
+ }
+
vt = (struct vt_struct *) kmalloc(sizeof(struct vt_struct),GFP_KERNEL);
if (!vt) return -ENOMEM;
@@ -2301,8 +2307,6 @@
kfree(vc);
return -ENODEV;
}
- vt_proc_attach(vt);
- vt_create_sysfs_dev_files(vt);
printk("Console: %s %s %dx%d vc:%d-%d\n",
vt->default_mode->vc_can_do_color ? "Colour" : "Mono",
display_desc,
@@ -2316,9 +2320,6 @@
{
int unit;
- if (!num_registered_fb)
- return -ENODEV;
-
if(!vt2fb[0])
vt2fb[0] = TAKE_OVER_CONSOLE;
@@ -2326,14 +2327,12 @@
if(!vt2fb[unit])
vt2fb[unit] = MAX_NR_USER_CONSOLES;
- for(unit = 0; unit < num_registered_fb; unit++)
- if(vt2fb[unit] == TAKE_OVER_CONSOLE) {
- admin_vt->data_hook = (void *)registered_fb[unit];
- take_over_console(admin_vt, &fb_con);
- }
- else
- fbcon_add(unit, vt2fb[unit]);
fb_console_active(1);
+ if (!num_registered_fb)
+ return -ENODEV;
+
+ for(unit = 0; unit < num_registered_fb; unit++)
+ fbcon_add(unit, vt2fb[unit]);
return 0;
}
Index: fbcon.h
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/ruby-2.6/drivers/video/console/fbcon.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- fbcon.h 29 Sep 2003 08:57:39 -0000 1.1
+++ fbcon.h 12 Feb 2004 06:33:04 -0000 1.2
@@ -37,6 +37,7 @@
};
/* drivers/video/console/fbcon.c */
+extern char vt2fb[FB_MAX];
extern char con2fb_map[MAX_NR_CONSOLES];
extern int set_con2fb_map(int unit, int newidx);
@@ -105,5 +106,9 @@
extern int fb_console_init(void);
extern const struct consw fb_con;
+extern int fbcon_add(int unit, int vc_count);
+
+/* drivers/video/fbmem.c */
+extern void fb_console_active(int active);
#endif /* _VIDEO_FBCON_H */
|