]> git.saurik.com Git - apple/xnu.git/blame - bsd/dev/i386/cons.h
xnu-792.6.56.tar.gz
[apple/xnu.git] / bsd / dev / i386 / cons.h
CommitLineData
1c79356b
A
1/*
2 * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
ff6e181a
A
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
1c79356b 12 *
ff6e181a
A
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
1c79356b
A
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
ff6e181a
A
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
1c79356b
A
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23/*
24 * Copyright (c) 1987 NeXT, Inc.
25 */
26
27struct consdev {
91447636
A
28 char *cn_name; /* name of device in dev_name_list */
29 int (*cn_probe)(void); /* probe hardware, fill consdev info */
30 int (*cn_init)(void); /* turn on as console */
31 int (*cn_getc)(void); /* kernel getchar interface */
32 int (*cn_putc)(void); /* kernel putchar interface */
33 struct tty *cn_tp; /* tty structure for console device */
34 dev_t cn_dev; /* major/minor of device */
35 short cn_pri; /* pecking order; higher the better */
1c79356b
A
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/* XXX */
45#define CONSMAJOR 0
46
47#ifdef KERNEL
48
49#include <sys/types.h>
50
51extern struct consdev constab[];
52extern struct consdev *cn_tab;
53extern struct tty *cn_tty;
54
55extern struct tty cons;
56extern struct tty *constty; /* current console device */
57#endif
58