svn commit: r255424 - head/sys/dev/ofw
Nathan Whitehorn
nwhitehorn at FreeBSD.org
Mon Sep 9 16:51:36 UTC 2013
Author: nwhitehorn
Date: Mon Sep 9 16:51:35 2013
New Revision: 255424
URL: http://svnweb.freebsd.org/changeset/base/255424
Log:
Make the primary name of the OF console device /dev/ofwcons, and only
alias it to the contents of the output property if it is defined. This
avoids a panic when booting machines (QEMU) where the output-device
property is not defined.
Since output-device is free-form and potentially conflicts with other
entries in /dev, I also am not sure we should be doing the aliasing at
all, but this at least makes things work again.
Approved by: re (kib)
Modified:
head/sys/dev/ofw/ofw_console.c
Modified: head/sys/dev/ofw/ofw_console.c
==============================================================================
--- head/sys/dev/ofw/ofw_console.c Mon Sep 9 15:38:51 2013 (r255423)
+++ head/sys/dev/ofw/ofw_console.c Mon Sep 9 16:51:35 2013 (r255424)
@@ -88,17 +88,19 @@ cn_drvinit(void *unused)
if (ofw_consdev.cn_pri != CN_DEAD &&
ofw_consdev.cn_name[0] != '\0') {
- if ((options = OF_finddevice("/options")) == -1 ||
- OF_getprop(options, "output-device", output,
- sizeof(output)) == -1)
- return;
+ tp = tty_alloc(&ofw_ttydevsw, NULL);
+ tty_makedev(tp, NULL, "%s", "ofwcons");
+
/*
* XXX: This is a hack and it may result in two /dev/ttya
* XXX: devices on platforms where the sab driver works.
*/
- tp = tty_alloc(&ofw_ttydevsw, NULL);
- tty_makedev(tp, NULL, "%s", output);
- tty_makealias(tp, "ofwcons");
+ if ((options = OF_finddevice("/options")) == -1 ||
+ OF_getprop(options, "output-device", output,
+ sizeof(output)) == -1)
+ return;
+ if (strlen(output) > 0)
+ tty_makealias(tp, output);
}
}
More information about the svn-src-head
mailing list