424619ca1a
Unlike the other Sun machines, UltraSPARCs can have consoles run on different chips than zs, so we need to support them. So, here we go: Add a new PROM console driver with a major number and everything. This is the default driver if nothing else attaches. It does not use the keyboard driver since the PROM translates keystrokes itself. (Unfortunately it also swallows L1-A). Have the keyboard driver take over the console when it attaches on a serial port. When a serial port detects a keyboard and attaches the keyboard driver, it needs to provide a set of consdev vectors. They keyboard driver will use those to send I/O to the keyboard and mouse.
69 lines
2.3 KiB
C
69 lines
2.3 KiB
C
/* $NetBSD: cons.h,v 1.3 2000/05/19 05:26:17 eeh Exp $ */
|
|
|
|
/*-
|
|
* Copyright (c) 2000 Eduardo E. Horvath
|
|
* All rights reserved.
|
|
*
|
|
* Redistribution and use in source and binary forms, with or without
|
|
* modification, are permitted provided that the following conditions
|
|
* are met:
|
|
* 1. Redistributions of source code must retain the above copyright
|
|
* notice, this list of conditions and the following disclaimer.
|
|
* 2. Redistributions in binary form must reproduce the above copyright
|
|
* notice, this list of conditions and the following disclaimer in the
|
|
* documentation and/or other materials provided with the distribution.
|
|
* 3. The name of the author may not be used to endorse or promote products
|
|
* derived from this software without specific prior written permission.
|
|
*
|
|
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
|
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
|
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
|
* IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
|
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
|
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
|
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
* SUCH DAMAGE.
|
|
*/
|
|
|
|
/*
|
|
* PROM console driver.
|
|
*
|
|
* This is the default fallback console driver if nothing else attaches.
|
|
*/
|
|
|
|
struct pconssoftc {
|
|
struct device of_dev;
|
|
struct tty *of_tty;
|
|
struct callout sc_poll_ch;
|
|
int of_flags;
|
|
};
|
|
/* flags: */
|
|
#define OFPOLL 1
|
|
|
|
#define OFBURSTLEN 128 /* max number of bytes to write in one chunk */
|
|
|
|
/* These are shared with the consinit OBP console */
|
|
extern int stdin, stdout;
|
|
void pcons_cnpollc __P((dev_t dev, int on));
|
|
|
|
struct consdev;
|
|
struct zs_chanstate;
|
|
|
|
extern void *zs_conschan;
|
|
|
|
extern void nullcnprobe __P((struct consdev *));
|
|
|
|
extern int zs_getc __P((void *arg));
|
|
extern void zs_putc __P((void *arg, int c));
|
|
|
|
struct zschan *
|
|
zs_get_chan_addr __P((int zsc_unit, int channel));
|
|
|
|
#ifdef KGDB
|
|
void zs_kgdb_init __P((void));
|
|
void zskgdb __P((struct zs_chanstate *));
|
|
#endif
|