summaryrefslogtreecommitdiffstats
path: root/nicnatsemi.c
diff options
context:
space:
mode:
Diffstat (limited to 'nicnatsemi.c')
-rw-r--r--nicnatsemi.c15
1 files changed, 6 insertions, 9 deletions
diff --git a/nicnatsemi.c b/nicnatsemi.c
index 60d8f87..d62a73f 100644
--- a/nicnatsemi.c
+++ b/nicnatsemi.c
@@ -52,22 +52,19 @@ static const struct par_programmer par_programmer_nicnatsemi = {
.chip_writen = fallback_chip_writen,
};
-static int nicnatsemi_shutdown(void *data)
-{
- pci_cleanup(pacc);
- return 0;
-}
-
int nicnatsemi_init(void)
{
+ struct pci_dev *dev = NULL;
+
if (rget_io_perms())
return 1;
- io_base_addr = pcidev_init(PCI_BASE_ADDRESS_0, nics_natsemi);
-
- if (register_shutdown(nicnatsemi_shutdown, NULL))
+ dev = pcidev_init(nics_natsemi, PCI_BASE_ADDRESS_0);
+ if (!dev)
return 1;
+ io_base_addr = pcidev_readbar(dev, PCI_BASE_ADDRESS_0);
+
/* The datasheet shows address lines MA0-MA16 in one place and MA0-MA15
* in another. My NIC has MA16 connected to A16 on the boot ROM socket
* so I'm assuming it is accessible. If not then next line wants to be
OpenPOWER on IntegriCloud