Commit fe5ef090 authored by Eliad Peller's avatar Eliad Peller Committed by Luciano Coelho

wl12xx: use the conf struct instead of macros for memory configuration

make the configuration management more flexible by using the
conf struct, rather than predefined macros.
Signed-off-by: default avatarEliad Peller <eliad@wizery.com>
Reviewed-by: default avatarLuciano Coelho <coelho@ti.com>
Signed-off-by: default avatarLuciano Coelho <coelho@ti.com>
parent c8bde243
...@@ -961,10 +961,10 @@ int wl1271_acx_ap_mem_cfg(struct wl1271 *wl) ...@@ -961,10 +961,10 @@ int wl1271_acx_ap_mem_cfg(struct wl1271 *wl)
} }
/* memory config */ /* memory config */
mem_conf->num_stations = DEFAULT_NUM_STATIONS; mem_conf->num_stations = wl->conf.mem.num_stations;
mem_conf->rx_mem_block_num = ACX_RX_MEM_BLOCKS; mem_conf->rx_mem_block_num = wl->conf.mem.rx_block_num;
mem_conf->tx_min_mem_block_num = ACX_TX_MIN_MEM_BLOCKS; mem_conf->tx_min_mem_block_num = wl->conf.mem.tx_min_block_num;
mem_conf->num_ssid_profiles = ACX_NUM_SSID_PROFILES; mem_conf->num_ssid_profiles = wl->conf.mem.ssid_profiles;
mem_conf->total_tx_descriptors = cpu_to_le32(ACX_TX_DESCRIPTORS); mem_conf->total_tx_descriptors = cpu_to_le32(ACX_TX_DESCRIPTORS);
ret = wl1271_cmd_configure(wl, ACX_MEM_CFG, mem_conf, ret = wl1271_cmd_configure(wl, ACX_MEM_CFG, mem_conf,
...@@ -993,10 +993,10 @@ int wl1271_acx_sta_mem_cfg(struct wl1271 *wl) ...@@ -993,10 +993,10 @@ int wl1271_acx_sta_mem_cfg(struct wl1271 *wl)
} }
/* memory config */ /* memory config */
mem_conf->num_stations = DEFAULT_NUM_STATIONS; mem_conf->num_stations = wl->conf.mem.num_stations;
mem_conf->rx_mem_block_num = ACX_RX_MEM_BLOCKS; mem_conf->rx_mem_block_num = wl->conf.mem.rx_block_num;
mem_conf->tx_min_mem_block_num = ACX_TX_MIN_MEM_BLOCKS; mem_conf->tx_min_mem_block_num = wl->conf.mem.tx_min_block_num;
mem_conf->num_ssid_profiles = ACX_NUM_SSID_PROFILES; mem_conf->num_ssid_profiles = wl->conf.mem.ssid_profiles;
mem_conf->total_tx_descriptors = cpu_to_le32(ACX_TX_DESCRIPTORS); mem_conf->total_tx_descriptors = cpu_to_le32(ACX_TX_DESCRIPTORS);
mem_conf->dyn_mem_enable = wl->conf.mem.dynamic_memory; mem_conf->dyn_mem_enable = wl->conf.mem.dynamic_memory;
mem_conf->tx_free_req = wl->conf.mem.min_req_tx_blocks; mem_conf->tx_free_req = wl->conf.mem.min_req_tx_blocks;
......
...@@ -133,7 +133,6 @@ enum { ...@@ -133,7 +133,6 @@ enum {
#define DEFAULT_UCAST_PRIORITY 0 #define DEFAULT_UCAST_PRIORITY 0
#define DEFAULT_RX_Q_PRIORITY 0 #define DEFAULT_RX_Q_PRIORITY 0
#define DEFAULT_NUM_STATIONS 1
#define DEFAULT_RXQ_PRIORITY 0 /* low 0 .. 15 high */ #define DEFAULT_RXQ_PRIORITY 0 /* low 0 .. 15 high */
#define DEFAULT_RXQ_TYPE 0x07 /* All frames, Data/Ctrl/Mgmt */ #define DEFAULT_RXQ_TYPE 0x07 /* All frames, Data/Ctrl/Mgmt */
#define TRACE_BUFFER_MAX_SIZE 256 #define TRACE_BUFFER_MAX_SIZE 256
...@@ -797,10 +796,7 @@ struct acx_tx_config_options { ...@@ -797,10 +796,7 @@ struct acx_tx_config_options {
__le16 tx_compl_threshold; /* number of packets */ __le16 tx_compl_threshold; /* number of packets */
} __packed; } __packed;
#define ACX_RX_MEM_BLOCKS 70
#define ACX_TX_MIN_MEM_BLOCKS 40
#define ACX_TX_DESCRIPTORS 32 #define ACX_TX_DESCRIPTORS 32
#define ACX_NUM_SSID_PROFILES 1
struct wl1271_acx_ap_config_memory { struct wl1271_acx_ap_config_memory {
struct acx_header header; struct acx_header header;
......
...@@ -1152,6 +1152,18 @@ struct conf_ht_setting { ...@@ -1152,6 +1152,18 @@ struct conf_ht_setting {
}; };
struct conf_memory_settings { struct conf_memory_settings {
/* Number of stations supported in IBSS mode */
u8 num_stations;
/* Number of ssid profiles used in IBSS mode */
u8 ssid_profiles;
/* Number of memory buffers allocated to rx pool */
u8 rx_block_num;
/* Minimum number of blocks allocated to tx pool */
u8 tx_min_block_num;
/* Disable/Enable dynamic memory */ /* Disable/Enable dynamic memory */
u8 dynamic_memory; u8 dynamic_memory;
......
...@@ -299,6 +299,10 @@ static struct conf_drv_settings default_conf = { ...@@ -299,6 +299,10 @@ static struct conf_drv_settings default_conf = {
.inactivity_timeout = 10000, .inactivity_timeout = 10000,
}, },
.mem = { .mem = {
.num_stations = 1,
.ssid_profiles = 1,
.rx_block_num = 70,
.tx_min_block_num = 40,
.dynamic_memory = 0, .dynamic_memory = 0,
.min_req_tx_blocks = 104, .min_req_tx_blocks = 104,
.min_req_rx_blocks = 22, .min_req_rx_blocks = 22,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment