svn commit: r223554 - head/sys/dev/sound/macio
Nathan Whitehorn
nwhitehorn at FreeBSD.org
Sun Jun 26 00:35:12 UTC 2011
Author: nwhitehorn
Date: Sun Jun 26 00:35:11 2011
New Revision: 223554
URL: http://svn.freebsd.org/changeset/base/223554
Log:
Do not attach to the sound device on G5 Xserves, which is actually an
LED controller used to run the load graph on the server's front panel.
Reported by: Paul Mather <paul at gromit dot dlib dot vt dot edu>
MFC after: 3 days
Modified:
head/sys/dev/sound/macio/i2s.c
Modified: head/sys/dev/sound/macio/i2s.c
==============================================================================
--- head/sys/dev/sound/macio/i2s.c Sat Jun 25 23:14:49 2011 (r223553)
+++ head/sys/dev/sound/macio/i2s.c Sun Jun 26 00:35:11 2011 (r223554)
@@ -158,6 +158,8 @@ static int
i2s_probe(device_t self)
{
const char *name;
+ phandle_t subchild;
+ char subchildname[255];
name = ofw_bus_get_name(self);
if (!name)
@@ -165,6 +167,16 @@ i2s_probe(device_t self)
if (strcmp(name, "i2s") != 0)
return (ENXIO);
+
+ /*
+ * Do not attach to "lightshow" I2S devices on Xserves. This controller
+ * is used there to control the LEDs on the front panel, and this
+ * driver can't handle it.
+ */
+ subchild = OF_child(OF_child(ofw_bus_get_node(self)));
+ if (subchild != 0 && OF_getprop(subchild, "name", subchildname,
+ sizeof(subchildname)) > 0 && strcmp(subchildname, "lightshow") == 0)
+ return (ENXIO);
device_set_desc(self, "Apple I2S Audio Controller");
More information about the svn-src-all
mailing list