.. | .. |
---|
109 | 109 | |
---|
110 | 110 | ret = pci_request_regions(pdev, "mdpy-fb"); |
---|
111 | 111 | if (ret < 0) |
---|
112 | | - return ret; |
---|
| 112 | + goto err_disable_dev; |
---|
113 | 113 | |
---|
114 | 114 | pci_read_config_dword(pdev, MDPY_FORMAT_OFFSET, &format); |
---|
115 | 115 | pci_read_config_dword(pdev, MDPY_WIDTH_OFFSET, &width); |
---|
.. | .. |
---|
191 | 191 | err_release_regions: |
---|
192 | 192 | pci_release_regions(pdev); |
---|
193 | 193 | |
---|
| 194 | +err_disable_dev: |
---|
| 195 | + pci_disable_device(pdev); |
---|
| 196 | + |
---|
194 | 197 | return ret; |
---|
195 | 198 | } |
---|
196 | 199 | |
---|
.. | .. |
---|
199 | 202 | struct fb_info *info = pci_get_drvdata(pdev); |
---|
200 | 203 | |
---|
201 | 204 | unregister_framebuffer(info); |
---|
| 205 | + iounmap(info->screen_base); |
---|
202 | 206 | framebuffer_release(info); |
---|
| 207 | + pci_release_regions(pdev); |
---|
| 208 | + pci_disable_device(pdev); |
---|
203 | 209 | } |
---|
204 | 210 | |
---|
205 | 211 | static struct pci_device_id mdpy_fb_pci_table[] = { |
---|