X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=carlfw%2Fsrc%2Fdma.c;h=8630f98afba6809a94e40eaac4587fc8dd32b4d8;hb=03a8cf510dbef554b55403da7547607f7e326368;hp=de9c8b91b71489e0ff115b966a0d237005574fe6;hpb=c772ac7e750c55c25ccba8c754eaa626cdfa9e44;p=carl9170fw.git diff --git a/carlfw/src/dma.c b/carlfw/src/dma.c index de9c8b9..8630f98 100644 --- a/carlfw/src/dma.c +++ b/carlfw/src/dma.c @@ -81,6 +81,7 @@ void dma_init_descriptors(void) fw.wlan.tx_retry.head = fw.wlan.tx_retry.terminator = &dma_mem.terminator[i++]; fw.wlan.rx_queue.head = fw.wlan.rx_queue.terminator = &dma_mem.terminator[i++]; fw.usb.int_desc = &dma_mem.terminator[i++]; + fw.wlan.fw_desc = &dma_mem.terminator[i++]; #ifdef CONFIG_CARL9170FW_CAB_QUEUE /* GCC bug ? */ @@ -93,10 +94,6 @@ void dma_init_descriptors(void) #endif #endif /* CONFIG_CARL9170FW_CAB_QUEUE */ -#ifdef CONFIG_CARL9170FW_HANDLE_BACK_REQ - fw.wlan.ba_desc = &dma_mem.terminator[i++]; -#endif /* CONFIG_CARL9170FW_HANDLE_BACK_REQ */ - BUILD_BUG_ON(AR9170_TERMINATOR_NUMBER != j); DBG("Blocks:%d [tx:%d, rx:%d] Terminators:%d/%d\n", @@ -124,13 +121,8 @@ void dma_init_descriptors(void) set(AR9170_MAC_REG_DMA_RXQ_ADDR, (uint32_t) fw.wlan.rx_queue.head); - fw.usb.int_desc->status = AR9170_OWN_BITS_SW; - fw.usb.int_desc->ctrl = (AR9170_CTRL_LS_BIT | AR9170_CTRL_FS_BIT); fw.usb.int_desc->dataSize = AR9170_BLOCK_SIZE; - fw.usb.int_desc->totalLen = 0; - fw.usb.int_desc->lastAddr = fw.usb.int_desc; fw.usb.int_desc->dataAddr = (void *) &dma_mem.reserved.rsp; - fw.usb.int_desc->nextAddr = (void *) 0; memset(DESC_PAYLOAD(fw.usb.int_desc), 0xff, AR9170_INT_MAGIC_HEADER_SIZE); @@ -140,21 +132,8 @@ void dma_init_descriptors(void) /* rsp is now available for use */ fw.usb.int_desc_available = 1; -#ifdef CONFIG_CARL9170FW_HANDLE_BACK_REQ - fw.wlan.ba_desc->status = AR9170_OWN_BITS_SW; - fw.wlan.ba_desc->ctrl = (AR9170_CTRL_LS_BIT | AR9170_CTRL_FS_BIT); - fw.wlan.ba_desc->dataSize = fw.wlan.ba_desc->totalLen = - sizeof(struct carl9170_tx_superdesc) + - sizeof(struct ar9170_tx_hwdesc) + - sizeof(struct ieee80211_ba) + FCS_LEN; - fw.wlan.ba_desc->lastAddr = fw.wlan.ba_desc; - fw.wlan.ba_desc->nextAddr = fw.wlan.ba_desc; - fw.wlan.ba_desc->dataAddr = (void *) &dma_mem.reserved.ba; - - memset(DESC_PAYLOAD(fw.wlan.ba_desc), 0, 128); - - fw.wlan.ba_desc_available = 1; -#endif /* CONFIG_CARL9170FW_HANDLE_BACK_REQ */ + memset(DESC_PAYLOAD(fw.wlan.fw_desc), 0, 128); + fw.wlan.fw_desc_available = 1; } /*