Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 17 May 2011 12:47:38 +0000 (UTC)
From:      Nathan Whitehorn <nwhitehorn@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r222022 - projects/pseries/dev/ofw
Message-ID:  <201105171247.p4HClchO031544@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: nwhitehorn
Date: Tue May 17 12:47:38 2011
New Revision: 222022
URL: http://svn.freebsd.org/changeset/base/222022

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.

Modified:
  projects/pseries/dev/ofw/ofw_console.c

Modified: projects/pseries/dev/ofw/ofw_console.c
==============================================================================
--- projects/pseries/dev/ofw/ofw_console.c	Tue May 17 11:56:50 2011	(r222021)
+++ projects/pseries/dev/ofw/ofw_console.c	Tue May 17 12:47:38 2011	(r222022)
@@ -87,17 +87,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);
 	}
 }
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201105171247.p4HClchO031544>