diff options
author | Ben Hutchings <ben@decadent.org.uk> | 2013-09-04 21:32:19 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <m.chehab@samsung.com> | 2013-10-03 13:05:32 -0400 |
commit | cfe1b7a703a53318fcecf71e29a516d8fd72eb78 (patch) | |
tree | 2ad13a5c3ce0d2a070918ff5efddf9d9e972a607 | |
parent | fd39abee9e88276251f31f6c3cbefadb2d25486f (diff) |
[media] lirc_bt829: Enable and disable device
We must not assume that the PCI device is already enabled.
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
-rw-r--r-- | drivers/staging/media/lirc/lirc_bt829.c | 9 |
1 files changed, 8 insertions, 1 deletions
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) | |||
126 | if (pdev == NULL) | 126 | if (pdev == NULL) |
127 | return -ENODEV; | 127 | return -ENODEV; |
128 | 128 | ||
129 | rc = pci_enable_device(pdev); | ||
130 | if (rc) | ||
131 | goto err_put_dev; | ||
132 | |||
129 | if (!atir_init_start()) { | 133 | if (!atir_init_start()) { |
130 | rc = -ENODEV; | 134 | rc = -ENODEV; |
131 | goto err_put_dev; | 135 | goto err_disable; |
132 | } | 136 | } |
133 | 137 | ||
134 | strcpy(atir_driver.name, "ATIR"); | 138 | strcpy(atir_driver.name, "ATIR"); |
@@ -154,6 +158,8 @@ int init_module(void) | |||
154 | 158 | ||
155 | err_unmap: | 159 | err_unmap: |
156 | iounmap(pci_addr_lin); | 160 | iounmap(pci_addr_lin); |
161 | err_disable: | ||
162 | pci_disable_device(pdev); | ||
157 | err_put_dev: | 163 | err_put_dev: |
158 | pci_dev_put(pdev); | 164 | pci_dev_put(pdev); |
159 | return rc; | 165 | return rc; |
@@ -166,6 +172,7 @@ void cleanup_module(void) | |||
166 | 172 | ||
167 | lirc_unregister_driver(atir_minor); | 173 | lirc_unregister_driver(atir_minor); |
168 | iounmap(pci_addr_lin); | 174 | iounmap(pci_addr_lin); |
175 | pci_disable_device(pdev); | ||
169 | pci_dev_put(pdev); | 176 | pci_dev_put(pdev); |
170 | } | 177 | } |
171 | 178 | ||