> -----Original Message----- > From: devicetree-discuss > [mailto:[email protected]] On Behalf > Of Alexander Sverdlin > Sent: Wednesday, November 28, 2012 10:21 PM > To: Jochen Friedrich; Jon Smirl; [email protected]; > [email protected]; Rob Herring; Grant Likely > Cc: alexander sverdlin > Subject: [PATCH] of_i2c: Honour "status=disabled" property of device > > From: Alexander Sverdlin <[email protected]> > > of_i2c: Honour "status=disabled" property of device > > 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 <[email protected]> > ---
Reviewed-by: Barry Song <[email protected]> > --- linux.orig/drivers/of/of_i2c.c > +++ linux/drivers/of/of_i2c.c > @@ -29,7 +29,7 @@ void of_i2c_register_devices(struct i2c_ > > 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; Member of the CSR plc group of companies. CSR plc registered in England and Wales, registered number 4187346, registered office Churchill House, Cambridge Business Park, Cowley Road, Cambridge, CB4 0WZ, United Kingdom More information can be found at www.csr.com. Follow CSR on Twitter at http://twitter.com/CSR_PLC and read our blog at www.csr.com/blog _______________________________________________ devicetree-discuss mailing list [email protected] https://lists.ozlabs.org/listinfo/devicetree-discuss
