diff options
| -rw-r--r-- | drivers/net/wireless/rt2x00/rt2800mmio.c | 15 | ||||
| -rw-r--r-- | drivers/net/wireless/rt2x00/rt2800mmio.h | 3 | ||||
| -rw-r--r-- | drivers/net/wireless/rt2x00/rt2800pci.c | 13 |
3 files changed, 18 insertions, 13 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2800mmio.c b/drivers/net/wireless/rt2x00/rt2800mmio.c index 7e8c22445b7b..ae152280e071 100644 --- a/drivers/net/wireless/rt2x00/rt2800mmio.c +++ b/drivers/net/wireless/rt2x00/rt2800mmio.c | |||
| @@ -852,6 +852,21 @@ int rt2800mmio_init_registers(struct rt2x00_dev *rt2x00dev) | |||
| 852 | } | 852 | } |
| 853 | EXPORT_SYMBOL_GPL(rt2800mmio_init_registers); | 853 | EXPORT_SYMBOL_GPL(rt2800mmio_init_registers); |
| 854 | 854 | ||
| 855 | /* | ||
| 856 | * Device state switch handlers. | ||
| 857 | */ | ||
| 858 | int rt2800mmio_enable_radio(struct rt2x00_dev *rt2x00dev) | ||
| 859 | { | ||
| 860 | /* Wait for DMA, ignore error until we initialize queues. */ | ||
| 861 | rt2800_wait_wpdma_ready(rt2x00dev); | ||
| 862 | |||
| 863 | if (unlikely(rt2800mmio_init_queues(rt2x00dev))) | ||
| 864 | return -EIO; | ||
| 865 | |||
| 866 | return rt2800_enable_radio(rt2x00dev); | ||
| 867 | } | ||
| 868 | EXPORT_SYMBOL_GPL(rt2800mmio_enable_radio); | ||
| 869 | |||
| 855 | MODULE_AUTHOR(DRV_PROJECT); | 870 | MODULE_AUTHOR(DRV_PROJECT); |
| 856 | MODULE_VERSION(DRV_VERSION); | 871 | MODULE_VERSION(DRV_VERSION); |
| 857 | MODULE_DESCRIPTION("rt2800 MMIO library"); | 872 | MODULE_DESCRIPTION("rt2800 MMIO library"); |
diff --git a/drivers/net/wireless/rt2x00/rt2800mmio.h b/drivers/net/wireless/rt2x00/rt2800mmio.h index 392895a3208e..6a10de3eee3e 100644 --- a/drivers/net/wireless/rt2x00/rt2800mmio.h +++ b/drivers/net/wireless/rt2x00/rt2800mmio.h | |||
| @@ -159,4 +159,7 @@ void rt2800mmio_clear_entry(struct queue_entry *entry); | |||
| 159 | int rt2800mmio_init_queues(struct rt2x00_dev *rt2x00dev); | 159 | int rt2800mmio_init_queues(struct rt2x00_dev *rt2x00dev); |
| 160 | int rt2800mmio_init_registers(struct rt2x00_dev *rt2x00dev); | 160 | int rt2800mmio_init_registers(struct rt2x00_dev *rt2x00dev); |
| 161 | 161 | ||
| 162 | /* Device state switch handlers. */ | ||
| 163 | int rt2800mmio_enable_radio(struct rt2x00_dev *rt2x00dev); | ||
| 164 | |||
| 162 | #endif /* RT2800MMIO_H */ | 165 | #endif /* RT2800MMIO_H */ |
diff --git a/drivers/net/wireless/rt2x00/rt2800pci.c b/drivers/net/wireless/rt2x00/rt2800pci.c index 88dd242ac1e3..77ddd1a97732 100644 --- a/drivers/net/wireless/rt2x00/rt2800pci.c +++ b/drivers/net/wireless/rt2x00/rt2800pci.c | |||
| @@ -205,23 +205,10 @@ static int rt2800pci_write_firmware(struct rt2x00_dev *rt2x00dev, | |||
| 205 | 205 | ||
| 206 | return 0; | 206 | return 0; |
| 207 | } | 207 | } |
| 208 | #endif /* CONFIG_PCI */ | ||
| 209 | 208 | ||
| 210 | /* | 209 | /* |
| 211 | * Device state switch handlers. | 210 | * Device state switch handlers. |
| 212 | */ | 211 | */ |
| 213 | static int rt2800mmio_enable_radio(struct rt2x00_dev *rt2x00dev) | ||
| 214 | { | ||
| 215 | /* Wait for DMA, ignore error until we initialize queues. */ | ||
| 216 | rt2800_wait_wpdma_ready(rt2x00dev); | ||
| 217 | |||
| 218 | if (unlikely(rt2800mmio_init_queues(rt2x00dev))) | ||
| 219 | return -EIO; | ||
| 220 | |||
| 221 | return rt2800_enable_radio(rt2x00dev); | ||
| 222 | } | ||
| 223 | |||
| 224 | #ifdef CONFIG_PCI | ||
| 225 | static int rt2800pci_enable_radio(struct rt2x00_dev *rt2x00dev) | 212 | static int rt2800pci_enable_radio(struct rt2x00_dev *rt2x00dev) |
| 226 | { | 213 | { |
| 227 | int retval; | 214 | int retval; |
