diff options
author | Alan Cox <alan@lxorguk.ukuu.org.uk> | 2006-10-11 04:21:47 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-10-11 14:14:21 -0400 |
commit | 3719bc5c22c9025bf1c909fe8b527ebf1de9a153 (patch) | |
tree | c8903738ba172c57c007292e72b0a5c671fe0e1a /drivers/ide/pci/generic.c | |
parent | e5657933863f43cc6bb76a54d659303dafaa9e58 (diff) |
[PATCH] ide-generic: jmicron fix
Some people find their Jmicron pata port reports its disabled even
though it has devices on it and was boot probed. Fix this
(Candidate for 2.6.18.*, less so for 2.6.19 as we've got a proper
jmicron driver on the merge for that to replace ide-generic support)
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/ide/pci/generic.c')
-rw-r--r-- | drivers/ide/pci/generic.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/ide/pci/generic.c b/drivers/ide/pci/generic.c index 965c43659e35..5b77a5bcbf0c 100644 --- a/drivers/ide/pci/generic.c +++ b/drivers/ide/pci/generic.c | |||
@@ -237,10 +237,12 @@ static int __devinit generic_init_one(struct pci_dev *dev, const struct pci_devi | |||
237 | if (dev->vendor == PCI_VENDOR_ID_JMICRON && PCI_FUNC(dev->devfn) != 1) | 237 | if (dev->vendor == PCI_VENDOR_ID_JMICRON && PCI_FUNC(dev->devfn) != 1) |
238 | goto out; | 238 | goto out; |
239 | 239 | ||
240 | pci_read_config_word(dev, PCI_COMMAND, &command); | 240 | if (dev->vendor != PCI_VENDOR_ID_JMICRON) { |
241 | if (!(command & PCI_COMMAND_IO)) { | 241 | pci_read_config_word(dev, PCI_COMMAND, &command); |
242 | printk(KERN_INFO "Skipping disabled %s IDE controller.\n", d->name); | 242 | if (!(command & PCI_COMMAND_IO)) { |
243 | goto out; | 243 | printk(KERN_INFO "Skipping disabled %s IDE controller.\n", d->name); |
244 | goto out; | ||
245 | } | ||
244 | } | 246 | } |
245 | ret = ide_setup_pci_device(dev, d); | 247 | ret = ide_setup_pci_device(dev, d); |
246 | out: | 248 | out: |