1 /**************************************************************************
2 Etherboot - BOOTP/TFTP Bootstrap Program
3 Prism2 NIC driver for Etherboot
6 Written by Michael Brown of Fen Systems Ltd
8 ***************************************************************************/
11 * This program is free software; you can redistribute it and/or
12 * modify it under the terms of the GNU General Public License as
13 * published by the Free Software Foundation; either version 2, or (at
14 * your option) any later version.
20 #define WLAN_HOSTIF WLAN_PCI
23 static int prism2_pci_probe ( struct nic
*nic
, struct pci_device
*pci
) {
24 hfa384x_t
*hw
= &hw_global
;
25 uint32_t membase
= 0; /* Prism2.5 Memory Base */
27 pci_read_config_dword( pci
, PRISM2_PCI_MEM_BASE
, &membase
);
28 membase
&= PCI_BASE_ADDRESS_MEM_MASK
;
29 hw
->membase
= (uint32_t) phys_to_virt(membase
);
30 printf ( "Prism2.5 has registers at %#lx\n", hw
->membase
);
32 nic
->ioaddr
= hw
->membase
;
35 return prism2_probe ( nic
, hw
);
38 static void prism2_pci_disable ( struct nic
*nic
) {
39 prism2_disable ( nic
);
42 static struct pci_device_id prism2_pci_nics
[] = {
43 PCI_ROM(0x1260, 0x3873, "prism2_pci", "Harris Semiconductor Prism2.5 clone"),
44 PCI_ROM(0x1260, 0x3873, "hwp01170", "ActionTec HWP01170"),
45 PCI_ROM(0x1260, 0x3873, "dwl520", "DLink DWL-520"),
48 PCI_DRIVER ( prism2_pci_driver
, prism2_pci_nics
, PCI_NO_CLASS
);
50 DRIVER ( "Prism2/PCI", nic_driver
, pci_driver
, prism2_pci_driver
,
51 prism2_pci_probe
, prism2_pci_disable
);