From: Stefan Roese Date: Sat, 13 Oct 2007 21:56:30 +0000 (+0200) Subject: i2c-ibm_iic: Add support for new-style clients X-Git-Tag: v2.6.24-rc1~1353 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=7589a326d1d8c9da575ca4cbc6a3e6af02b57ead;p=platform%2Fkernel%2Flinux-3.10.git i2c-ibm_iic: Add support for new-style clients Use i2c_bit_add_numbered_adapter() if device id specified, so that the i2c-ibm_iic adapter works well with new-style pre-declared devices. Signed-off-by: Stefan Roese Signed-off-by: Jean Delvare --- diff --git a/drivers/i2c/busses/i2c-ibm_iic.c b/drivers/i2c/busses/i2c-ibm_iic.c index 8b14d14..e08baca 100644 --- a/drivers/i2c/busses/i2c-ibm_iic.c +++ b/drivers/i2c/busses/i2c-ibm_iic.c @@ -738,7 +738,14 @@ static int __devinit iic_probe(struct ocp_device *ocp){ adap->timeout = 1; adap->retries = 1; - if ((ret = i2c_add_adapter(adap)) != 0){ + /* + * If "dev->idx" is negative we consider it as zero. + * The reason to do so is to avoid sysfs names that only make + * sense when there are multiple adapters. + */ + adap->nr = dev->idx >= 0 ? dev->idx : 0; + + if ((ret = i2c_add_numbered_adapter(adap)) < 0) { printk(KERN_CRIT "ibm-iic%d: failed to register i2c adapter\n", dev->idx); goto fail;