Messages in this thread Patch in this message | | | From | Jeffy Chen <> | Subject | [PATCH v2] mfd: cros_ec: Free IRQ on exit | Date | Mon, 12 Jun 2017 16:42:46 +0800 |
| |
Currently we request the irq when probing, but never free it. So after unbind ec driver, this irq will be left requested, which would break the next bind: [ 2683.338437] genirq: Flags mismatch irq 64. 00002008 (chromeos-ec) vs. 00002008 (chromeos-ec) [ 2683.338591] cros-ec-spi spi5.0: request irq 64: error -16 [ 2683.338610] cros-ec-spi spi5.0: cannot register EC [ 2683.338656] cros-ec-spi: probe of spi5.0 failed with error -16
Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
---
Changes in v2: Improve the commit message.
drivers/mfd/cros_ec.c | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/drivers/mfd/cros_ec.c b/drivers/mfd/cros_ec.c index e31ac60..dc6ce90 100644 --- a/drivers/mfd/cros_ec.c +++ b/drivers/mfd/cros_ec.c @@ -183,6 +183,9 @@ int cros_ec_remove(struct cros_ec_device *ec_dev) cros_ec_acpi_remove_gpe_handler(); + if (ec_dev->irq) + free_irq(ec_dev->irq, ec_dev); + return 0; } EXPORT_SYMBOL(cros_ec_remove); -- 2.1.4
| |