提交 de00c04e 编写于 作者: C Christian Lamparter 提交者: John W. Linville

ar9170: single module build

This patch restores all-in-one module build procedure for ar9170.
Signed-off-by: NChristian Lamparter <chunkeey@web.de>
Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
上级 051b9191
......@@ -57,6 +57,6 @@ obj-$(CONFIG_P54_COMMON) += p54/
obj-$(CONFIG_ATH5K) += ath5k/
obj-$(CONFIG_ATH9K) += ath9k/
obj-$(CONFIG_AR9170_COMMON) += ar9170/
obj-$(CONFIG_AR9170_USB) += ar9170/
obj-$(CONFIG_MAC80211_HWSIM) += mac80211_hwsim.o
config AR9170_COMMON
tristate "Atheros AR9170 support"
depends on WLAN_80211 && MAC80211 && EXPERIMENTAL
help
This is common code for AR9170 based devices.
This module does nothing by itself - the USB/(SPI) frontends
also need to be enabled in order to support any devices.
Say Y if you have the hardware, or M to build a module called
ar9170common.
config AR9170_USB
tristate "Atheros AR9170 USB support"
depends on AR9170_COMMON && USB
tristate "Atheros AR9170 802.11n USB support"
depends on USB && MAC80211 && WLAN_80211 && EXPERIMENTAL
select FW_LOADER
help
This is a driver for the Atheros "otus" 802.11n USB devices.
......@@ -24,5 +13,5 @@ config AR9170_USB
config AR9170_LEDS
bool
depends on AR9170_COMMON && MAC80211_LEDS && (LEDS_CLASS = y || LEDS_CLASS = AR9170_COMMON)
depends on AR9170_USB && MAC80211_LEDS && (LEDS_CLASS = y || LEDS_CLASS = AR9170_USB)
default y
ar9170common-objs += main.o cmd.o mac.o phy.o led.o
ar9170usb-objs += usb.o
ar9170usb-objs := usb.o main.o cmd.o mac.o phy.o led.o
obj-$(CONFIG_AR9170_COMMON) += ar9170common.o
obj-$(CONFIG_AR9170_USB) += ar9170usb.o
......@@ -127,4 +127,3 @@ int ar9170_echo_test(struct ar9170 *ar, u32 v)
return 0;
}
EXPORT_SYMBOL_GPL(ar9170_echo_test);
......@@ -37,14 +37,6 @@
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/*
* BIG FAT TODO:
*
* By the looks of things: these devices share a lot of things like
* EEPROM layout/design and PHY code with other Atheros WIFI products.
* So this driver/library will eventually become ath9k code... or vice versa ;-)
*/
#include <linux/init.h>
#include <linux/module.h>
#include <linux/etherdevice.h>
......@@ -56,9 +48,6 @@
static int modparam_nohwcrypt;
module_param_named(nohwcrypt, modparam_nohwcrypt, bool, S_IRUGO);
MODULE_PARM_DESC(nohwcrypt, "Disable hardware encryption.");
MODULE_AUTHOR("Johannes Berg <johannes@sipsolutions.net>");
MODULE_LICENSE("GPL");
MODULE_DESCRIPTION("Atheros shared code for AR9170 wireless devices");
#define RATE(_bitrate, _hw_rate, _txpidx, _flags) { \
.bitrate = (_bitrate), \
......@@ -247,7 +236,6 @@ void ar9170_handle_tx_status(struct ar9170 *ar, struct sk_buff *skb,
skb_pull(skb, sizeof(struct ar9170_tx_control));
ieee80211_tx_status_irqsafe(ar->hw, skb);
}
EXPORT_SYMBOL_GPL(ar9170_handle_tx_status);
static struct sk_buff *ar9170_find_skb_in_queue(struct ar9170 *ar,
const u8 *mac,
......@@ -630,13 +618,6 @@ static void ar9170_handle_mpdu(struct ar9170 *ar, u8 *buf, int len)
ieee80211_rx_irqsafe(ar->hw, skb, &status);
}
/*
* TODO:
* It looks like AR9170 supports more than just the USB transport interface.
* Unfortunately, there is no available information what parts of the
* precendent and following code fragments is device specific and what not.
* For now, everything stays here, until some SPI chips pop up.
*/
void ar9170_rx(struct ar9170 *ar, struct sk_buff *skb)
{
unsigned int i, tlen, resplen;
......@@ -694,7 +675,6 @@ void ar9170_rx(struct ar9170 *ar, struct sk_buff *skb)
printk(KERN_ERR "%s: buffer remains!\n",
wiphy_name(ar->hw->wiphy));
}
EXPORT_SYMBOL_GPL(ar9170_rx);
#define AR9170_FILL_QUEUE(queue, ai_fs, cwmin, cwmax, _txop) \
do { \
......@@ -1582,7 +1562,6 @@ void *ar9170_alloc(size_t priv_size)
return ar;
}
EXPORT_SYMBOL_GPL(ar9170_alloc);
static int ar9170_read_eeprom(struct ar9170 *ar)
{
......@@ -1680,7 +1659,6 @@ int ar9170_register(struct ar9170 *ar, struct device *pdev)
err_out:
return err;
}
EXPORT_SYMBOL_GPL(ar9170_register);
void ar9170_unregister(struct ar9170 *ar)
{
......@@ -1691,21 +1669,3 @@ void ar9170_unregister(struct ar9170 *ar)
ieee80211_unregister_hw(ar->hw);
mutex_destroy(&ar->mutex);
}
EXPORT_SYMBOL_GPL(ar9170_unregister);
static int __init ar9170_init(void)
{
if (modparam_nohwcrypt)
printk(KERN_INFO "ar9170: cryptographic acceleration "
"disabled.\n");
return 0;
}
static void __exit ar9170_exit(void)
{
}
module_init(ar9170_init);
module_exit(ar9170_exit);
......@@ -47,9 +47,10 @@
#include "hw.h"
#include "usb.h"
MODULE_AUTHOR("Johannes Berg <johannes@sipsolutions.net>");
MODULE_AUTHOR("Christian Lamparter <chunkeey@web.de>");
MODULE_LICENSE("GPL");
MODULE_DESCRIPTION("USB Driver for Atheros AR9170 based devices");
MODULE_DESCRIPTION("Atheros AR9170 802.11n USB wireless");
MODULE_FIRMWARE("ar9170-1.fw");
MODULE_FIRMWARE("ar9170-2.fw");
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册