|
@@ -526,7 +526,7 @@ static int via_init_one(struct pci_dev *pdev, const struct pci_device_id *id)
|
|
|
.port_ops = &via_port_ops
|
|
|
};
|
|
|
const struct ata_port_info *ppi[] = { NULL, NULL };
|
|
|
- struct pci_dev *isa = NULL;
|
|
|
+ struct pci_dev *isa;
|
|
|
const struct via_isa_bridge *config;
|
|
|
static int printed_version;
|
|
|
u8 enable;
|
|
@@ -551,15 +551,13 @@ static int via_init_one(struct pci_dev *pdev, const struct pci_device_id *id)
|
|
|
if ((isa = pci_get_device(PCI_VENDOR_ID_VIA +
|
|
|
!!(config->flags & VIA_BAD_ID),
|
|
|
config->id, NULL))) {
|
|
|
+ u8 rev = isa->revision;
|
|
|
+ pci_dev_put(isa);
|
|
|
|
|
|
- if (isa->revision >= config->rev_min &&
|
|
|
- isa->revision <= config->rev_max)
|
|
|
+ if (rev >= config->rev_min && rev <= config->rev_max)
|
|
|
break;
|
|
|
- pci_dev_put(isa);
|
|
|
}
|
|
|
|
|
|
- pci_dev_put(isa);
|
|
|
-
|
|
|
if (!(config->flags & VIA_NO_ENABLES)) {
|
|
|
/* 0x40 low bits indicate enabled channels */
|
|
|
pci_read_config_byte(pdev, 0x40 , &enable);
|