carl9170 firmware: remove CONFIG_CARL9170FW_CAB_QUEUE
authorChristian Lamparter <chunkeey@googlemail.com>
Thu, 13 Sep 2012 23:08:49 +0000 (01:08 +0200)
committerChristian Lamparter <chunkeey@googlemail.com>
Thu, 13 Sep 2012 23:08:49 +0000 (01:08 +0200)
The software supported cab queue is now a standard
feature and will always be available.

Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
carlfw/Kconfig
carlfw/include/carl9170.h
carlfw/include/dma.h
carlfw/src/dma.c
carlfw/src/fw.c
carlfw/src/hostif.c
carlfw/src/wlan.c

index f42268c417919c2cff9ba5e2173cf20b541a29d1..09445c4200a78c1925a8cdc3ff8cb016f9a29c55 100644 (file)
@@ -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"
index cb16415c5adbeed7a0350f99f680ccda3f19b453..a807dd4be27447639545e7b5da2a5cca6b91c86c 100644 (file)
@@ -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,
index 8f3a9df63e0dd65baac0496f72e3f8755a17b5ac..7ecdfb94db2a018a2f4c48a59d7386ce3fd96e78 100644 (file)
@@ -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 + \
index 9b83fcf9b4777ff2ff048a66af94695479d2fe37..9945f3e44c51081fcfbb13faf6571ca4f41baed9 100644 (file)
@@ -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);
 
index 8f0b33e6b8b6065bef73a5a5c33d6cc1c6dcd860..f705a0d9dcb446c21b7d5de0da341ac613d36e71 100644 (file)
@@ -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 */
index ba7a6e102ed19645f3404f2bf1fa9dec71b5a380..57268607169afaa9a153c1f455d25b0a21598b6a 100644 (file)
@@ -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:
index d3328d67e74a9be0a57cc467ce3af72548114e6c..3d879bd3c4be5e2a1a06c1a96db4865cd2072a6f 100644 (file)
@@ -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();