X-Git-Url: http://ftp.safe.ca/?a=blobdiff_plain;f=drivers%2Fmfd%2Fda903x.c;h=e5ffe561739387837a37bd66454ee089b580f4d9;hb=2021de874e9f09774616772cfdefdab0e6193b09;hp=0b5bd85dfcec5e4d4bdabfeae15a4a19f19f28ed;hpb=b1ccbdc4a2af5ffcd6082c3a7a6fbd0e134031f2;p=safe%2Fjmp%2Flinux-2.6 diff --git a/drivers/mfd/da903x.c b/drivers/mfd/da903x.c index 0b5bd85..e5ffe56 100644 --- a/drivers/mfd/da903x.c +++ b/drivers/mfd/da903x.c @@ -151,12 +151,24 @@ int da903x_write(struct device *dev, int reg, uint8_t val) } EXPORT_SYMBOL_GPL(da903x_write); +int da903x_writes(struct device *dev, int reg, int len, uint8_t *val) +{ + return __da903x_writes(to_i2c_client(dev), reg, len, val); +} +EXPORT_SYMBOL_GPL(da903x_writes); + int da903x_read(struct device *dev, int reg, uint8_t *val) { return __da903x_read(to_i2c_client(dev), reg, val); } EXPORT_SYMBOL_GPL(da903x_read); +int da903x_reads(struct device *dev, int reg, int len, uint8_t *val) +{ + return __da903x_reads(to_i2c_client(dev), reg, len, val); +} +EXPORT_SYMBOL_GPL(da903x_reads); + int da903x_set_bits(struct device *dev, int reg, uint8_t bit_mask) { struct da903x_chip *chip = dev_get_drvdata(dev); @@ -401,7 +413,7 @@ static void da903x_irq_work(struct work_struct *work) enable_irq(chip->client->irq); } -static int da903x_irq_handler(int irq, void *data) +static irqreturn_t da903x_irq_handler(int irq, void *data) { struct da903x_chip *chip = data; @@ -435,13 +447,13 @@ static const struct i2c_device_id da903x_id_table[] = { }; MODULE_DEVICE_TABLE(i2c, da903x_id_table); -static int __devexit __remove_subdev(struct device *dev, void *unused) +static int __remove_subdev(struct device *dev, void *unused) { platform_device_unregister(to_platform_device(dev)); return 0; } -static int __devexit da903x_remove_subdevs(struct da903x_chip *chip) +static int da903x_remove_subdevs(struct da903x_chip *chip) { return device_for_each_child(chip->dev, NULL, __remove_subdev); } @@ -549,7 +561,7 @@ static int __init da903x_init(void) { return i2c_add_driver(&da903x_driver); } -module_init(da903x_init); +subsys_initcall(da903x_init); static void __exit da903x_exit(void) {