> - /* Disable interrupts, clock and delete adapter */ > - writew(0, i2c_dev->base + REG_IMR); > - clk_disable_unprepare(i2c_dev->clk); NACK to this patch. The above lines are very important and need to stay. It is, in fact, very dangerous to use devm_* and to not take care that interrupts are disabled before leaving remove(). I'd suggest to simply drop this patch. > - i2c_del_adapter(&i2c_dev->adapter); > + return devm_i2c_add_adapter(&pdev->dev, &i2c_dev->adapter); > } > > static const struct of_device_id wmt_i2c_dt_ids[] = { > @@ -402,7 +388,6 @@ static const struct of_device_id wmt_i2c_dt_ids[] = { > > static struct platform_driver wmt_i2c_driver = { > .probe = wmt_i2c_probe, > - .remove_new = wmt_i2c_remove, > .driver = { > .name = "wmt-i2c", > .of_match_table = wmt_i2c_dt_ids, > -- > 2.34.1 >
Attachment:
signature.asc
Description: PGP signature