Re: [PATCH1/7] i2c: Add support for device alias names
Hi Jean, -if ((err = f75375_probe(client)) 0) +err = f75375_probe(client, NULL); +if (err 0) goto exit_detach; return 0; These coding style cleanups don't belong to this patch (if they belong anywhere - I don't much see the point) I just wanted to make sure, scripts/checkpatch.pl doesn't complain. But you're right. The coding style cleanup should have been another patch. Thanks a lot for your efforts of getting the alias stuff in! Jochen ___ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev
Re: [PATCH1/7] i2c: Add support for device alias names
Hi Jochen, On Fri, 11 Apr 2008 16:07:35 +0200, Jochen Friedrich wrote: Based on earlier work by Jon Smirl and Jean Delvare. This patch allows new-style i2c chip drivers to have alias names using the official kernel aliasing system and MODULE_DEVICE_TABLE(). At this point, the old i2c driver binding scheme (driver_name/type) is still supported. Signed-off-by: Jochen Friedrich [EMAIL PROTECTED] Cc: Jean Delvare [EMAIL PROTECTED] Cc: Jon Smirl [EMAIL PROTECTED] --- drivers/hwmon/f75375s.c| 21 drivers/i2c/chips/ds1682.c |3 +- drivers/i2c/chips/menelaus.c |3 +- drivers/i2c/chips/tps65010.c |3 +- drivers/i2c/chips/tsl2550.c|3 +- drivers/i2c/i2c-core.c | 51 +++- drivers/media/video/cs5345.c |3 +- drivers/media/video/cs53l32a.c |3 +- drivers/media/video/cx25840/cx25840-core.c |3 +- drivers/media/video/ivtv/ivtv-i2c.c|2 +- drivers/media/video/m52790.c |3 +- drivers/media/video/msp3400-driver.c |3 +- drivers/media/video/saa7115.c |3 +- drivers/media/video/saa7127.c |3 +- drivers/media/video/tlv320aic23b.c |3 +- drivers/media/video/tuner-core.c |3 +- drivers/media/video/tvaudio.c |3 +- drivers/media/video/upd64031a.c|3 +- drivers/media/video/upd64083.c |3 +- drivers/media/video/v4l2-common.c |5 ++- drivers/media/video/vp27smpx.c |3 +- drivers/media/video/wm8739.c |3 +- drivers/media/video/wm8775.c |3 +- drivers/rtc/rtc-ds1307.c |3 +- drivers/rtc/rtc-ds1374.c |3 +- drivers/rtc/rtc-m41t80.c |3 +- drivers/rtc/rtc-rs5c372.c |3 +- include/linux/i2c.h|5 +-- include/linux/mod_devicetable.h| 13 +++ include/media/v4l2-common.h|4 ++- include/media/v4l2-i2c-drv-legacy.h|2 +- include/media/v4l2-i2c-drv.h |2 +- scripts/mod/file2alias.c | 13 +++ 33 files changed, 139 insertions(+), 48 deletions(-) diff --git a/drivers/hwmon/f75375s.c b/drivers/hwmon/f75375s.c index 1464338..3ec9123 100644 --- a/drivers/hwmon/f75375s.c +++ b/drivers/hwmon/f75375s.c @@ -117,7 +117,8 @@ struct f75375_data { static int f75375_attach_adapter(struct i2c_adapter *adapter); static int f75375_detect(struct i2c_adapter *adapter, int address, int kind); static int f75375_detach_client(struct i2c_client *client); -static int f75375_probe(struct i2c_client *client); +static int f75375_probe(struct i2c_client *client, + const struct i2c_device_id *id); static int f75375_remove(struct i2c_client *client); static struct i2c_driver f75375_legacy_driver = { @@ -628,7 +629,8 @@ static void f75375_init(struct i2c_client *client, struct f75375_data *data, } -static int f75375_probe(struct i2c_client *client) +static int f75375_probe(struct i2c_client *client, + const struct i2c_device_id *id) { struct f75375_data *data = i2c_get_clientdata(client); struct f75375s_platform_data *f75375s_pdata = client-dev.platform_data; @@ -637,7 +639,8 @@ static int f75375_probe(struct i2c_client *client) if (!i2c_check_functionality(client-adapter, I2C_FUNC_SMBUS_BYTE_DATA)) return -EIO; - if (!(data = kzalloc(sizeof(struct f75375_data), GFP_KERNEL))) + data = kzalloc(sizeof(struct f75375_data), GFP_KERNEL); + if (!data) return -ENOMEM; i2c_set_clientdata(client, data); @@ -653,7 +656,8 @@ static int f75375_probe(struct i2c_client *client) return -ENODEV; } - if ((err = sysfs_create_group(client-dev.kobj, f75375_group))) + err = sysfs_create_group(client-dev.kobj, f75375_group); + if (err) goto exit_free; if (data-kind == f75375) { @@ -713,7 +717,8 @@ static int f75375_detect(struct i2c_adapter *adapter, int address, int kind) int err = 0; const char *name = ; - if (!(client = kzalloc(sizeof(*client), GFP_KERNEL))) { + client = kzalloc(sizeof(*client), GFP_KERNEL); + if (!client) { err = -ENOMEM; goto exit; } @@ -745,10 +750,12 @@ static int f75375_detect(struct i2c_adapter *adapter, int address, int kind) dev_info(adapter-dev, found %s version: %02X\n, name, version); strlcpy(client-name, name, I2C_NAME_SIZE); - if ((err = i2c_attach_client(client))) + err = i2c_attach_client(client); + if (err) goto exit_free; - if ((err =
[PATCH1/7] i2c: Add support for device alias names
Based on earlier work by Jon Smirl and Jean Delvare. This patch allows new-style i2c chip drivers to have alias names using the official kernel aliasing system and MODULE_DEVICE_TABLE(). At this point, the old i2c driver binding scheme (driver_name/type) is still supported. Signed-off-by: Jochen Friedrich [EMAIL PROTECTED] Cc: Jean Delvare [EMAIL PROTECTED] Cc: Jon Smirl [EMAIL PROTECTED] --- drivers/hwmon/f75375s.c| 21 drivers/i2c/chips/ds1682.c |3 +- drivers/i2c/chips/menelaus.c |3 +- drivers/i2c/chips/tps65010.c |3 +- drivers/i2c/chips/tsl2550.c|3 +- drivers/i2c/i2c-core.c | 51 +++- drivers/media/video/cs5345.c |3 +- drivers/media/video/cs53l32a.c |3 +- drivers/media/video/cx25840/cx25840-core.c |3 +- drivers/media/video/ivtv/ivtv-i2c.c|2 +- drivers/media/video/m52790.c |3 +- drivers/media/video/msp3400-driver.c |3 +- drivers/media/video/saa7115.c |3 +- drivers/media/video/saa7127.c |3 +- drivers/media/video/tlv320aic23b.c |3 +- drivers/media/video/tuner-core.c |3 +- drivers/media/video/tvaudio.c |3 +- drivers/media/video/upd64031a.c|3 +- drivers/media/video/upd64083.c |3 +- drivers/media/video/v4l2-common.c |5 ++- drivers/media/video/vp27smpx.c |3 +- drivers/media/video/wm8739.c |3 +- drivers/media/video/wm8775.c |3 +- drivers/rtc/rtc-ds1307.c |3 +- drivers/rtc/rtc-ds1374.c |3 +- drivers/rtc/rtc-m41t80.c |3 +- drivers/rtc/rtc-rs5c372.c |3 +- include/linux/i2c.h|5 +-- include/linux/mod_devicetable.h| 13 +++ include/media/v4l2-common.h|4 ++- include/media/v4l2-i2c-drv-legacy.h|2 +- include/media/v4l2-i2c-drv.h |2 +- scripts/mod/file2alias.c | 13 +++ 33 files changed, 139 insertions(+), 48 deletions(-) diff --git a/drivers/hwmon/f75375s.c b/drivers/hwmon/f75375s.c index 1464338..3ec9123 100644 --- a/drivers/hwmon/f75375s.c +++ b/drivers/hwmon/f75375s.c @@ -117,7 +117,8 @@ struct f75375_data { static int f75375_attach_adapter(struct i2c_adapter *adapter); static int f75375_detect(struct i2c_adapter *adapter, int address, int kind); static int f75375_detach_client(struct i2c_client *client); -static int f75375_probe(struct i2c_client *client); +static int f75375_probe(struct i2c_client *client, + const struct i2c_device_id *id); static int f75375_remove(struct i2c_client *client); static struct i2c_driver f75375_legacy_driver = { @@ -628,7 +629,8 @@ static void f75375_init(struct i2c_client *client, struct f75375_data *data, } -static int f75375_probe(struct i2c_client *client) +static int f75375_probe(struct i2c_client *client, + const struct i2c_device_id *id) { struct f75375_data *data = i2c_get_clientdata(client); struct f75375s_platform_data *f75375s_pdata = client-dev.platform_data; @@ -637,7 +639,8 @@ static int f75375_probe(struct i2c_client *client) if (!i2c_check_functionality(client-adapter, I2C_FUNC_SMBUS_BYTE_DATA)) return -EIO; - if (!(data = kzalloc(sizeof(struct f75375_data), GFP_KERNEL))) + data = kzalloc(sizeof(struct f75375_data), GFP_KERNEL); + if (!data) return -ENOMEM; i2c_set_clientdata(client, data); @@ -653,7 +656,8 @@ static int f75375_probe(struct i2c_client *client) return -ENODEV; } - if ((err = sysfs_create_group(client-dev.kobj, f75375_group))) + err = sysfs_create_group(client-dev.kobj, f75375_group); + if (err) goto exit_free; if (data-kind == f75375) { @@ -713,7 +717,8 @@ static int f75375_detect(struct i2c_adapter *adapter, int address, int kind) int err = 0; const char *name = ; - if (!(client = kzalloc(sizeof(*client), GFP_KERNEL))) { + client = kzalloc(sizeof(*client), GFP_KERNEL); + if (!client) { err = -ENOMEM; goto exit; } @@ -745,10 +750,12 @@ static int f75375_detect(struct i2c_adapter *adapter, int address, int kind) dev_info(adapter-dev, found %s version: %02X\n, name, version); strlcpy(client-name, name, I2C_NAME_SIZE); - if ((err = i2c_attach_client(client))) + err = i2c_attach_client(client); + if (err) goto exit_free; - if ((err = f75375_probe(client)) 0) + err = f75375_probe(client, NULL); + if (err 0) goto exit_detach;