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
This commit is contained in:
parent
e836f024ca
commit
a6b7f1b6f8
@ -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");
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user