question about drivers/i2c/busses/i2c-davinci.c

Julia Lawall julia.lawall at lip6.fr
Mon Jan 7 07:00:59 EST 2013


The function davinci_i2c_remove in drivers/i2c/busses/i2c-davinci.c 
contains the following code:

         put_device(&pdev->dev);

         clk_disable_unprepare(dev->clk);
         clk_put(dev->clk);
         dev->clk = NULL;

         davinci_i2c_write_reg(dev, DAVINCI_I2C_MDR_REG, 0);
 	free_irq(dev->irq, dev);

Is there any danger in putting free_irq(dev->irq, dev); after 
put_device(&pdev->dev);, because the interrupt handler i2c_davinci_isr can 
eg refer to dev->dev.

thanks,
julia


More information about the devicetree-discuss mailing list