From: lw Date: Wed, 7 Mar 2012 06:23:45 +0000 (+0800) Subject: rk30:add id table for cm3217 X-Git-Tag: firefly_0821_release~9595^2~86 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=79e3c3798a07e9698767207022b9e44b7e803f89;p=firefly-linux-kernel-4.4.55.git rk30:add id table for cm3217 --- diff --git a/drivers/input/lightsensor/cm3217.c b/drivers/input/lightsensor/cm3217.c index 6d0bb9e27b05..5dcbb0d1952a 100755 --- a/drivers/input/lightsensor/cm3217.c +++ b/drivers/input/lightsensor/cm3217.c @@ -245,6 +245,13 @@ static int cm3217_probe(struct i2c_client *client, const struct i2c_device_id *i char com1 = CM3217_COM1_VALUE, com2 = CM3217_COM2_VALUE; int err; + if (!i2c_check_functionality(client->adapter, I2C_FUNC_I2C)) + { + dev_err(&client->dev, "Must have I2C_FUNC_I2C.\n"); + err = -ENODEV; + goto alloc_memory_fail; + } + cm3217 = kmalloc(sizeof(struct cm3217_data), GFP_KERNEL); if(!cm3217){ printk("cm3217 alloc memory err !!!\n"); @@ -327,9 +334,15 @@ static int cm3217_remove(struct i2c_client *client) return 0; } +static const struct i2c_device_id cm3217_id[] = { + { "lightsensor", 0 }, +}; + + static struct i2c_driver cm3217_driver = { .probe = cm3217_probe, .remove = __devexit_p(cm3217_remove), + .id_table = cm3217_id, .driver = { .owner = THIS_MODULE, .name = "lightsensor",