On Wed, Apr 22, 2009 at 3:19 AM, Michael Lawnick <ml.lawnick@xxxxxx> wrote: > For MPC adapter there is no class assigned as it is done in other > adapters. This way no new-style client will ever be instantiated, if not > noted in device tree or forced. With this patch class assignment is read > from device tree. > If class assignment is not set in device tree .class stays default (0) > > Necessary device tree entry: > linux,i2c-class = <1>; /* I2C_CLASS_HWMON (iic.h) */ When this patch makes it over to the device tree police they are going to reject it. They will never allow OS specific entries into the cross platform device tree standard. > > Based on kernel 2.6.29 > > Signed-off-by: Michael Lawnick <ml.lawnick@xxxxxx> > Cc: Jean Delvare <khali@xxxxxxxxxxxx> > Cc: Sang, Wolfram <w.sang@xxxxxxxxxxxxxx> > Cc: Wolfgang Grandegger <wg@xxxxxxxxxxxxxx> > --- > drivers/i2c/busses/i2c-mpc.c | 7 ++++++- > 1 files changed, 6 insertions(+), 1 deletions(-) > > diff --git a/drivers/i2c/busses/i2c-mpc.c b/drivers/i2c/busses/i2c-mpc.c > --- a/drivers/i2c/busses/i2c-mpc.c > +++ b/drivers/i2c/busses/i2c-mpc.c > @@ -318,7 +318,8 @@ static int __devinit fsl_i2c_probe(struct of_device > *op, const struct of_device_ > { > int result = 0; > struct mpc_i2c *i2c; > - > + int *of_val; > + > i2c = kzalloc(sizeof(*i2c), GFP_KERNEL); > if (!i2c) > return -ENOMEM; > @@ -354,6 +355,10 @@ static int __devinit fsl_i2c_probe(struct of_device > *op, const struct of_device_ > dev_set_drvdata(&op->dev, i2c); > > i2c->adap = mpc_ops; > + of_val = of_get_property(op->node, "linux,i2c-class", NULL); > + if(of_val) > + i2c->adap.class = *of_val; > + > i2c_set_adapdata(&i2c->adap, i2c); > i2c->adap.dev.parent = &op->dev; > > > > -- > Michael Lawnick > -- > To unsubscribe from this list: send the line "unsubscribe linux-i2c" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html > -- Jon Smirl jonsmirl@xxxxxxxxx -- To unsubscribe from this list: send the line "unsubscribe linux-i2c" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html