Skip to content

Commit

Permalink
of_i2c: Honour "status=disabled" property of device
Browse files Browse the repository at this point in the history
Currently of_i2c_register_devices() function registers all i2c devices,
independently from their status property in device tree. According to
"ePAPR 1.1" spec, device should only be registered if there is no
"status" property, or it has "ok" (or "okay") value (see
of_device_is_available()). In case of "platform devices",
of_platform_device_create_pdata() checks for "status" and ensures
that disabled devices are not populated. But such check for i2c buses
was missing until now. Fix it.

Signed-off-by: Alexander Sverdlin <alexander.sverdlin@sysgo.com>
Acked-by: Rob Herring <robherring2@gmail.com>
Acked-by: Wolfram Sang <w.sang@pengutronix.de>
Reviewed-by: Barry Song <Baohua.Song@csr.com>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
  • Loading branch information
Alexander Sverdlin authored and Grant Likely committed Nov 29, 2012
1 parent 499b42c commit 4447ca1
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion drivers/of/of_i2c.c
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ void of_i2c_register_devices(struct i2c_adapter *adap)

dev_dbg(&adap->dev, "of_i2c: walking child nodes\n");

for_each_child_of_node(adap->dev.of_node, node) {
for_each_available_child_of_node(adap->dev.of_node, node) {
struct i2c_board_info info = {};
struct dev_archdata dev_ad = {};
const __be32 *addr;
Expand Down

0 comments on commit 4447ca1

Please sign in to comment.