From: Christian Lamparter Date: Thu, 13 Sep 2012 23:08:49 +0000 (+0200) Subject: carl9170 firmware: remove CONFIG_CARL9170FW_CAB_QUEUE X-Git-Tag: 1.9.7~25 X-Git-Url: https://jxself.org/git/?a=commitdiff_plain;h=5d61afe9cc7019ce23856396488846950e656245;p=carl9170fw.git carl9170 firmware: remove CONFIG_CARL9170FW_CAB_QUEUE The software supported cab queue is now a standard feature and will always be available. Signed-off-by: Christian Lamparter --- diff --git a/carlfw/Kconfig b/carlfw/Kconfig index f42268c..09445c4 100644 --- a/carlfw/Kconfig +++ b/carlfw/Kconfig @@ -65,21 +65,6 @@ config CARL9170FW_RADIO_FUNCTIONS endmenu -menu "802.11 Firmware Features" - -config CARL9170FW_CAB_QUEUE - def_bool y - prompt "Support software-based Content after Beacon Queue" - ---help--- - This (software) queue is used to send any broad-/multi-cast buffered - frames after the next DTIM beacon. - - This feature is required for Accesspoint mode operation. - - Say Y. - -endmenu - source "carlfw/usb/Kconfig" menu "Experimental, Unstable & Testing Extensions" diff --git a/carlfw/include/carl9170.h b/carlfw/include/carl9170.h index cb16415..a807dd4 100644 --- a/carlfw/include/carl9170.h +++ b/carlfw/include/carl9170.h @@ -41,13 +41,11 @@ struct carl9170_bar_ctx { __le16 control; }; -#ifdef CONFIG_CARL9170FW_CAB_QUEUE enum carl9170_cab_trigger { CARL9170_CAB_TRIGGER_EMPTY = 0, CARL9170_CAB_TRIGGER_ARMED = BIT(0), CARL9170_CAB_TRIGGER_DEFER = BIT(1), }; -#endif /* CONFIG_CARL9170FW_CAB_QUEUE */ enum carl9170_ep0_action { CARL9170_EP0_NO_ACTION = 0, @@ -117,13 +115,11 @@ struct firmware_context_struct { /* tx sequence control counters */ unsigned int sequence[CARL9170_INTF_NUM]; -#ifdef CONFIG_CARL9170FW_CAB_QUEUE /* CAB */ struct dma_queue cab_queue[CARL9170_INTF_NUM]; unsigned int cab_queue_len[CARL9170_INTF_NUM]; unsigned int cab_flush_time; enum carl9170_cab_trigger cab_flush_trigger[CARL9170_INTF_NUM]; -#endif /* CONFIG_CARL9170FW_CAB_QUEUE */ /* tx status */ unsigned int tx_status_pending, diff --git a/carlfw/include/dma.h b/carlfw/include/dma.h index 8f3a9df..7ecdfb9 100644 --- a/carlfw/include/dma.h +++ b/carlfw/include/dma.h @@ -51,11 +51,7 @@ struct dma_desc { #define AR9170_TERMINATOR_NUMBER_INT 1 -#ifdef CONFIG_CARL9170FW_CAB_QUEUE #define AR9170_TERMINATOR_NUMBER_CAB CARL9170_INTF_NUM -#else -#define AR9170_TERMINATOR_NUMBER_CAB 0 -#endif /* CONFIG_CARL9170FW_CAB_QUEUE */ #define AR9170_TERMINATOR_NUMBER (AR9170_TERMINATOR_NUMBER_B + \ AR9170_TERMINATOR_NUMBER_INT + \ diff --git a/carlfw/src/dma.c b/carlfw/src/dma.c index 9b83fcf..9945f3e 100644 --- a/carlfw/src/dma.c +++ b/carlfw/src/dma.c @@ -88,10 +88,8 @@ void dma_init_descriptors(void) fw.usb.int_desc = &dma_mem.terminator[i++]; fw.wlan.fw_desc = &dma_mem.terminator[i++]; -#ifdef CONFIG_CARL9170FW_CAB_QUEUE for (j = 0; j < CARL9170_INTF_NUM; j++) init_queue(&fw.wlan.cab_queue[j], &dma_mem.terminator[i++]); -#endif /* CONFIG_CARL9170FW_CAB_QUEUE */ BUG_ON(AR9170_TERMINATOR_NUMBER != i); diff --git a/carlfw/src/fw.c b/carlfw/src/fw.c index 8f0b33e..f705a0d 100644 --- a/carlfw/src/fw.c +++ b/carlfw/src/fw.c @@ -54,9 +54,7 @@ const struct carl9170_firmware_descriptor __section(fwdsc) __visible carl9170fw_ #ifdef CONFIG_CARL9170FW_SECURITY_ENGINE BIT(CARL9170FW_COMMAND_CAM) | #endif /* CONFIG_CARL9170FW_SECURITY_ENGINE */ -#ifdef CONFIG_CARL9170FW_CAB_QUEUE BIT(CARL9170FW_WLANTX_CAB) | -#endif /* CONFIG_CARL9170FW_CAB_QUEUE */ #ifdef CONFIG_CARL9170FW_UNUSABLE BIT(CARL9170FW_UNUSABLE) | #endif /* CONFIG_CARL9170FW_UNUSABLE */ diff --git a/carlfw/src/hostif.c b/carlfw/src/hostif.c index ba7a6e1..5726860 100644 --- a/carlfw/src/hostif.c +++ b/carlfw/src/hostif.c @@ -235,7 +235,6 @@ void handle_cmd(struct carl9170_rsp *resp) memset(&fw.tally, 0, sizeof(struct carl9170_tally_rsp)); break; -#ifdef CONFIG_CARL9170FW_CAB_QUEUE case CARL9170_CMD_BCN_CTRL: resp->hdr.len = 0; @@ -250,7 +249,6 @@ void handle_cmd(struct carl9170_rsp *resp) fw.wlan.cab_flush_trigger[cmd->bcn_ctrl.vif_id] = CARL9170_CAB_TRIGGER_EMPTY; } break; -#endif /* CONFIG_CARL9170FW_CAB_QUEUE */ #ifdef CONFIG_CARL9170FW_SECURITY_ENGINE case CARL9170_CMD_EKEY: diff --git a/carlfw/src/wlan.c b/carlfw/src/wlan.c index d3328d6..3d879bd 100644 --- a/carlfw/src/wlan.c +++ b/carlfw/src/wlan.c @@ -452,10 +452,8 @@ static bool wlan_tx_status(struct dma_queue *queue, return true; } -#ifdef CONFIG_CARL9170FW_CAB_QUEUE if (unlikely(super->s.cab)) fw.wlan.cab_queue_len[super->s.vif_id]--; -#endif /* CONFIG_CARL9170FW_CAB_QUEUE */ wlan_tx_complete(super, success); @@ -506,13 +504,11 @@ void __hot wlan_tx(struct dma_desc *desc) super->s.cnt = 1; hide_super(desc); -#ifdef CONFIG_CARL9170FW_CAB_QUEUE if (unlikely(super->s.cab)) { fw.wlan.cab_queue_len[super->s.vif_id]++; dma_put(&fw.wlan.cab_queue[super->s.vif_id], desc); return; } -#endif /* CONFIG_CARL9170FW_CAB_QUEUE */ _wlan_tx(desc); __wlan_tx(desc); @@ -751,7 +747,6 @@ static void handle_rx(void) } } -#ifdef CONFIG_CARL9170FW_CAB_QUEUE void wlan_cab_flush_queue(const unsigned int vif) { struct dma_queue *cab_queue = &fw.wlan.cab_queue[vif]; @@ -872,7 +867,6 @@ static void wlan_send_buffered_cab(void) } } -#endif /* CONFIG_CARL9170FW_CAB_QUEUE */ static void handle_beacon_config(void) { @@ -885,9 +879,7 @@ static void handle_beacon_config(void) static void handle_pretbtt(void) { -#ifdef CONFIG_CARL9170FW_CAB_QUEUE fw.wlan.cab_flush_time = get_clock_counter(); -#endif /* CONFIG_CARL9170FW_CAB_QUEUE */ #ifdef CONFIG_CARL9170FW_RADIO_FUNCTIONS rf_psm(); @@ -920,9 +912,7 @@ static void handle_radar(void) static void wlan_janitor(void) { -#ifdef CONFIG_CARL9170FW_CAB_QUEUE wlan_send_buffered_cab(); -#endif /* CONFIG_CARL9170FW_CAB_QUEUE */ wlan_send_buffered_tx_status();