hi, i found some bugs about /driver/i2c/busses/i2c-davinci.c, please see my
patch: --- i2c-davinci.c 2007-05-10 09:11:36.000000000 +0800
+++ i2c-davinci-ok.c 2007-09-05 20:19:18.305179248 +0800
@@ -557,17 +557,11 @@
i2c_davinci_dev.regs = (davinci_i2cregsovly)I2C_BASE;
- status = (int)request_region(I2C_BASE, I2C_IOSIZE, MODULE_NAME);
- if (!status) {
- i2c_err("I2C is already in use\n");
- return -ENODEV;
- }
-
status = request_irq(IRQ_I2C, i2c_davinci_isr, 0, "i2c",
&i2c_davinci_dev);
if (status) {
i2c_err("failed to request I2C IRQ");
- goto do_release_region;
+ goto do_free_irq;
}
i2c_set_adapdata(&i2c_davinci_adap, &i2c_davinci_dev);
@@ -590,9 +584,7 @@
do_free_irq:
free_irq(IRQ_I2C, &i2c_davinci_dev);
- do_release_region:
- release_region(I2C_BASE, I2C_IOSIZE);
-
+
return status;
}
@@ -605,7 +597,6 @@
i2c_del_adapter(&i2c_davinci_adap);
dev.regs->icmdr = 0;
free_irq(IRQ_I2C, &i2c_davinci_dev);
- release_region(I2C_BASE, I2C_IOSIZE);
driver_unregister(&davinci_i2c_driver);
platform_device_unregister(&davinci_i2c_device);
} _______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source