1 /*-
2 * Copyright (c) 2006 Wojciech A. Koszek <wkoszek@FreeBSD.org>
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright
11 * notice, this list of conditions and the following disclaimer in the
12 * documentation and/or other materials provided with the distribution.
13 *
14 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
15 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 *
26 * $Id: xlr_boot1_console.c,v 1.6 2008-07-16 20:22:49 jayachandranc Exp $
27 */
28 /*
29 * Adapted for XLR bootloader
30 * RMi
31 */
32
33 #include <sys/cdefs.h>
34 __FBSDID("$FreeBSD$");
35
36 #include "opt_comconsole.h"
37
38 #include <sys/param.h>
39 #include <sys/kdb.h>
40 #include <sys/kernel.h>
41 #include <sys/systm.h>
42 #include <sys/types.h>
43 #include <sys/conf.h>
44 #include <sys/cons.h>
45 #include <sys/consio.h>
46 #include <sys/tty.h>
47
48 #include <mips/rmi/xlrconfig.h>
49 #include <mips/rmi/shared_structs.h>
50 #include <mips/rmi/shared_structs_func.h>
51
52 #include <ddb/ddb.h>
53
54 #if 0
55 static cn_probe_t xlr_boot1_cnprobe;
56 static cn_init_t xlr_boot1_cninit;
57 static cn_term_t xlr_boot1_cnterm;
58 static cn_getc_t xlr_boot1_cngetc;
59 static cn_checkc_t xlr_boot1_cncheckc;
60 static cn_putc_t xlr_boot1_cnputc;
61
62 CONS_DRIVER(xlrboot, xlr_boot1_cnprobe, xlr_boot1_cninit, xlr_boot1_cnterm, xlr_boot1_cngetc,
63 xlr_boot1_cncheckc, xlr_boot1_cnputc, NULL);
64
65 /*
66 * Device gets probed. Firmwire should be checked here probably.
67 */
68 static void
69 xlr_boot1_cnprobe(struct consdev *cp)
70 {
71 cp->cn_pri = CN_NORMAL;
72 cp->cn_tp = NULL;
73 cp->cn_arg = NULL; /* softc */
74 cp->cn_unit = -1; /* ? */
75 cp->cn_flags = 0;
76 }
77
78 /*
79 * Initialization.
80 */
81 static void
82 xlr_boot1_cninit(struct consdev *cp)
83 {
84 sprintf(cp->cn_name, "boot1");
85 }
86
87 static void
88 xlr_boot1_cnterm(struct consdev *cp)
89 {
90 cp->cn_pri = CN_DEAD;
91 cp->cn_flags = 0;
92 return;
93 }
94
95 static int
96 xlr_boot1_cngetc(struct consdev *cp)
97 {
98 return boot1_info_uart_getchar_func(&xlr_boot1_info);
99 }
100
101 static void
102 xlr_boot1_cnputc(struct consdev *cp, int c)
103 {
104 boot1_info_uart_putchar_func(&xlr_boot1_info, c);
105 }
106
107 static int
108 xlr_boot1_cncheckc(struct consdev *cp)
109 {
110 return 0;
111 }
112
113 #endif
Cache object: b274cddca6c2dbbf22ecb0f69c10d05d
|