diff options
author | Kalle Valo <kvalo@qca.qualcomm.com> | 2012-01-17 13:09:36 -0500 |
---|---|---|
committer | Kalle Valo <kvalo@qca.qualcomm.com> | 2012-01-18 06:59:51 -0500 |
commit | d6a434d60e064a5f2bef1c13ca5ed84bfa6b8b4f (patch) | |
tree | 9920f4f6552420f83b1c65000ed3c5840b49d272 | |
parent | 3b1b7d0985fdb26403678e49938a668ef7f772ea (diff) |
ath6kl: create ath6kl_core.ko
Now ath6kl is ready for splitting core code to ath6kl_core.ko module.
This also makes it possible to link both sdio and usb code to kernel
at the same time, which earlier failed miserably.
Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
-rw-r--r-- | drivers/net/wireless/ath/ath6kl/Makefile | 28 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath6kl/cfg80211.c | 3 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath6kl/core.c | 9 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath6kl/debug.c | 3 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath6kl/hif.c | 5 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath6kl/init.c | 3 |
6 files changed, 38 insertions, 13 deletions
diff --git a/drivers/net/wireless/ath/ath6kl/Makefile b/drivers/net/wireless/ath/ath6kl/Makefile index 854694b26a4b..cbdc31c603f6 100644 --- a/drivers/net/wireless/ath/ath6kl/Makefile +++ b/drivers/net/wireless/ath/ath6kl/Makefile | |||
@@ -21,16 +21,18 @@ | |||
21 | # Author(s): ="Atheros" | 21 | # Author(s): ="Atheros" |
22 | #------------------------------------------------------------------------------ | 22 | #------------------------------------------------------------------------------ |
23 | 23 | ||
24 | obj-$(CONFIG_ATH6KL) := ath6kl.o | 24 | obj-$(CONFIG_ATH6KL) += ath6kl_core.o |
25 | ath6kl-y += debug.o | 25 | ath6kl_core-y += debug.o |
26 | ath6kl-y += hif.o | 26 | ath6kl_core-y += hif.o |
27 | ath6kl-y += htc.o | 27 | ath6kl_core-y += htc.o |
28 | ath6kl-y += bmi.o | 28 | ath6kl_core-y += bmi.o |
29 | ath6kl-y += cfg80211.o | 29 | ath6kl_core-y += cfg80211.o |
30 | ath6kl-y += init.o | 30 | ath6kl_core-y += init.o |
31 | ath6kl-y += main.o | 31 | ath6kl_core-y += main.o |
32 | ath6kl-y += txrx.o | 32 | ath6kl_core-y += txrx.o |
33 | ath6kl-y += wmi.o | 33 | ath6kl_core-y += wmi.o |
34 | ath6kl-y += core.o | 34 | ath6kl_core-y += core.o |
35 | ath6kl-y += sdio.o | 35 | ath6kl_core-$(CONFIG_NL80211_TESTMODE) += testmode.o |
36 | ath6kl-$(CONFIG_NL80211_TESTMODE) += testmode.o | 36 | |
37 | obj-$(CONFIG_ATH6KL_SDIO) += ath6kl_sdio.o | ||
38 | ath6kl_sdio-y += sdio.o | ||
diff --git a/drivers/net/wireless/ath/ath6kl/cfg80211.c b/drivers/net/wireless/ath/ath6kl/cfg80211.c index 7ff9806de50b..594d246da8e1 100644 --- a/drivers/net/wireless/ath/ath6kl/cfg80211.c +++ b/drivers/net/wireless/ath/ath6kl/cfg80211.c | |||
@@ -16,6 +16,7 @@ | |||
16 | 16 | ||
17 | #include <linux/moduleparam.h> | 17 | #include <linux/moduleparam.h> |
18 | #include <linux/inetdevice.h> | 18 | #include <linux/inetdevice.h> |
19 | #include <linux/export.h> | ||
19 | 20 | ||
20 | #include "core.h" | 21 | #include "core.h" |
21 | #include "cfg80211.h" | 22 | #include "cfg80211.h" |
@@ -1935,6 +1936,7 @@ int ath6kl_cfg80211_suspend(struct ath6kl *ar, | |||
1935 | 1936 | ||
1936 | return 0; | 1937 | return 0; |
1937 | } | 1938 | } |
1939 | EXPORT_SYMBOL(ath6kl_cfg80211_suspend); | ||
1938 | 1940 | ||
1939 | int ath6kl_cfg80211_resume(struct ath6kl *ar) | 1941 | int ath6kl_cfg80211_resume(struct ath6kl *ar) |
1940 | { | 1942 | { |
@@ -1986,6 +1988,7 @@ int ath6kl_cfg80211_resume(struct ath6kl *ar) | |||
1986 | 1988 | ||
1987 | return 0; | 1989 | return 0; |
1988 | } | 1990 | } |
1991 | EXPORT_SYMBOL(ath6kl_cfg80211_resume); | ||
1989 | 1992 | ||
1990 | #ifdef CONFIG_PM | 1993 | #ifdef CONFIG_PM |
1991 | 1994 | ||
diff --git a/drivers/net/wireless/ath/ath6kl/core.c b/drivers/net/wireless/ath/ath6kl/core.c index 40fad5ec9366..d764afec395b 100644 --- a/drivers/net/wireless/ath/ath6kl/core.c +++ b/drivers/net/wireless/ath/ath6kl/core.c | |||
@@ -16,7 +16,9 @@ | |||
16 | 16 | ||
17 | #include "core.h" | 17 | #include "core.h" |
18 | 18 | ||
19 | #include <linux/module.h> | ||
19 | #include <linux/moduleparam.h> | 20 | #include <linux/moduleparam.h> |
21 | #include <linux/export.h> | ||
20 | 22 | ||
21 | #include "debug.h" | 23 | #include "debug.h" |
22 | #include "hif-ops.h" | 24 | #include "hif-ops.h" |
@@ -203,6 +205,7 @@ err_wq: | |||
203 | 205 | ||
204 | return ret; | 206 | return ret; |
205 | } | 207 | } |
208 | EXPORT_SYMBOL(ath6kl_core_init); | ||
206 | 209 | ||
207 | struct ath6kl *ath6kl_core_create(struct device *dev) | 210 | struct ath6kl *ath6kl_core_create(struct device *dev) |
208 | { | 211 | { |
@@ -258,6 +261,7 @@ struct ath6kl *ath6kl_core_create(struct device *dev) | |||
258 | 261 | ||
259 | return ar; | 262 | return ar; |
260 | } | 263 | } |
264 | EXPORT_SYMBOL(ath6kl_core_create); | ||
261 | 265 | ||
262 | void ath6kl_core_cleanup(struct ath6kl *ar) | 266 | void ath6kl_core_cleanup(struct ath6kl *ar) |
263 | { | 267 | { |
@@ -284,9 +288,14 @@ void ath6kl_core_cleanup(struct ath6kl *ar) | |||
284 | 288 | ||
285 | ath6kl_cfg80211_cleanup(ar); | 289 | ath6kl_cfg80211_cleanup(ar); |
286 | } | 290 | } |
291 | EXPORT_SYMBOL(ath6kl_core_cleanup); | ||
287 | 292 | ||
288 | void ath6kl_core_destroy(struct ath6kl *ar) | 293 | void ath6kl_core_destroy(struct ath6kl *ar) |
289 | { | 294 | { |
290 | ath6kl_cfg80211_destroy(ar); | 295 | ath6kl_cfg80211_destroy(ar); |
291 | } | 296 | } |
297 | EXPORT_SYMBOL(ath6kl_core_destroy); | ||
292 | 298 | ||
299 | MODULE_AUTHOR("Qualcomm Atheros"); | ||
300 | MODULE_DESCRIPTION("Core module for AR600x SDIO and USB devices."); | ||
301 | MODULE_LICENSE("Dual BSD/GPL"); | ||
diff --git a/drivers/net/wireless/ath/ath6kl/debug.c b/drivers/net/wireless/ath/ath6kl/debug.c index 4ba6560f0bf3..6b546dc66728 100644 --- a/drivers/net/wireless/ath/ath6kl/debug.c +++ b/drivers/net/wireless/ath/ath6kl/debug.c | |||
@@ -54,6 +54,7 @@ int ath6kl_printk(const char *level, const char *fmt, ...) | |||
54 | 54 | ||
55 | return rtn; | 55 | return rtn; |
56 | } | 56 | } |
57 | EXPORT_SYMBOL(ath6kl_printk); | ||
57 | 58 | ||
58 | #ifdef CONFIG_ATH6KL_DEBUG | 59 | #ifdef CONFIG_ATH6KL_DEBUG |
59 | 60 | ||
@@ -74,6 +75,7 @@ void ath6kl_dbg(enum ATH6K_DEBUG_MASK mask, const char *fmt, ...) | |||
74 | 75 | ||
75 | va_end(args); | 76 | va_end(args); |
76 | } | 77 | } |
78 | EXPORT_SYMBOL(ath6kl_dbg); | ||
77 | 79 | ||
78 | void ath6kl_dbg_dump(enum ATH6K_DEBUG_MASK mask, | 80 | void ath6kl_dbg_dump(enum ATH6K_DEBUG_MASK mask, |
79 | const char *msg, const char *prefix, | 81 | const char *msg, const char *prefix, |
@@ -86,6 +88,7 @@ void ath6kl_dbg_dump(enum ATH6K_DEBUG_MASK mask, | |||
86 | print_hex_dump_bytes(prefix, DUMP_PREFIX_OFFSET, buf, len); | 88 | print_hex_dump_bytes(prefix, DUMP_PREFIX_OFFSET, buf, len); |
87 | } | 89 | } |
88 | } | 90 | } |
91 | EXPORT_SYMBOL(ath6kl_dbg_dump); | ||
89 | 92 | ||
90 | #define REG_OUTPUT_LEN_PER_LINE 25 | 93 | #define REG_OUTPUT_LEN_PER_LINE 25 |
91 | #define REGTYPE_STR_LEN 100 | 94 | #define REGTYPE_STR_LEN 100 |
diff --git a/drivers/net/wireless/ath/ath6kl/hif.c b/drivers/net/wireless/ath/ath6kl/hif.c index 711886860b5d..d912da6ab0d1 100644 --- a/drivers/net/wireless/ath/ath6kl/hif.c +++ b/drivers/net/wireless/ath/ath6kl/hif.c | |||
@@ -15,6 +15,8 @@ | |||
15 | */ | 15 | */ |
16 | #include "hif.h" | 16 | #include "hif.h" |
17 | 17 | ||
18 | #include <linux/export.h> | ||
19 | |||
18 | #include "core.h" | 20 | #include "core.h" |
19 | #include "target.h" | 21 | #include "target.h" |
20 | #include "hif-ops.h" | 22 | #include "hif-ops.h" |
@@ -59,6 +61,8 @@ int ath6kl_hif_rw_comp_handler(void *context, int status) | |||
59 | 61 | ||
60 | return 0; | 62 | return 0; |
61 | } | 63 | } |
64 | EXPORT_SYMBOL(ath6kl_hif_rw_comp_handler); | ||
65 | |||
62 | #define REG_DUMP_COUNT_AR6003 60 | 66 | #define REG_DUMP_COUNT_AR6003 60 |
63 | #define REGISTER_DUMP_LEN_MAX 60 | 67 | #define REGISTER_DUMP_LEN_MAX 60 |
64 | 68 | ||
@@ -560,6 +564,7 @@ int ath6kl_hif_intr_bh_handler(struct ath6kl *ar) | |||
560 | 564 | ||
561 | return status; | 565 | return status; |
562 | } | 566 | } |
567 | EXPORT_SYMBOL(ath6kl_hif_intr_bh_handler); | ||
563 | 568 | ||
564 | static int ath6kl_hif_enable_intrs(struct ath6kl_device *dev) | 569 | static int ath6kl_hif_enable_intrs(struct ath6kl_device *dev) |
565 | { | 570 | { |
diff --git a/drivers/net/wireless/ath/ath6kl/init.c b/drivers/net/wireless/ath/ath6kl/init.c index b8252ced0968..167dc41af2de 100644 --- a/drivers/net/wireless/ath/ath6kl/init.c +++ b/drivers/net/wireless/ath/ath6kl/init.c | |||
@@ -17,8 +17,10 @@ | |||
17 | 17 | ||
18 | #include <linux/moduleparam.h> | 18 | #include <linux/moduleparam.h> |
19 | #include <linux/errno.h> | 19 | #include <linux/errno.h> |
20 | #include <linux/export.h> | ||
20 | #include <linux/of.h> | 21 | #include <linux/of.h> |
21 | #include <linux/mmc/sdio_func.h> | 22 | #include <linux/mmc/sdio_func.h> |
23 | |||
22 | #include "core.h" | 24 | #include "core.h" |
23 | #include "cfg80211.h" | 25 | #include "cfg80211.h" |
24 | #include "target.h" | 26 | #include "target.h" |
@@ -1707,3 +1709,4 @@ void ath6kl_stop_txrx(struct ath6kl *ar) | |||
1707 | 1709 | ||
1708 | clear_bit(WLAN_ENABLED, &ar->flag); | 1710 | clear_bit(WLAN_ENABLED, &ar->flag); |
1709 | } | 1711 | } |
1712 | EXPORT_SYMBOL(ath6kl_stop_txrx); | ||