diff options
author | Vasanthakumar Thiagarajan <vasanth@atheros.com> | 2010-04-15 17:38:27 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2010-04-16 15:43:22 -0400 |
commit | ae3bb6d4628dae7ead588263177a0674221fea78 (patch) | |
tree | 82920610cc78ecf520596130936e9eb0b4d412af /drivers/net/wireless/ath | |
parent | cee1f625bfcabeed39138547be21d8995357f8e1 (diff) |
ath9k_hw: Fill rx_enable() for the AR9003 hardware family
Signed-off-by: Vasanthakumar Thiagarajan <vasanth@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath')
-rw-r--r-- | drivers/net/wireless/ath/ath9k/Makefile | 1 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath9k/ar9003_mac.c | 28 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath9k/ar9003_mac.h | 2 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath9k/hw.c | 6 |
4 files changed, 35 insertions, 2 deletions
diff --git a/drivers/net/wireless/ath/ath9k/Makefile b/drivers/net/wireless/ath/ath9k/Makefile index ecf3f8c71d6f..96af3d96de5c 100644 --- a/drivers/net/wireless/ath/ath9k/Makefile +++ b/drivers/net/wireless/ath/ath9k/Makefile | |||
@@ -25,6 +25,7 @@ ath9k_hw-y:= hw.o \ | |||
25 | ani.o \ | 25 | ani.o \ |
26 | btcoex.o \ | 26 | btcoex.o \ |
27 | mac.o \ | 27 | mac.o \ |
28 | ar9003_mac.o | ||
28 | 29 | ||
29 | obj-$(CONFIG_ATH9K_HW) += ath9k_hw.o | 30 | obj-$(CONFIG_ATH9K_HW) += ath9k_hw.o |
30 | 31 | ||
diff --git a/drivers/net/wireless/ath/ath9k/ar9003_mac.c b/drivers/net/wireless/ath/ath9k/ar9003_mac.c new file mode 100644 index 000000000000..ee84e64b8b0c --- /dev/null +++ b/drivers/net/wireless/ath/ath9k/ar9003_mac.c | |||
@@ -0,0 +1,28 @@ | |||
1 | /* | ||
2 | * Copyright (c) 2010 Atheros Communications Inc. | ||
3 | * | ||
4 | * Permission to use, copy, modify, and/or distribute this software for any | ||
5 | * purpose with or without fee is hereby granted, provided that the above | ||
6 | * copyright notice and this permission notice appear in all copies. | ||
7 | * | ||
8 | * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | ||
9 | * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | ||
10 | * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR | ||
11 | * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | ||
12 | * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | ||
13 | * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF | ||
14 | * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | ||
15 | */ | ||
16 | #include "hw.h" | ||
17 | |||
18 | static void ar9003_hw_rx_enable(struct ath_hw *hw) | ||
19 | { | ||
20 | REG_WRITE(hw, AR_CR, 0); | ||
21 | } | ||
22 | |||
23 | void ar9003_hw_attach_mac_ops(struct ath_hw *hw) | ||
24 | { | ||
25 | struct ath_hw_ops *ops = ath9k_hw_ops(hw); | ||
26 | |||
27 | ops->rx_enable = ar9003_hw_rx_enable; | ||
28 | } | ||
diff --git a/drivers/net/wireless/ath/ath9k/ar9003_mac.h b/drivers/net/wireless/ath/ath9k/ar9003_mac.h index dbf74eba4c58..2a9d80e9e0c7 100644 --- a/drivers/net/wireless/ath/ath9k/ar9003_mac.h +++ b/drivers/net/wireless/ath/ath9k/ar9003_mac.h | |||
@@ -32,4 +32,6 @@ struct ar9003_rxs { | |||
32 | u32 status11; | 32 | u32 status11; |
33 | } __packed; | 33 | } __packed; |
34 | 34 | ||
35 | void ar9003_hw_attach_mac_ops(struct ath_hw *hw); | ||
36 | |||
35 | #endif | 37 | #endif |
diff --git a/drivers/net/wireless/ath/ath9k/hw.c b/drivers/net/wireless/ath/ath9k/hw.c index c06c44c396de..b4a8af1a544c 100644 --- a/drivers/net/wireless/ath/ath9k/hw.c +++ b/drivers/net/wireless/ath/ath9k/hw.c | |||
@@ -1566,8 +1566,6 @@ int ath9k_hw_reset(struct ath_hw *ah, struct ath9k_channel *chan, | |||
1566 | if (tsf && AR_SREV_9280(ah) && ah->eep_ops->get_eeprom(ah, EEP_OL_PWRCTRL)) | 1566 | if (tsf && AR_SREV_9280(ah) && ah->eep_ops->get_eeprom(ah, EEP_OL_PWRCTRL)) |
1567 | ath9k_hw_settsf64(ah, tsf); | 1567 | ath9k_hw_settsf64(ah, tsf); |
1568 | 1568 | ||
1569 | ar9002_hw_attach_mac_ops(ah); | ||
1570 | |||
1571 | if (AR_SREV_9280_10_OR_LATER(ah)) | 1569 | if (AR_SREV_9280_10_OR_LATER(ah)) |
1572 | REG_SET_BIT(ah, AR_GPIO_INPUT_EN_VAL, AR_GPIO_JTAG_DISABLE); | 1570 | REG_SET_BIT(ah, AR_GPIO_INPUT_EN_VAL, AR_GPIO_JTAG_DISABLE); |
1573 | 1571 | ||
@@ -3563,6 +3561,8 @@ static void ar9002_hw_attach_ops(struct ath_hw *ah) | |||
3563 | ar5008_hw_attach_phy_ops(ah); | 3561 | ar5008_hw_attach_phy_ops(ah); |
3564 | if (AR_SREV_9280_10_OR_LATER(ah)) | 3562 | if (AR_SREV_9280_10_OR_LATER(ah)) |
3565 | ar9002_hw_attach_phy_ops(ah); | 3563 | ar9002_hw_attach_phy_ops(ah); |
3564 | |||
3565 | ar9002_hw_attach_mac_ops(ah); | ||
3566 | } | 3566 | } |
3567 | 3567 | ||
3568 | /* Sets up the AR9003 hardware familiy callbacks */ | 3568 | /* Sets up the AR9003 hardware familiy callbacks */ |
@@ -3573,4 +3573,6 @@ static void ar9003_hw_attach_ops(struct ath_hw *ah) | |||
3573 | priv_ops->macversion_supported = ar9003_hw_macversion_supported; | 3573 | priv_ops->macversion_supported = ar9003_hw_macversion_supported; |
3574 | 3574 | ||
3575 | ar9003_hw_attach_phy_ops(ah); | 3575 | ar9003_hw_attach_phy_ops(ah); |
3576 | |||
3577 | ar9003_hw_attach_mac_ops(ah); | ||
3576 | } | 3578 | } |