diff options
author | Arik Nemtsov <arik@wizery.com> | 2011-12-13 05:15:09 -0500 |
---|---|---|
committer | Luciano Coelho <coelho@ti.com> | 2012-04-12 01:44:01 -0400 |
commit | 8a9affc08d676a9fe627361ab6767cdec0740af3 (patch) | |
tree | 0ba701f39a5ac4cec80e033cf3c83131fc0d168d /drivers/net/wireless/ti | |
parent | 9d68d1eea7fb4d05b5bd037da6a66329d640b2f1 (diff) |
wlcore/wl12xx: add hw op for vif init
Add an op for family-specific vif initialization. Currently unused,
but will be needed when wl18xx support is implemented.
Signed-off-by: Arik Nemtsov <arik@wizery.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
Diffstat (limited to 'drivers/net/wireless/ti')
-rw-r--r-- | drivers/net/wireless/ti/wl12xx/main.c | 1 | ||||
-rw-r--r-- | drivers/net/wireless/ti/wlcore/hw_ops.h | 9 | ||||
-rw-r--r-- | drivers/net/wireless/ti/wlcore/init.c | 5 | ||||
-rw-r--r-- | drivers/net/wireless/ti/wlcore/wlcore.h | 1 |
4 files changed, 16 insertions, 0 deletions
diff --git a/drivers/net/wireless/ti/wl12xx/main.c b/drivers/net/wireless/ti/wl12xx/main.c index 9b2f40cd58d7..564ca914bfcf 100644 --- a/drivers/net/wireless/ti/wl12xx/main.c +++ b/drivers/net/wireless/ti/wl12xx/main.c | |||
@@ -915,6 +915,7 @@ static struct wlcore_ops wl12xx_ops = { | |||
915 | .tx_immediate_compl = NULL, | 915 | .tx_immediate_compl = NULL, |
916 | .tx_delayed_compl = wl12xx_tx_delayed_compl, | 916 | .tx_delayed_compl = wl12xx_tx_delayed_compl, |
917 | .hw_init = wl12xx_hw_init, | 917 | .hw_init = wl12xx_hw_init, |
918 | .init_vif = NULL, | ||
918 | .get_pg_ver = wl12xx_get_pg_ver, | 919 | .get_pg_ver = wl12xx_get_pg_ver, |
919 | .get_mac = wl12xx_get_mac, | 920 | .get_mac = wl12xx_get_mac, |
920 | }; | 921 | }; |
diff --git a/drivers/net/wireless/ti/wlcore/hw_ops.h b/drivers/net/wireless/ti/wlcore/hw_ops.h index 9fc64295293f..6fc71430e963 100644 --- a/drivers/net/wireless/ti/wlcore/hw_ops.h +++ b/drivers/net/wireless/ti/wlcore/hw_ops.h | |||
@@ -93,4 +93,13 @@ static inline void wlcore_hw_tx_immediate_compl(struct wl1271 *wl) | |||
93 | wl->ops->tx_immediate_compl(wl); | 93 | wl->ops->tx_immediate_compl(wl); |
94 | } | 94 | } |
95 | 95 | ||
96 | static inline int | ||
97 | wlcore_hw_init_vif(struct wl1271 *wl, struct wl12xx_vif *wlvif) | ||
98 | { | ||
99 | if (wl->ops->init_vif) | ||
100 | return wl->ops->init_vif(wl, wlvif); | ||
101 | |||
102 | return 0; | ||
103 | } | ||
104 | |||
96 | #endif | 105 | #endif |
diff --git a/drivers/net/wireless/ti/wlcore/init.c b/drivers/net/wireless/ti/wlcore/init.c index afe4f753f706..9f89255eb6e6 100644 --- a/drivers/net/wireless/ti/wlcore/init.c +++ b/drivers/net/wireless/ti/wlcore/init.c | |||
@@ -32,6 +32,7 @@ | |||
32 | #include "cmd.h" | 32 | #include "cmd.h" |
33 | #include "tx.h" | 33 | #include "tx.h" |
34 | #include "io.h" | 34 | #include "io.h" |
35 | #include "hw_ops.h" | ||
35 | 36 | ||
36 | int wl1271_init_templates_config(struct wl1271 *wl) | 37 | int wl1271_init_templates_config(struct wl1271 *wl) |
37 | { | 38 | { |
@@ -638,6 +639,10 @@ int wl1271_init_vif_specific(struct wl1271 *wl, struct ieee80211_vif *vif) | |||
638 | if (ret < 0) | 639 | if (ret < 0) |
639 | return ret; | 640 | return ret; |
640 | 641 | ||
642 | ret = wlcore_hw_init_vif(wl, wlvif); | ||
643 | if (ret < 0) | ||
644 | return ret; | ||
645 | |||
641 | return 0; | 646 | return 0; |
642 | } | 647 | } |
643 | 648 | ||
diff --git a/drivers/net/wireless/ti/wlcore/wlcore.h b/drivers/net/wireless/ti/wlcore/wlcore.h index 91ccd1e36389..7e2881d38860 100644 --- a/drivers/net/wireless/ti/wlcore/wlcore.h +++ b/drivers/net/wireless/ti/wlcore/wlcore.h | |||
@@ -54,6 +54,7 @@ struct wlcore_ops { | |||
54 | void (*tx_delayed_compl)(struct wl1271 *wl); | 54 | void (*tx_delayed_compl)(struct wl1271 *wl); |
55 | void (*tx_immediate_compl)(struct wl1271 *wl); | 55 | void (*tx_immediate_compl)(struct wl1271 *wl); |
56 | int (*hw_init)(struct wl1271 *wl); | 56 | int (*hw_init)(struct wl1271 *wl); |
57 | int (*init_vif)(struct wl1271 *wl, struct wl12xx_vif *wlvif); | ||
57 | s8 (*get_pg_ver)(struct wl1271 *wl); | 58 | s8 (*get_pg_ver)(struct wl1271 *wl); |
58 | void (*get_mac)(struct wl1271 *wl); | 59 | void (*get_mac)(struct wl1271 *wl); |
59 | }; | 60 | }; |