1 /*
2 * Mach Operating System
3 * Copyright (c) 1991 Carnegie Mellon University
4 * All Rights Reserved.
5 *
6 * Permission to use, copy, modify and distribute this software and its
7 * documentation is hereby granted, provided that both the copyright
8 * notice and this permission notice appear in all copies of the
9 * software, derivative works or modified versions, and any portions
10 * thereof, and that both notices appear in supporting documentation.
11 *
12 * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
13 * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
14 * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
15 *
16 * Carnegie Mellon requests users of this software to return to
17 *
18 * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU
19 * School of Computer Science
20 * Carnegie Mellon University
21 * Pittsburgh PA 15213-3890
22 *
23 * any improvements or extensions that they make and grant Carnegie Mellon
24 * the rights to redistribute these changes.
25 */
26 /*
27 * Copyright 1988, 1989, 1990, 1991 by Intel Corporation,
28 * Santa Clara, California.
29 *
30 * All Rights Reserved
31 *
32 * Permission to use, copy, modify, and distribute this software and its
33 * documentation for any purpose and without fee is hereby granted,
34 * provided that the above copyright notice appears in all copies and that
35 * both the copyright notice and this permission notice appear in
36 * supporting documentation, and that the name of Intel not be used in
37 * advertising or publicity pertaining to distribution of the software
38 * without specific, written prior permission.
39 *
40 * INTEL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING
41 * ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT
42 * SHALL INTEL BE LIABLE FOR ANY SPECIAL, INDIRECT, OR CONSEQUENTIAL
43 * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
44 * PROFITS, WHETHER IN ACTION OF CONTRACT, NEGLIGENCE, OR OTHER TORTIOUS
45 * ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
46 * THIS SOFTWARE.
47 */
48 /*
49 * HISTORY
50 * $Log: autoconf.c,v $
51 * Revision 2.7 92/04/01 19:32:38 rpd
52 * Renamed gets to safe_gets.
53 * [92/03/31 rpd]
54 *
55 * Revision 2.6 91/08/03 18:17:47 jsb
56 * Eliminated call to ask_bootstrap_server.
57 * Only call ask_root_device if RB_ASKNAME.
58 * Split dcm_init call into dcm_init_{send,recv}.
59 * [91/07/25 18:38:51 jsb]
60 *
61 * Revision 2.5 91/07/01 08:24:08 jsb
62 * Call ask_bootstrap_server.
63 * [91/06/29 16:39:11 jsb]
64 *
65 * Revision 2.4 91/06/18 20:50:00 jsb
66 * New copyright from Intel.
67 * [91/06/18 20:05:31 jsb]
68 *
69 * Revision 2.3 91/06/06 17:04:20 jsb
70 * Added implementation and call to ask_root_device.
71 * [91/05/13 16:59:05 jsb]
72 *
73 * Revision 2.2.1.1 91/01/07 11:03:51 jsb
74 * Added implementation and call to ask_root_device.
75 *
76 * Revision 2.2 90/12/04 14:46:57 jsb
77 * First checkin.
78 * [90/12/04 10:55:12 jsb]
79 *
80 */
81
82 #include <sys/types.h>
83 #include <sys/reboot.h>
84 #include <i386at/atbus.h>
85
86 #include <cnp.h>
87 #if NCNP > 0
88 extern struct isa_dev cnpinfo[];
89 #endif NCNP
90
91 /* overrides hard-coded root_name used by get_root_device() */
92 ask_root_device()
93 {
94 static char root[64];
95 extern char *root_name;
96
97 printf("root device? [%s] ", root_name);
98 safe_gets(root, sizeof(root));
99 if (root[0] != '\0') {
100 root_name = root;
101 }
102 }
103
104 probeio()
105 {
106 int i;
107 struct isa_dev *dev_p;
108 struct isa_driver *drv_p;
109
110 if (boothowto & RB_ASKNAME) {
111 ask_root_device();
112 }
113 #if NCNP > 0
114 for (i = 0; i < NCNP; i++) {
115 dev_p = &cnpinfo[i];
116 drv_p = dev_p->dev_driver;
117
118 if (drv_p->driver_probe(dev_p->dev_addr, i)) {
119 printf("cnp%d at 0x%x\n", i, dev_p->dev_addr);
120 dev_p->dev_alive = 1;
121 drv_p->driver_attach(dev_p);
122 }
123 }
124 #endif NCNP
125
126 /*
127 * Initialize the DCM routing hardware.
128 */
129 dcm_init_send();
130 dcm_init_recv();
131 }
Cache object: 55616d2b1eb24ce806272dccaed0f539
|