~ubuntu-branches/ubuntu/quantal/linux-linaro-mx51/quantal

« back to all changes in this revision

Viewing changes to drivers/net/wireless/rt2x00/rt2500pci.c

  • Committer: Package Import Robot
  • Author(s): John Rigby, John Rigby
  • Date: 2011-09-26 10:44:23 UTC
  • Revision ID: package-import@ubuntu.com-20110926104423-3o58a3c1bj7x00rs
Tags: 3.0.0-1007.9
[ John Rigby ]

Enable crypto modules and remove crypto-modules from
exclude-module files
LP: #826021

Show diffs side-by-side

added added

removed removed

Lines of Context:
1446
1446
        }
1447
1447
}
1448
1448
 
1449
 
static void rt2500pci_enable_interrupt(struct rt2x00_dev *rt2x00dev,
1450
 
                                       struct rt2x00_field32 irq_field)
 
1449
static inline void rt2500pci_enable_interrupt(struct rt2x00_dev *rt2x00dev,
 
1450
                                              struct rt2x00_field32 irq_field)
1451
1451
{
1452
1452
        u32 reg;
1453
1453
 
1500
1500
static void rt2500pci_rxdone_tasklet(unsigned long data)
1501
1501
{
1502
1502
        struct rt2x00_dev *rt2x00dev = (struct rt2x00_dev *)data;
1503
 
        rt2x00pci_rxdone(rt2x00dev);
1504
 
        rt2500pci_enable_interrupt(rt2x00dev, CSR8_RXDONE);
 
1503
        if (rt2x00pci_rxdone(rt2x00dev))
 
1504
                tasklet_schedule(&rt2x00dev->rxdone_tasklet);
 
1505
        else
 
1506
                rt2500pci_enable_interrupt(rt2x00dev, CSR8_RXDONE);
1505
1507
}
1506
1508
 
1507
1509
static irqreturn_t rt2500pci_interrupt(int irq, void *dev_instance)
1685
1687
         * Detect if this device has an hardware controlled radio.
1686
1688
         */
1687
1689
        if (rt2x00_get_field16(eeprom, EEPROM_ANTENNA_HARDWARE_RADIO))
1688
 
                __set_bit(CONFIG_SUPPORT_HW_BUTTON, &rt2x00dev->flags);
 
1690
                __set_bit(CAPABILITY_HW_BUTTON, &rt2x00dev->cap_flags);
1689
1691
 
1690
1692
        /*
1691
1693
         * Check if the BBP tuning should be enabled.
1692
1694
         */
1693
1695
        rt2x00_eeprom_read(rt2x00dev, EEPROM_NIC, &eeprom);
1694
1696
        if (!rt2x00_get_field16(eeprom, EEPROM_NIC_DYN_BBP_TUNE))
1695
 
                __set_bit(DRIVER_SUPPORT_LINK_TUNING, &rt2x00dev->flags);
 
1697
                __set_bit(CAPABILITY_LINK_TUNING, &rt2x00dev->cap_flags);
1696
1698
 
1697
1699
        /*
1698
1700
         * Read the RSSI <-> dBm offset information.
1956
1958
        /*
1957
1959
         * This device requires the atim queue and DMA-mapped skbs.
1958
1960
         */
1959
 
        __set_bit(DRIVER_REQUIRE_ATIM_QUEUE, &rt2x00dev->flags);
1960
 
        __set_bit(DRIVER_REQUIRE_DMA, &rt2x00dev->flags);
1961
 
        __set_bit(DRIVER_REQUIRE_SW_SEQNO, &rt2x00dev->flags);
 
1961
        __set_bit(REQUIRE_ATIM_QUEUE, &rt2x00dev->cap_flags);
 
1962
        __set_bit(REQUIRE_DMA, &rt2x00dev->cap_flags);
 
1963
        __set_bit(REQUIRE_SW_SEQNO, &rt2x00dev->cap_flags);
1962
1964
 
1963
1965
        /*
1964
1966
         * Set the rssi offset.
2011
2013
        .tx_last_beacon         = rt2500pci_tx_last_beacon,
2012
2014
        .rfkill_poll            = rt2x00mac_rfkill_poll,
2013
2015
        .flush                  = rt2x00mac_flush,
 
2016
        .set_antenna            = rt2x00mac_set_antenna,
 
2017
        .get_antenna            = rt2x00mac_get_antenna,
 
2018
        .get_ringparam          = rt2x00mac_get_ringparam,
2014
2019
};
2015
2020
 
2016
2021
static const struct rt2x00lib_ops rt2500pci_rt2x00_ops = {
2031
2036
        .start_queue            = rt2500pci_start_queue,
2032
2037
        .kick_queue             = rt2500pci_kick_queue,
2033
2038
        .stop_queue             = rt2500pci_stop_queue,
 
2039
        .flush_queue            = rt2x00pci_flush_queue,
2034
2040
        .write_tx_desc          = rt2500pci_write_tx_desc,
2035
2041
        .write_beacon           = rt2500pci_write_beacon,
2036
2042
        .fill_rxdone            = rt2500pci_fill_rxdone,
2092
2098
 * RT2500pci module information.
2093
2099
 */
2094
2100
static DEFINE_PCI_DEVICE_TABLE(rt2500pci_device_table) = {
2095
 
        { PCI_DEVICE(0x1814, 0x0201), PCI_DEVICE_DATA(&rt2500pci_ops) },
 
2101
        { PCI_DEVICE(0x1814, 0x0201) },
2096
2102
        { 0, }
2097
2103
};
2098
2104
 
2103
2109
MODULE_DEVICE_TABLE(pci, rt2500pci_device_table);
2104
2110
MODULE_LICENSE("GPL");
2105
2111
 
 
2112
static int rt2500pci_probe(struct pci_dev *pci_dev,
 
2113
                           const struct pci_device_id *id)
 
2114
{
 
2115
        return rt2x00pci_probe(pci_dev, &rt2500pci_ops);
 
2116
}
 
2117
 
2106
2118
static struct pci_driver rt2500pci_driver = {
2107
2119
        .name           = KBUILD_MODNAME,
2108
2120
        .id_table       = rt2500pci_device_table,
2109
 
        .probe          = rt2x00pci_probe,
 
2121
        .probe          = rt2500pci_probe,
2110
2122
        .remove         = __devexit_p(rt2x00pci_remove),
2111
2123
        .suspend        = rt2x00pci_suspend,
2112
2124
        .resume         = rt2x00pci_resume,