xref: /netbsd/sys/arch/sun2/dev/cons.h (revision 6550d01e)
1 /*	$NetBSD: cons.h,v 1.3 2005/12/11 12:19:16 christos Exp $	*/
2 
3 /*-
4  * Copyright (c) 2000 Eduardo E. Horvath
5  * All rights reserved.
6  *
7  * Redistribution and use in source and binary forms, with or without
8  * modification, are permitted provided that the following conditions
9  * are met:
10  * 1. Redistributions of source code must retain the above copyright
11  *    notice, this list of conditions and the following disclaimer.
12  * 2. Redistributions in binary form must reproduce the above copyright
13  *    notice, this list of conditions and the following disclaimer in the
14  *    documentation and/or other materials provided with the distribution.
15  * 3. The name of the author may not be used to endorse or promote products
16  *    derived from this software without specific prior written permission.
17  *
18  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
19  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
20  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
21  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
22  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
23  * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
24  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
25  * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
26  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
27  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
28  * SUCH DAMAGE.
29  */
30 
31 /*
32  * PROM console driver.
33  *
34  * This is the default fallback console driver if nothing else attaches.
35  */
36 
37 struct pconssoftc {
38 	struct device of_dev;
39 	struct tty *of_tty;
40 	struct callout sc_poll_ch;
41 	int of_flags;
42 };
43 /* flags: */
44 #define	OFPOLL		1
45 
46 #define	OFBURSTLEN	128	/* max number of bytes to write in one chunk */
47 
48 /* These are shared with the consinit OBP console */
49 void pcons_cnpollc(dev_t dev, int on);
50 
51 struct consdev;
52 struct zs_chanstate;
53 
54 extern void *zs_conschan;
55 
56 extern void nullcnprobe(struct consdev *);
57 
58 extern int  zs_getc(void *arg);
59 extern void zs_putc(void *arg, int c);
60 
61 #ifdef	KGDB
62 void zs_kgdb_init(void);
63 void zskgdb(struct zs_chanstate *);
64 void *zs_find_prom(int);
65 #endif
66 
67 /*
68  * PROM I/O nodes and arguments are prepared by consinit().
69  * Drivers can examine these when looking for a console device match.
70  */
71 extern int prom_stdin_node;
72 extern int prom_stdout_node;
73 extern char prom_stdin_args[];
74 extern char prom_stdout_args[];
75