Some Apple I2C buses give the device's I2C address in a property with the
name i2c-address instead of reg. Change the OFW I2C probe to check both locations for the address. Submitted by: Marco Trillo Reported by: Justin Hibbits
This commit is contained in:
parent
06edd2f1e8
commit
e2c10e7d4a
@ -118,8 +118,15 @@ ofw_iicbus_attach(device_t dev)
|
|||||||
node = ofw_bus_get_node(dev);
|
node = ofw_bus_get_node(dev);
|
||||||
|
|
||||||
for (child = OF_child(node); child != 0; child = OF_peer(child)) {
|
for (child = OF_child(node); child != 0; child = OF_peer(child)) {
|
||||||
if (OF_getprop(child, "reg", &addr, sizeof(addr)) == -1)
|
/*
|
||||||
continue;
|
* Try to get the I2C address first from the i2c-address
|
||||||
|
* property, then try the reg property. It moves around
|
||||||
|
* on different systems.
|
||||||
|
*/
|
||||||
|
|
||||||
|
if (OF_getprop(child, "i2c-address", &addr, sizeof(addr)) == -1)
|
||||||
|
if (OF_getprop(child, "reg", &addr, sizeof(addr)) == -1)
|
||||||
|
continue;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Now set up the I2C and OFW bus layer devinfo and add it
|
* Now set up the I2C and OFW bus layer devinfo and add it
|
||||||
|
Loading…
Reference in New Issue
Block a user