LCOV - code coverage report
Current view: top level - include/linux - vt_kern.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 0 1 0.0 %
Date: 2014-02-18 Functions: 0 0 -
Branches: 0 78 0.0 %

           Branch data     Line data    Source code
       1                 :            : #ifndef _VT_KERN_H
       2                 :            : #define _VT_KERN_H
       3                 :            : 
       4                 :            : /*
       5                 :            :  * this really is an extension of the vc_cons structure in console.c, but
       6                 :            :  * with information needed by the vt package
       7                 :            :  */
       8                 :            : 
       9                 :            : #include <linux/vt.h>
      10                 :            : #include <linux/kd.h>
      11                 :            : #include <linux/tty.h>
      12                 :            : #include <linux/mutex.h>
      13                 :            : #include <linux/console_struct.h>
      14                 :            : #include <linux/mm.h>
      15                 :            : #include <linux/consolemap.h>
      16                 :            : #include <linux/notifier.h>
      17                 :            : 
      18                 :            : /*
      19                 :            :  * Presently, a lot of graphics programs do not restore the contents of
      20                 :            :  * the higher font pages.  Defining this flag will avoid use of them, but
      21                 :            :  * will lose support for PIO_FONTRESET.  Note that many font operations are
      22                 :            :  * not likely to work with these programs anyway; they need to be
      23                 :            :  * fixed.  The linux/Documentation directory includes a code snippet
      24                 :            :  * to save and restore the text font.
      25                 :            :  */
      26                 :            : #ifdef CONFIG_VGA_CONSOLE
      27                 :            : #define BROKEN_GRAPHICS_PROGRAMS 1
      28                 :            : #endif
      29                 :            : 
      30                 :            : extern void kd_mksound(unsigned int hz, unsigned int ticks);
      31                 :            : extern int kbd_rate(struct kbd_repeat *rep);
      32                 :            : extern int fg_console, last_console, want_console;
      33                 :            : 
      34                 :            : /* console.c */
      35                 :            : 
      36                 :            : int vc_allocate(unsigned int console);
      37                 :            : int vc_cons_allocated(unsigned int console);
      38                 :            : int vc_resize(struct vc_data *vc, unsigned int cols, unsigned int lines);
      39                 :            : struct vc_data *vc_deallocate(unsigned int console);
      40                 :            : void reset_palette(struct vc_data *vc);
      41                 :            : void do_blank_screen(int entering_gfx);
      42                 :            : void do_unblank_screen(int leaving_gfx);
      43                 :            : void unblank_screen(void);
      44                 :            : void poke_blanked_console(void);
      45                 :            : int con_font_op(struct vc_data *vc, struct console_font_op *op);
      46                 :            : int con_set_cmap(unsigned char __user *cmap);
      47                 :            : int con_get_cmap(unsigned char __user *cmap);
      48                 :            : void scrollback(struct vc_data *vc, int lines);
      49                 :            : void scrollfront(struct vc_data *vc, int lines);
      50                 :            : void clear_buffer_attributes(struct vc_data *vc);
      51                 :            : void update_region(struct vc_data *vc, unsigned long start, int count);
      52                 :            : void redraw_screen(struct vc_data *vc, int is_switch);
      53                 :            : #define update_screen(x) redraw_screen(x, 0)
      54                 :            : #define switch_screen(x) redraw_screen(x, 1)
      55                 :            : 
      56                 :            : struct tty_struct;
      57                 :            : int tioclinux(struct tty_struct *tty, unsigned long arg);
      58                 :            : 
      59                 :            : #ifdef CONFIG_CONSOLE_TRANSLATIONS
      60                 :            : /* consolemap.c */
      61                 :            : 
      62                 :            : struct unimapinit;
      63                 :            : struct unipair;
      64                 :            : 
      65                 :            : int con_set_trans_old(unsigned char __user * table);
      66                 :            : int con_get_trans_old(unsigned char __user * table);
      67                 :            : int con_set_trans_new(unsigned short __user * table);
      68                 :            : int con_get_trans_new(unsigned short __user * table);
      69                 :            : int con_clear_unimap(struct vc_data *vc, struct unimapinit *ui);
      70                 :            : int con_set_unimap(struct vc_data *vc, ushort ct, struct unipair __user *list);
      71                 :            : int con_get_unimap(struct vc_data *vc, ushort ct, ushort __user *uct, struct unipair __user *list);
      72                 :            : int con_set_default_unimap(struct vc_data *vc);
      73                 :            : void con_free_unimap(struct vc_data *vc);
      74                 :            : int con_copy_unimap(struct vc_data *dst_vc, struct vc_data *src_vc);
      75                 :            : 
      76                 :            : #define vc_translate(vc, c) ((vc)->vc_translate[(c) |                        \
      77                 :            :                                         ((vc)->vc_toggle_meta ? 0x80 : 0)])
      78                 :            : #else
      79                 :            : static inline int con_set_trans_old(unsigned char __user *table)
      80                 :            : {
      81                 :            :         return 0;
      82                 :            : }
      83                 :            : static inline int con_get_trans_old(unsigned char __user *table)
      84                 :            : {
      85                 :            :         return -EINVAL;
      86                 :            : }
      87                 :            : static inline int con_set_trans_new(unsigned short __user *table)
      88                 :            : {
      89                 :            :         return 0;
      90                 :            : }
      91                 :            : static inline int con_get_trans_new(unsigned short __user *table)
      92                 :            : {
      93                 :            :         return -EINVAL;
      94                 :            : }
      95                 :            : static inline int con_clear_unimap(struct vc_data *vc, struct unimapinit *ui)
      96                 :            : {
      97                 :            :         return 0;
      98                 :            : }
      99                 :            : static inline
     100                 :            : int con_set_unimap(struct vc_data *vc, ushort ct, struct unipair __user *list)
     101                 :            : {
     102                 :            :         return 0;
     103                 :            : }
     104                 :            : static inline
     105                 :            : int con_get_unimap(struct vc_data *vc, ushort ct, ushort __user *uct,
     106                 :            :                    struct unipair __user *list)
     107                 :            : {
     108                 :            :         return -EINVAL;
     109                 :            : }
     110                 :            : static inline int con_set_default_unimap(struct vc_data *vc)
     111                 :            : {
     112                 :            :         return 0;
     113                 :            : }
     114                 :            : static inline void con_free_unimap(struct vc_data *vc)
     115                 :            : {
     116                 :            : }
     117                 :            : static inline void con_protect_unimap(struct vc_data *vc, int rdonly)
     118                 :            : {
     119                 :            : }
     120                 :            : static inline
     121                 :            : int con_copy_unimap(struct vc_data *dst_vc, struct vc_data *src_vc)
     122                 :            : {
     123                 :            :         return 0;
     124                 :            : }
     125                 :            : 
     126                 :            : #define vc_translate(vc, c) (c)
     127                 :            : #endif
     128                 :            : 
     129                 :            : /* vt.c */
     130                 :            : void vt_event_post(unsigned int event, unsigned int old, unsigned int new);
     131                 :            : int vt_waitactive(int n);
     132                 :            : void change_console(struct vc_data *new_vc);
     133                 :            : void reset_vc(struct vc_data *vc);
     134                 :            : extern int do_unbind_con_driver(const struct consw *csw, int first, int last,
     135                 :            :                              int deflt);
     136                 :            : int vty_init(const struct file_operations *console_fops);
     137                 :            : 
     138                 :            : static inline bool vt_force_oops_output(struct vc_data *vc)
     139                 :            : {
     140 [ #  # ][ #  # ]:          0 :         if (oops_in_progress && vc->vc_panic_force_write  && panic_timeout >= 0)
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
                 [ #  # ]
     141                 :            :                 return true;
     142                 :            :         return false;
     143                 :            : }
     144                 :            : 
     145                 :            : extern char vt_dont_switch;
     146                 :            : extern int default_utf8;
     147                 :            : extern int global_cursor_default;
     148                 :            : 
     149                 :            : struct vt_spawn_console {
     150                 :            :         spinlock_t lock;
     151                 :            :         struct pid *pid;
     152                 :            :         int sig;
     153                 :            : };
     154                 :            : extern struct vt_spawn_console vt_spawn_con;
     155                 :            : 
     156                 :            : extern int vt_move_to_console(unsigned int vt, int alloc);
     157                 :            : 
     158                 :            : /* Interfaces for VC notification of character events (for accessibility etc) */
     159                 :            : 
     160                 :            : struct vt_notifier_param {
     161                 :            :         struct vc_data *vc;     /* VC on which the update happened */
     162                 :            :         unsigned int c;         /* Printed char */
     163                 :            : };
     164                 :            : 
     165                 :            : extern int register_vt_notifier(struct notifier_block *nb);
     166                 :            : extern int unregister_vt_notifier(struct notifier_block *nb);
     167                 :            : 
     168                 :            : extern void hide_boot_cursor(bool hide);
     169                 :            : 
     170                 :            : /* keyboard  provided interfaces */
     171                 :            : extern int vt_do_diacrit(unsigned int cmd, void __user *up, int eperm);
     172                 :            : extern int vt_do_kdskbmode(int console, unsigned int arg);
     173                 :            : extern int vt_do_kdskbmeta(int console, unsigned int arg);
     174                 :            : extern int vt_do_kbkeycode_ioctl(int cmd, struct kbkeycode __user *user_kbkc,
     175                 :            :                                                                 int perm);
     176                 :            : extern int vt_do_kdsk_ioctl(int cmd, struct kbentry __user *user_kbe,
     177                 :            :                                         int perm, int console);
     178                 :            : extern int vt_do_kdgkb_ioctl(int cmd, struct kbsentry __user *user_kdgkb,
     179                 :            :                                         int perm);
     180                 :            : extern int vt_do_kdskled(int console, int cmd, unsigned long arg, int perm);
     181                 :            : extern int vt_do_kdgkbmode(int console);
     182                 :            : extern int vt_do_kdgkbmeta(int console);
     183                 :            : extern void vt_reset_unicode(int console);
     184                 :            : extern int vt_get_shift_state(void);
     185                 :            : extern void vt_reset_keyboard(int console);
     186                 :            : extern int vt_get_leds(int console, int flag);
     187                 :            : extern int vt_get_kbd_mode_bit(int console, int bit);
     188                 :            : extern void vt_set_kbd_mode_bit(int console, int bit);
     189                 :            : extern void vt_clr_kbd_mode_bit(int console, int bit);
     190                 :            : extern void vt_set_led_state(int console, int leds);
     191                 :            : extern void vt_set_led_state(int console, int leds);
     192                 :            : extern void vt_kbd_con_start(int console);
     193                 :            : extern void vt_kbd_con_stop(int console);
     194                 :            : 
     195                 :            : 
     196                 :            : #endif /* _VT_KERN_H */

Generated by: LCOV version 1.9