18 #include <linux/kernel.h>
19 #include <linux/types.h>
20 #include <linux/string.h>
25 #include <asm/oplib.h>
105 devfn = (regs->
phys_hi >> 8) & 0xff;
164 vendor = prop->
value;
168 device = prop->
value;
170 sprintf(tmp_buf,
"%s:%d:%d@%x,%x",
171 dp->
name, *vendor, *device,
179 if (parent !=
NULL) {
182 return pci_path_component(dp, tmp_buf);
184 return sbus_path_component(dp, tmp_buf);
186 return ebus_path_component(dp, tmp_buf);
188 return ambapp_path_component(dp, tmp_buf);
194 return sparc32_path_component(dp, tmp_buf);
199 char tmp_buf[64], *
n;
202 __build_path_component(dp, tmp_buf);
203 if (tmp_buf[0] ==
'\0')
216 char *
msg =
"OF stdout device is: %s\n";
228 switch (*
romvec->pv_stdout) {
248 for_each_node_by_type(dp, type) {
253 prom_printf(
"Cannot find PROM_V0 console node.\n");
259 if (!
strcmp(type,
"serial")) {
261 (skip ?
":b" :
":a"));
268 fd = *
romvec->pv_v2bootargs.fd_stdout;
271 node = (*
romvec->pv_v2devops.v2_inst2pkg)(fd);
273 spin_unlock_irqrestore(&
prom_lock, flags);
277 "instance %08x.\n", fd);
285 "device_type property.\n");
289 if (
strcmp(type,
"display") &&
strcmp(type,
"serial")) {
290 prom_printf(
"Console device_type is neither display "
299 switch (*
romvec->pv_stdout) {