Annotation of Gnu-Mach/device/cons.h, revision 1.1.1.3

1.1       root        1: /* 
                      2:  * Copyright (c) 1988-1994, The University of Utah and
                      3:  * the Computer Systems Laboratory at the University of Utah (CSL).
                      4:  * All rights reserved.
                      5:  *
                      6:  * Permission to use, copy, modify and distribute this software is hereby
                      7:  * granted provided that (1) source code retains these copyright, permission,
                      8:  * and disclaimer notices, and (2) redistributions including binaries
                      9:  * reproduce the notices in supporting documentation, and (3) all advertising
                     10:  * materials mentioning features or use of this software display the following
                     11:  * acknowledgement: ``This product includes software developed by the
                     12:  * Computer Systems Laboratory at the University of Utah.''
                     13:  *
                     14:  * THE UNIVERSITY OF UTAH AND CSL ALLOW FREE USE OF THIS SOFTWARE IN ITS "AS
                     15:  * IS" CONDITION.  THE UNIVERSITY OF UTAH AND CSL DISCLAIM ANY LIABILITY OF
                     16:  * ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
                     17:  *
                     18:  * CSL requests users of this software to return to [email protected] any
                     19:  * improvements that they make and grant CSL redistribution rights.
                     20:  *
                     21:  *     Utah $Hdr: cons.h 1.10 94/12/14$
                     22:  */
                     23: 
1.1.1.2   root       24: #ifndef _DEVICE_CONS_H
                     25: #define _DEVICE_CONS_H
                     26: #include <sys/types.h>
                     27: 
1.1       root       28: struct consdev {
                     29:        char    *cn_name;       /* name of device in dev_name_list */
1.1.1.2   root       30:        int     (*cn_probe)(struct consdev *cp);        /* probe hardware and fill in consdev info */
                     31:        int     (*cn_init)(struct consdev *cp);         /* turn on as console */
                     32:        int     (*cn_getc)(dev_t dev, int wait);        /* kernel getchar interface */
                     33:        int     (*cn_putc)(dev_t dev, int c);           /* kernel putchar interface */
1.1       root       34:        dev_t   cn_dev;         /* major/minor of device */
                     35:        short   cn_pri;         /* pecking order; the higher the better */
                     36: };
                     37: 
                     38: /* values for cn_pri - reflect our policy for console selection */
                     39: #define        CN_DEAD         0       /* device doesn't exist */
                     40: #define CN_NORMAL      1       /* device exists but is nothing special */
                     41: #define CN_INTERNAL    2       /* "internal" bit-mapped display */
                     42: #define CN_REMOTE      3       /* serial interface with remote bit set */
                     43: 
                     44: #define CONSBUFSIZE    1024
                     45: 
                     46: #ifdef KERNEL
                     47: extern struct consdev constab[];
                     48: #endif
1.1.1.2   root       49: 
                     50: extern void cninit(void);
                     51: 
                     52: extern int cngetc(void);
                     53: 
                     54: extern int cnmaygetc(void);
                     55: 
                     56: extern void cnputc(char);
1.1.1.3 ! root       57: 
        !            58: /*
        !            59:  * ROM getc/putc primitives.
        !            60:  * On some architectures, the boot ROM provides basic character input/output
        !            61:  * routines that can be used before devices are configured or virtual memory
        !            62:  * is enabled.  This can be useful to debug (or catch panics from) code early
        !            63:  * in the bootstrap procedure.
        !            64:  */
        !            65: extern int     (*romgetc)(char c);
        !            66: extern void    (*romputc)(char c);
        !            67: 
1.1.1.2   root       68: #endif /* _DEVICE_CONS_H */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.