Annotation of sys/arch/macppc/macppc/wscons_machdep.c, Revision 1.1.1.1
1.1 nbrk 1: /* $OpenBSD: wscons_machdep.c,v 1.5 2004/10/05 14:33:16 miod Exp $ */
2:
3: /*
4: * Copyright (c) 2001 Aaron Campbell
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: *
16: * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
17: * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
18: * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
19: * IN NO EVENT SHALL THE AUTHOR OR HIS RELATIVES BE LIABLE FOR ANY DIRECT,
20: * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21: * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
22: * SERVICES; LOSS OF MIND, USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23: * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
24: * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
25: * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
26: * THE POSSIBILITY OF SUCH DAMAGE.
27: */
28:
29: #include <sys/param.h>
30: #include <sys/systm.h>
31: #include <sys/kernel.h>
32: #include <sys/conf.h>
33: #include <sys/device.h>
34: #include <sys/extent.h>
35:
36: #include <machine/bus.h>
37:
38: #include <dev/cons.h>
39:
40: #include "wsdisplay.h"
41: #if NWSDISPLAY > 0
42: #include <dev/wscons/wsdisplayvar.h>
43: #endif
44: #include <dev/wscons/wskbdvar.h>
45:
46: cons_decl(ws);
47:
48: void
49: wscnprobe(struct consdev *cp)
50: {
51: int maj;
52:
53: /* locate the major number */
54: for (maj = 0; maj < nchrdev; maj++) {
55: if (cdevsw[maj].d_open == wsdisplayopen)
56: break;
57: }
58:
59: if (maj == nchrdev) {
60: /* we are not in cdevsw[], give up */
61: panic("wsdisplay is not in cdevsw[]");
62: }
63:
64: cp->cn_dev = makedev(maj, 0);
65: cp->cn_pri = CN_INTERNAL;
66: }
67:
68: void
69: wscninit(struct consdev *cp)
70: {
71: return;
72: }
73:
74: void
75: wscnputc(dev_t dev, int i)
76: {
77: wsdisplay_cnputc(dev, i);
78: }
79:
80: int
81: wscngetc(dev_t dev)
82: {
83: return (wskbd_cngetc(dev));
84: }
85:
86: void
87: wscnpollc(dev_t dev, int on)
88: {
89: wskbd_cnpollc(dev, on);
90: }
CVSweb