diff options
author | Gertjan van Wingerde <gwingerde@gmail.com> | 2010-02-13 14:55:48 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2010-02-15 16:14:10 -0500 |
commit | 714fa6636331d33c6045efe394f36c964a6c14ee (patch) | |
tree | dcdb5f14cd2275cec4dac094327d3b3524e201de /drivers/net/wireless/rt2x00/rt2500pci.c | |
parent | cea90e55969ff70b970d64d564076a5469331527 (diff) |
rt2x00: Reorganize RT chipset setting for PCI/SOC devices.
Don't set the RT chipset for a device from within the generic PCI/SOC code,
but rather from the individual drivers, so that individual drivers have
more control over what RT chipset is set.
Preparation for chip handling updates for rt2800 devices.
Signed-off-by: Gertjan van Wingerde <gwingerde@gmail.com>
Acked-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/rt2x00/rt2500pci.c')
-rw-r--r-- | drivers/net/wireless/rt2x00/rt2500pci.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2500pci.c b/drivers/net/wireless/rt2x00/rt2500pci.c index 7dfcffadda2a..0f6d001267ac 100644 --- a/drivers/net/wireless/rt2x00/rt2500pci.c +++ b/drivers/net/wireless/rt2x00/rt2500pci.c | |||
@@ -1490,6 +1490,7 @@ static int rt2500pci_validate_eeprom(struct rt2x00_dev *rt2x00dev) | |||
1490 | static int rt2500pci_init_eeprom(struct rt2x00_dev *rt2x00dev) | 1490 | static int rt2500pci_init_eeprom(struct rt2x00_dev *rt2x00dev) |
1491 | { | 1491 | { |
1492 | u32 reg; | 1492 | u32 reg; |
1493 | u16 chip; | ||
1493 | u16 value; | 1494 | u16 value; |
1494 | u16 eeprom; | 1495 | u16 eeprom; |
1495 | 1496 | ||
@@ -1499,12 +1500,16 @@ static int rt2500pci_init_eeprom(struct rt2x00_dev *rt2x00dev) | |||
1499 | rt2x00_eeprom_read(rt2x00dev, EEPROM_ANTENNA, &eeprom); | 1500 | rt2x00_eeprom_read(rt2x00dev, EEPROM_ANTENNA, &eeprom); |
1500 | 1501 | ||
1501 | /* | 1502 | /* |
1503 | * Identify RT chipset. | ||
1504 | */ | ||
1505 | pci_read_config_word(to_pci_dev(rt2x00dev->dev), PCI_DEVICE_ID, &chip); | ||
1506 | |||
1507 | /* | ||
1502 | * Identify RF chipset. | 1508 | * Identify RF chipset. |
1503 | */ | 1509 | */ |
1504 | value = rt2x00_get_field16(eeprom, EEPROM_ANTENNA_RF_TYPE); | 1510 | value = rt2x00_get_field16(eeprom, EEPROM_ANTENNA_RF_TYPE); |
1505 | rt2x00pci_register_read(rt2x00dev, CSR0, ®); | 1511 | rt2x00pci_register_read(rt2x00dev, CSR0, ®); |
1506 | rt2x00_set_chip_rf(rt2x00dev, value, reg); | 1512 | rt2x00_set_chip(rt2x00dev, chip, value, reg); |
1507 | rt2x00_print_chip(rt2x00dev); | ||
1508 | 1513 | ||
1509 | if (!rt2x00_rf(rt2x00dev, RF2522) && | 1514 | if (!rt2x00_rf(rt2x00dev, RF2522) && |
1510 | !rt2x00_rf(rt2x00dev, RF2523) && | 1515 | !rt2x00_rf(rt2x00dev, RF2523) && |