25 PCI_ROM(0x168c, 0x0023,
"ar5416",
"Atheros 5416 PCI", 0),
26 PCI_ROM(0x168c, 0x0024,
"ar5416",
"Atheros 5416 PCI-E", 0),
27 PCI_ROM(0x168c, 0x0027,
"ar9160",
"Atheros 9160 PCI", 0),
28 PCI_ROM(0x168c, 0x0029,
"ar9280",
"Atheros 9280 PCI", 0),
29 PCI_ROM(0x168c, 0x002A,
"ar9280",
"Atheros 9280 PCI-E", 0),
30 PCI_ROM(0x168c, 0x002B,
"ar9285",
"Atheros 9285 PCI-E", 0),
31 PCI_ROM(0x168c, 0x002C,
"ar2427",
"Atheros 2427 PCI-E", 0),
32 PCI_ROM(0x168c, 0x002D,
"ar9287",
"Atheros 9287 PCI", 0),
33 PCI_ROM(0x168c, 0x002E,
"ar9287",
"Atheros 9287 PCI-E", 0),
34 PCI_ROM(0x168c, 0x0030,
"ar9300",
"Atheros 9300 PCI-E", 0),
35 PCI_ROM(0x168c, 0x0032,
"ar9485",
"Atheros 9485 PCI-E", 0),
138 if ((
val & 0x0000ff00) != 0)
143 DBG(
"ath9K: PCI memory map error\n") ;
150 DBG(
"ath9k: No memory for net80211_device\n");
171 DBG(
"ath9k: Failed to initialize device\n");
176 DBG(
"ath9k: %s mem=0x%lx, irq=%d\n",
177 hw_name, (
unsigned long)mem, pdev->
irq);
unsigned long membase
Memory base.
uint8_t irq
Interrupt number.
#define PCI_CACHE_LINE_SIZE
PCI cache line size.
void net80211_free(struct net80211_device *dev)
Free 802.11 device.
static struct pci_device_id ath_pci_id_table[]
struct pci_driver ath_pci_driver __pci_driver
#define PCI_LATENCY_TIMER
PCI latency timer.
unsigned int id_count
Number of entries in PCI ID table.
static void ath_pci_extn_synch_enable(struct ath_common *common)
int pci_read_config_word(struct pci_device *pci, unsigned int where, uint16_t *value)
Read 16-bit word from PCI configuration space.
static void ath_pci_read_cachesize(struct ath_common *common, int *csz)
void adjust_pci_device(struct pci_device *pci)
Enable PCI device.
#define PCI_SUBSYSTEM_ID
PCI subsystem ID.
struct net80211_device * dev
#define AR_EEPROM_STATUS_DATA_VAL
static void pci_set_drvdata(struct pci_device *pci, void *priv)
Set PCI driver-private data.
#define ENOMEM
Not enough space.
#define AR_EEPROM_STATUS_DATA_PROT_ACCESS
#define AR_EEPROM_STATUS_DATA_BUSY
uint16_t device
Device ID.
int pci_read_config_dword(struct pci_device *pci, unsigned int where, uint32_t *value)
Read 32-bit dword from PCI configuration space.
static int ath_pci_eeprom_read(struct ath_common *common, u32 off, u16 *data)
#define DEFAULT_CACHELINE
void * priv
Driver private data.
struct net80211_device * net80211_alloc(size_t priv_size)
Allocate 802.11 device.
static const struct ath_bus_ops ath_pci_bus_ops
int pci_write_config_byte(struct pci_device *pci, unsigned int where, uint8_t value)
Write byte to PCI configuration space.
Structure encapsulating the complete state of an 802.11 device.
static void ath_pci_remove(struct pci_device *pdev)
A PCI device ID list entry.
struct ib_cm_common common
struct device * dev
Underlying hardware device.
enum ath_bus_type ath_bus_type
void ath9k_deinit_device(struct ath_softc *sc)
static void * pci_get_drvdata(struct pci_device *pci)
Get PCI driver-private data.
struct net_device * netdev
The net_device that wraps us.
int ath9k_init_device(u16 devid, struct ath_softc *sc, u16 subsysid, const struct ath_bus_ops *bus_ops)
#define AR_EEPROM_STATUS_DATA
int ath9k_hw_wait(struct ath_hw *ah, u32 reg, u32 mask, u32 val, u32 timeout)
struct ath9k_hw_capabilities caps
#define EIO
Input/output error.
int pci_write_config_dword(struct pci_device *pci, unsigned int where, uint32_t value)
Write 32-bit dword to PCI configuration space.
void iounmap(volatile const void *io_addr)
Unmap I/O address.
uint8_t data[48]
Additional event data.
#define DBG(...)
Print a debugging message.
void * pci_ioremap(struct pci_device *pci, unsigned long bus_addr, size_t len)
Map PCI bus address as an I/O address.
static int ath_pci_probe(struct pci_device *pdev)
void ath9k_hw_name(struct ath_hw *ah, char *hw_name, size_t len)
#define PCI_ROM(_vendor, _device, _name, _description, _data)
#define AR5416_EEPROM_OFFSET
int pci_read_config_byte(struct pci_device *pci, unsigned int where, uint8_t *value)
Read byte from PCI configuration space.