lkml.org 
[lkml]   [2008]   [Jul]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] Char: isicom, enable/disable pci device
On Thu, 10 Jul 2008 16:20:12 +0200 Jiri Slaby <jirislaby@gmail.com> wrote:

> Don't forget to enable and disable PCI devices. The device
> might be unusable without that.
>
> Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
> ---
> drivers/char/isicom.c | 8 ++++++++
> 1 files changed, 8 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/char/isicom.c b/drivers/char/isicom.c
> index 4f3cefa..a1a67e3 100644
> --- a/drivers/char/isicom.c
> +++ b/drivers/char/isicom.c
> @@ -1736,6 +1736,12 @@ static int __devinit isicom_probe(struct pci_dev *pdev,
> if (card_count >= BOARD_COUNT)
> goto err;
>
> + retval = pci_enable_device(pdev);
> + if (retval) {
> + dev_err(&pdev->dev, "failed to enable\n");
> + goto err;
> + }
> +
> dev_info(&pdev->dev, "ISI PCI Card(Device ID 0x%x)\n", ent->device);
>
> /* allot the first empty slot in the array */
> @@ -1790,6 +1796,7 @@ errunrr:
> errdec:
> board->base = 0;
> card_count--;
> + pci_disable_device(pdev);
> err:
> return retval;
> }
> @@ -1806,6 +1813,7 @@ static void __devexit isicom_remove(struct pci_dev *pdev)
> pci_release_region(pdev, 3);
> board->base = 0;
> card_count--;
> + pci_disable_device(pdev);
> }
>
> static int __init isicom_init(void)

hm. Is this a recently-added problem?

I wonder what the chance is that this will fix something. Or break
something.


\
 
 \ /
  Last update: 2008-07-11 01:43    [W:0.044 / U:0.468 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site