tx_free
while (greth->tx_free < GRETH_TXBD_NUM) {
greth->tx_free += nr_frags+1;
greth->tx_free = GRETH_TXBD_NUM;
if (unlikely(greth->tx_free <= 0)) {
greth->tx_free--;
if (greth->tx_free == GRETH_TXBD_NUM)
greth->tx_free++;
if (greth->tx_free > 0) {
u16 tx_free; /* only used on 10/100Mbit */
goto tx_free;
tx_free:
goto tx_free;
tx_free:
unsigned int entry, tx_free;
tx_free = TX_BUFFS_AVAIL(de);
if (tx_free == 0) {
tx_free--;
if (!tx_free || (tx_free == (DE_TX_RING_SIZE / 2)))
if (tx_free == 0)
if (fep->tx_free == fep->tx_ring)
if (++fep->tx_free == MAX_SKB_FRAGS)
fep->tx_free = fep->tx_ring;
if (fep->tx_free <= nr_frags || (CBDR_SC(bdp) & BD_ENET_TX_READY)) {
fep->tx_free -= nr_frags + 1;
if (fep->tx_free < MAX_SKB_FRAGS)
wake = fep->tx_free >= MAX_SKB_FRAGS &&
int tx_free;
while ((ch->dma.desc_base[ch->tx_free].ctl &
dev_kfree_skb_any(ch->skb[ch->tx_free]);
ch->skb[ch->tx_free] = NULL;
memset(&ch->dma.desc_base[ch->tx_free], 0,
ch->tx_free++;
ch->tx_free %= LTQ_DESC_NUM;
int tx_free;
struct ltq_dma_desc *desc = &ch->dma.desc_base[ch->tx_free];
struct sk_buff *skb = ch->skb[ch->tx_free];
ch->skb[ch->tx_free] = NULL;
memset(&ch->dma.desc_base[ch->tx_free], 0,
ch->tx_free++;
ch->tx_free %= LTQ_DESC_NUM;
if (ch->dma.desc == ch->tx_free)
goto tx_free;
tx_free:
int tx_free;
u_short tx_free ; /* count of free TxD's */
if (frag_count > smc->os.hwm.tx_p->tx_free) {
if (frag_count > smc->os.hwm.tx_p->tx_free) {
NDD_TRACE("THiE",frame_status,smc->os.hwm.tx_p->tx_free,0) ;
queue->tx_free-- ;
NDD_TRACE("THfE",t,queue->tx_free,0) ;
if (!smc->hw.mac_ring_is_up || frag_count > queue->tx_free) {
queue->tx_free-- ;
NDD_TRACE("THSE",t,queue->tx_free,frag_count) ;
queue->tx_free += frag_count ;
queue->tx_free = HWM_ASYNC_TXD_COUNT ;
queue->tx_free = HWM_SYNC_TXD_COUNT ;
for (i = tx_used+queue->tx_free-1 ; i ; i-- ) {
list_add_tail(&agg->list, &tp->tx_free);
INIT_LIST_HEAD(&tp->tx_free);
list_add_tail(&tp->tx_info[i].list, &tp->tx_free);
if (list_empty(&tp->tx_free))
if (!list_empty(&tp->tx_free)) {
cursor = tp->tx_free.next;
list_add_tail(&agg->list, &tp->tx_free);
if (!list_empty(&tp->tx_free)) {
struct list_head rx_done, tx_free;
__le32 *tx_free = (__le32 *)data, *cur_info;
if (WARN_ON_ONCE(le32_get_bits(tx_free[1], MT_TXFREE1_VER) < 4))
total = le32_get_bits(tx_free[0], MT_TXFREE0_MSDU_CNT);
for (cur_info = &tx_free[2]; count < total; cur_info++) {
__le32 *tx_free = (__le32 *)data, *cur_info;
ver = le32_get_bits(tx_free[1], MT_TXFREE1_VER);
total = le32_get_bits(tx_free[0], MT_TXFREE0_MSDU_CNT);
for (cur_info = &tx_free[2]; count < total; cur_info++) {
unsigned int tx_free = tx_fifo_free(spi);
while (spi->tx_todo && tx_free) {
tx_free--;
u32 tx_free = rs->fifo_len - readl_relaxed(rs->regs + ROCKCHIP_SPI_TXFLR);
u32 words = min(rs->tx_left, tx_free);