summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/ti/wl18xx/conf.h
diff options
context:
space:
mode:
authorYair Shapira <yair.shapira@ti.com>2012-07-05 15:11:30 (GMT)
committerLuciano Coelho <coelho@ti.com>2012-07-18 12:08:21 (GMT)
commitc68cc0f6ebd471374c0d913717c6a77572e5f9c6 (patch)
treeffb1df45ba143f23d82a55e7d4e069d1ee8506a8 /drivers/net/wireless/ti/wl18xx/conf.h
parent8e945ff9739dd75adce5d850eec079b4e9af550b (diff)
downloadlinux-c68cc0f6ebd471374c0d913717c6a77572e5f9c6.tar.xz
wl18xx: add support for ht_mode in conf.h
ht_mode added to wl18xx conf struct in order to support different modes from the configuration file, as well as module params, and by default (working without a conf file and/or no module params). the hack regarding conf.phy.low_band_component_type for each board is now explicitly handled after parsing module params. missing default values to wl18xx config added. fix string module params not to have defaults (so if empty, param can be taken from conf file). update conf version to 3. Signed-off-by: Yair Shapira <yair.shapira@ti.com> Signed-off-by: Ido Reis <idor@ti.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
Diffstat (limited to 'drivers/net/wireless/ti/wl18xx/conf.h')
-rw-r--r--drivers/net/wireless/ti/wl18xx/conf.h21
1 files changed, 20 insertions, 1 deletions
diff --git a/drivers/net/wireless/ti/wl18xx/conf.h b/drivers/net/wireless/ti/wl18xx/conf.h
index fac0b7e..4d426cc 100644
--- a/drivers/net/wireless/ti/wl18xx/conf.h
+++ b/drivers/net/wireless/ti/wl18xx/conf.h
@@ -23,7 +23,7 @@
#define __WL18XX_CONF_H__
#define WL18XX_CONF_MAGIC 0x10e100ca
-#define WL18XX_CONF_VERSION (WLCORE_CONF_VERSION | 0x0002)
+#define WL18XX_CONF_VERSION (WLCORE_CONF_VERSION | 0x0003)
#define WL18XX_CONF_MASK 0x0000ffff
#define WL18XX_CONF_SIZE (WLCORE_CONF_SIZE + \
sizeof(struct wl18xx_priv_conf))
@@ -84,7 +84,26 @@ struct wl18xx_mac_and_phy_params {
u8 padding[1];
} __packed;
+enum wl18xx_ht_mode {
+ /* Default - use MIMO, fallback to SISO20 */
+ HT_MODE_DEFAULT = 0,
+
+ /* Wide - use SISO40 */
+ HT_MODE_WIDE = 1,
+
+ /* Use SISO20 */
+ HT_MODE_SISO20 = 2,
+};
+
+struct wl18xx_ht_settings {
+ /* DEFAULT / WIDE / SISO20 */
+ u8 mode;
+} __packed;
+
struct wl18xx_priv_conf {
+ /* Module params structures */
+ struct wl18xx_ht_settings ht;
+
/* this structure is copied wholesale to FW */
struct wl18xx_mac_and_phy_params phy;
} __packed;