Merge git://oss.sgi.com:8090/xfs/xfs-2.6
[linux-drm-fsl-dcu.git] / include / linux / console.h
index 08734e660d4182c11c9bc55a6a7e2632f1d3e917..de25ee3b79196b1daa7d95ccb871f32652eb1a8a 100644 (file)
@@ -21,6 +21,7 @@ struct vc_data;
 struct console_font_op;
 struct console_font;
 struct module;
+struct tty_struct;
 
 /*
  * this is what the terminal answers to a ESC-Z or csi0c query.
@@ -63,9 +64,11 @@ extern const struct consw vga_con;   /* VGA text console */
 extern const struct consw newport_con; /* SGI Newport console  */
 extern const struct consw prom_con;    /* SPARC PROM console */
 
+int con_is_bound(const struct consw *csw);
+int register_con_driver(const struct consw *csw, int first, int last);
+int unregister_con_driver(const struct consw *csw);
 int take_over_console(const struct consw *sw, int first, int last, int deflt);
 void give_up_console(const struct consw *sw);
-
 /* scroll */
 #define SM_UP       (1)
 #define SM_DOWN     (2)
@@ -87,6 +90,7 @@ void give_up_console(const struct consw *sw);
 #define CON_CONSDEV    (2) /* Last on the command line */
 #define CON_ENABLED    (4)
 #define CON_BOOT       (8)
+#define CON_ANYTIME    (16) /* Safe to call when cpu is offline */
 
 struct console
 {
@@ -117,9 +121,20 @@ extern void console_stop(struct console *);
 extern void console_start(struct console *);
 extern int is_console_locked(void);
 
+#ifndef CONFIG_DISABLE_CONSOLE_SUSPEND
 /* Suspend and resume console messages over PM events */
 extern void suspend_console(void);
 extern void resume_console(void);
+#else
+static inline void suspend_console(void) {}
+static inline void resume_console(void) {}
+#endif /* CONFIG_DISABLE_CONSOLE_SUSPEND */
+
+int mda_console_init(void);
+void prom_con_init(void);
+
+void vcs_make_sysfs(struct tty_struct *tty);
+void vcs_remove_sysfs(struct tty_struct *tty);
 
 /* Some debug stub to catch some of the obvious races in the VT code */
 #if 1