From: Ben Hutchings Date: Thu, 5 Sep 2013 01:32:19 +0000 (-0300) Subject: [media] lirc_bt829: Enable and disable device X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=cfe1b7a703a53318fcecf71e29a516d8fd72eb78;p=openwrt%2Fstaging%2Fblogic.git [media] lirc_bt829: Enable and disable device We must not assume that the PCI device is already enabled. Signed-off-by: Ben Hutchings Signed-off-by: Mauro Carvalho Chehab --- diff --git a/drivers/staging/media/lirc/lirc_bt829.c b/drivers/staging/media/lirc/lirc_bt829.c index a61d233f38ca..623f10e2cdaa 100644 --- a/drivers/staging/media/lirc/lirc_bt829.c +++ b/drivers/staging/media/lirc/lirc_bt829.c @@ -126,9 +126,13 @@ int init_module(void) if (pdev == NULL) return -ENODEV; + rc = pci_enable_device(pdev); + if (rc) + goto err_put_dev; + if (!atir_init_start()) { rc = -ENODEV; - goto err_put_dev; + goto err_disable; } strcpy(atir_driver.name, "ATIR"); @@ -154,6 +158,8 @@ int init_module(void) err_unmap: iounmap(pci_addr_lin); +err_disable: + pci_disable_device(pdev); err_put_dev: pci_dev_put(pdev); return rc; @@ -166,6 +172,7 @@ void cleanup_module(void) lirc_unregister_driver(atir_minor); iounmap(pci_addr_lin); + pci_disable_device(pdev); pci_dev_put(pdev); }