/illumos-gate/usr/src/uts/common/io/bnxe/577xx/drivers/common/lm/device/ |
H A D | bd_chain.h | 3 * bd_chain.h - bd chain interface 23 __inline static u16_t lm_bd_chain_avail_bds(lm_bd_chain_t* bd_chain) argument 25 return bd_chain->bd_left; 29 __inline static u16_t lm_bd_chain_prod_idx(lm_bd_chain_t* bd_chain) argument 31 return bd_chain->prod_idx; 35 __inline static u16_t lm_bd_chain_cons_idx(lm_bd_chain_t* bd_chain) argument 37 return bd_chain->cons_idx; 41 __inline static u16_t lm_bd_chain_usable_bds_per_page(lm_bd_chain_t* bd_chain) argument 43 return bd_chain->usable_bds_per_page; 47 __inline static u16_t lm_bd_chain_page_cnt(lm_bd_chain_t* bd_chain) argument 53 lm_bd_chain_bds_per_page(lm_bd_chain_t* bd_chain) argument 59 lm_bd_chain_bds_per_page_mask(lm_bd_chain_t* bd_chain) argument 65 lm_bd_chain_bds_skip_eop(lm_bd_chain_t* bd_chain) argument 71 lm_bd_chain_is_empty(lm_bd_chain_t* bd_chain) argument 77 lm_bd_chain_is_full(lm_bd_chain_t* bd_chain) argument 83 lm_bd_chain_phys_addr(lm_bd_chain_t* bd_chain, u8_t page_idx) argument 113 lm_bd_chain_set_next_ptrs(lm_bd_chain_t * bd_chain) argument 191 lm_bd_chain_add_page( struct _lm_device_t *pdev, lm_bd_chain_t* bd_chain, void *mem_virt, lm_address_t mem_phys, u8_t bd_size, u8_t is_chain_mode) argument 263 lm_bd_chain_setup( struct _lm_device_t *pdev, lm_bd_chain_t* bd_chain, void *mem_virt, lm_address_t mem_phys, u16_t page_cnt, u8_t bd_size, u8_t is_full, u8_t is_chain_mode) argument 368 lm_bd_chain_pbl_setup( struct _lm_device_t *pdev, lm_bd_chain_t* bd_chain, void *mem_virt, lm_address_t mem_phys, void *pbl_virt_table, lm_address_t *pbl_phys_table, u16_t page_cnt, u8_t bd_size, u8_t is_full) argument 421 lm_bd_chain_reset(struct _lm_device_t * pdev, lm_bd_chain_t * bd_chain) argument 457 lm_bd_chain_incr_bd( lm_bd_chain_t * bd_chain, lm_address_t * phys, void ** virt, u16_t * bd_idx) argument 482 lm_bd_advance_page(lm_bd_chain_t* bd_chain, u16_t *idx_to_inc) argument 507 lm_bd_chain_bds_consumed(lm_bd_chain_t* bd_chain, u16_t nbds) argument 516 lm_toe_bd_chain_produce_bd(lm_bd_chain_t* bd_chain) argument 539 lm_bd_chain_produce_bd(lm_bd_chain_t* bd_chain) argument 567 lm_toe_bd_chain_consume_bd(lm_bd_chain_t* bd_chain) argument 587 lm_bd_chain_consume_bd(lm_bd_chain_t* bd_chain) argument 614 lm_bd_chain_consume_bd_contiguous(lm_bd_chain_t* bd_chain) argument 642 lm_toe_bd_chain_bds_produced(lm_bd_chain_t* bd_chain, u16_t nbds) argument 677 lm_bd_chain_bds_produced(lm_bd_chain_t* bd_chain, u16_t nbds) argument 708 lm_bd_chain_bd_produced(lm_bd_chain_t* bd_chain) argument 723 lm_bd_chains_are_consistent( lm_bd_chain_t* bd_chain, lm_bd_chain_t* bd_chain2 ) argument [all...] |
H A D | lm_resc.c | 38 #include "bd_chain.h" 321 tx_chain->bd_chain.bd_chain_virt = 322 mm_alloc_phys_mem( pdev, mem_size, &tx_chain->bd_chain.bd_chain_phy, 0, mm_cli_idx); 323 if(ERR_IF(!tx_chain->bd_chain.bd_chain_virt)) 328 mm_mem_zero(tx_chain->bd_chain.bd_chain_virt, mem_size); 330 tx_chain->bd_chain.page_cnt = page_cnt; 353 lm_bd_chain_t * bd_chain = NULL; local 383 bd_chain = &LM_RXQ_CHAIN( pdev, cid, rx_chain_idx_cur ); 385 bd_chain->bd_chain_virt = mm_alloc_phys_mem( pdev, mem_size, &bd_chain 463 lm_bd_chain_t * bd_chain = NULL; local 579 lm_bd_chain_t * bd_chain = NULL; local 680 lm_bd_chain_t * bd_chain = NULL; local 744 lm_bd_chain_t * bd_chain = NULL; local 1335 lm_bd_chain_t* bd_chain = &LM_TPA_CHAIN_BD(pdev, chain_idx); local 1394 lm_bd_chain_t * bd_chain = NULL; local 1479 lm_bd_chain_t * bd_chain = NULL; local [all...] |
H A D | lm_recv.c | 3 #include "bd_chain.h" 19 lm_bd_chain_cons_idx(&rcq_chain->bd_chain))) 126 bd_chain_to_check = &rcq_chain->bd_chain; 177 lm_bd_chain_bd_produced(&rcq_chain->bd_chain); 233 lm_rx_set_prods(pdev, rcq_chain->iro_prod_offset, &rcq_chain->bd_chain, rx_chain_bd, rx_chain_sge ,chain_idx); 237 lm_rx_set_prods(pdev, rcq_chain->iro_prod_offset, &rcq_chain->bd_chain, &LM_RXQ_CHAIN_BD(pdev, chain_idx), &LM_TPA_CHAIN_BD(pdev, chain_idx) ,chain_idx); 244 lm_bd_chain_cons_idx(&rcq_chain->bd_chain) ,lm_bd_chain_prod_idx(&rcq_chain->bd_chain)); 300 lm_bd_chain_t* bd_chain = &LM_TPA_CHAIN_BD(pdev, chain_idx); local 305 bd_chain 357 lm_bd_chain_t* bd_chain = &LM_TPA_CHAIN_BD(pdev, chain_idx); local [all...] |
H A D | lm_send.c | 44 #include "bd_chain.h" 88 prod_bd = (struct eth_tx_bd *)lm_bd_chain_produce_bd(&tx_chain->bd_chain); 218 prod_bd = (struct eth_tx_bd *)lm_bd_chain_produce_bd(&tx_chain->bd_chain); 611 old_prod_idx = lm_bd_chain_prod_idx(&tx_chain->bd_chain); 688 if ((frags->cnt + num_parsing_bds + 1) > lm_bd_chain_avail_bds(&tx_chain->bd_chain)) 701 start_bd = (struct eth_tx_start_bd *)lm_bd_chain_produce_bd(&tx_chain->bd_chain); 778 parse_bd_ptr = lm_bd_chain_produce_bd(&tx_chain->bd_chain); 797 parse_bd_2nd_ptr = lm_bd_chain_produce_bd(&tx_chain->bd_chain); 842 prod_bd = (struct eth_tx_bd *)lm_bd_chain_produce_bd(&tx_chain->bd_chain); 992 packet->u1.tx.next_bd_idx = lm_bd_chain_prod_idx(&tx_chain->bd_chain); [all...] |
H A D | lm_sp.c | 54 #include "bd_chain.h" 172 if ( eq_chain->hw_con_idx_ptr && (mm_le16_to_cpu(*eq_chain->hw_con_idx_ptr) != lm_bd_chain_cons_idx(&eq_chain->bd_chain))) 280 rx->cqe_page_base.lo = mm_cpu_to_le32(lm_bd_chain_phys_addr(&pdev->rx_info.rcq_chain[cid].bd_chain, 0).as_u32.low); 281 rx->cqe_page_base.hi = mm_cpu_to_le32(lm_bd_chain_phys_addr(&pdev->rx_info.rcq_chain[cid].bd_chain, 0).as_u32.high); 423 tx->tx_bd_page_base.hi = mm_cpu_to_le32(lm_bd_chain_phys_addr(&pdev->tx_info.chain[cid].bd_chain, 0).as_u32.high); 424 tx->tx_bd_page_base.lo = mm_cpu_to_le32(lm_bd_chain_phys_addr(&pdev->tx_info.chain[cid].bd_chain, 0).as_u32.low); 760 lm_bd_chain_bds_produced(&rcq_chain->bd_chain, ETH_MIN_RX_CQES_WITH_TPA_E1H_E2); 3343 if((cq_new_idx & lm_bd_chain_usable_bds_per_page(&eq_chain->bd_chain)) 3344 == lm_bd_chain_usable_bds_per_page(&eq_chain->bd_chain)) 3346 cq_new_idx+=lm_bd_chain_bds_skip_eop(&eq_chain->bd_chain); [all...] |
H A D | lm_hw_init_reset.c | 39 #include "bd_chain.h" 4030 eq_data.base_addr.hi = lm_bd_chain_phys_addr(&pdev->eq_info.eq_chain.bd_chain, 0).as_u32.high; 4031 eq_data.base_addr.lo = lm_bd_chain_phys_addr(&pdev->eq_info.eq_chain.bd_chain, 0).as_u32.low; 4032 eq_data.producer = lm_bd_chain_prod_idx(&pdev->eq_info.eq_chain.bd_chain); 4060 DbgBreakIf(lm_bd_chain_phys_addr(&pdev->eq_info.eq_chain.bd_chain, 0).as_u64 == 0); 4061 LM_INTMEM_WRITE32(pdev,USTORM_MEM_WORKAROUND_ADDRESS_OFFSET(func),lm_bd_chain_phys_addr(&pdev->eq_info.eq_chain.bd_chain, 0).as_u32.low, BAR_USTRORM_INTMEM); /* need to check */ 4062 LM_INTMEM_WRITE32(pdev,USTORM_MEM_WORKAROUND_ADDRESS_OFFSET(func)+4,lm_bd_chain_phys_addr(&pdev->eq_info.eq_chain.bd_chain, 0).as_u32.high, BAR_USTRORM_INTMEM); /* need to check */
|
/illumos-gate/usr/src/uts/common/io/bnxe/577xx/drivers/common/lm/l5/ |
H A D | lm_l5.c | 5 #include "bd_chain.h" 185 eq_chain->bd_chain.bd_chain_virt = mm_alloc_phys_mem(pdev, 187 &eq_chain->bd_chain.bd_chain_phy, 191 if (ERR_IF(!eq_chain->bd_chain.bd_chain_virt)) 197 eq_addr_save->bd_chain_virt = eq_chain->bd_chain.bd_chain_virt ; 198 eq_addr_save->bd_chain_phy.as_u64 = eq_chain->bd_chain.bd_chain_phy.as_u64; 206 eq_chain->bd_chain.bd_chain_virt = eq_addr_save->bd_chain_virt; 207 eq_chain->bd_chain.bd_chain_phy.as_u64 = eq_addr_save->bd_chain_phy.as_u64; 209 mm_memset(eq_chain->bd_chain.bd_chain_virt, 0, mem_size); 211 eq_chain->bd_chain 225 lm_bd_chain_t * bd_chain; local 340 lm_bd_chain_t * bd_chain; local [all...] |
/illumos-gate/usr/src/uts/common/io/bnxe/577xx/drivers/common/lm/l4/ |
H A D | lm_l4tx.c | 3 #include "bd_chain.h" 107 tx_chain = &tx_con->bd_chain; 296 *scq->hw_con_idx_ptr != lm_bd_chain_cons_idx(&scq->bd_chain) ) 469 cq_old_idx = lm_bd_chain_cons_idx(&scq->bd_chain); 497 cqe = lm_toe_bd_chain_consume_bd(&scq->bd_chain); 530 cq_old_idx = lm_bd_chain_cons_idx(&scq->bd_chain); 538 lm_toe_bd_chain_bds_produced(&scq->bd_chain, num_to_reproduce); 544 lm_bd_chain_prod_idx(&scq->bd_chain), BAR_CSTRORM_INTMEM); 616 old_prod = lm_bd_chain_prod_idx(&(tcp_con->bd_chain)); 619 tx_bd = (struct toe_tx_bd *)lm_toe_bd_chain_produce_bd(&(tcp_con->bd_chain)); [all...] |
H A D | lm_l4sp.c | 7 #include "bd_chain.h" 195 lm_bd_chain_t *bd_chain; local 211 bd_chain = &toe_info->scqs[i].bd_chain; 213 bd_chain->bd_chain_virt = mm_alloc_phys_mem(pdev, mem_size, &bd_chain->bd_chain_phy, 0, mm_cli_idx); 214 if (!bd_chain->bd_chain_virt) { 218 mm_memset(bd_chain->bd_chain_virt, 0, mem_size); 224 bd_chain = &toe_info->rcqs[i].bd_chain; 337 lm_bd_chain_t * bd_chain; local 514 lm_bd_chain_t *bd_chain; local [all...] |
H A D | lm_l4rx.c | 3 #include "bd_chain.h" 364 lm_bd_chain_bds_consumed(&con->bd_chain, tcp_buf->bd_used); 526 *rcq->hw_con_idx_ptr != lm_bd_chain_cons_idx(&rcq->bd_chain) ) 1050 lm_bd_chain_bds_consumed(&pdev->toe_info.grqs[sb_idx].bd_chain, 1); 1443 cq_old_idx = lm_bd_chain_cons_idx(&rcq->bd_chain); 1487 cqe = lm_toe_bd_chain_consume_bd(&rcq->bd_chain); 1499 cq_old_idx = lm_bd_chain_cons_idx(&rcq->bd_chain); 1523 cq_old_idx = lm_bd_chain_cons_idx(&rcq->bd_chain); 1584 cq_old_idx = lm_bd_chain_cons_idx(&rcq->bd_chain); 1589 lm_toe_bd_chain_bds_produced(&rcq->bd_chain, num_to_reproduc 2129 lm_bd_chain_t *bd_chain = &tcp->rx_con->bd_chain; local [all...] |
H A D | lm_l4fp.c | 4 #include "bd_chain.h" 33 lm_bd_chain_bds_consumed(&con->bd_chain, con->dpc_info.dpc_bd_used);
|
/illumos-gate/usr/src/uts/common/io/bnxe/577xx/drivers/common/lm/l4/include/ |
H A D | lm_l4st.h | 428 lm_bd_chain_t bd_chain; member in struct:_lm_tcp_con_t 699 lm_bd_chain_t bd_chain; member in struct:_lm_tcp_grq_t 735 lm_bd_chain_t bd_chain; member in struct:_lm_tcp_rcq_t 769 lm_bd_chain_t bd_chain; member in struct:_lm_tcp_scq_t
|
/illumos-gate/usr/src/uts/common/io/bnxe/ |
H A D | bnxe_tx.c | 185 if (pTxPkt->frag_list.cnt + 2 > pLmTxChain->bd_chain.bd_left) 272 (pLmTxChain->bd_chain.bd_left >= BNXE_MAX_DMA_FRAGS_PER_PKT)) 935 if (pLmTxChain->bd_chain.bd_left < BNXE_MAX_DMA_FRAGS_PER_PKT + 2) 960 (pLmTxChain->bd_chain.bd_left >= pTxPkt->frag_list.cnt + 2)) 993 pLmTxChain->bd_chain.bd_left, pTxPkt->frag_list.cnt); 1009 if ((pLmTxChain->bd_chain.bd_left >= BNXE_MAX_DMA_FRAGS_PER_PKT) &&
|
H A D | bnxe_kstat.c | 1600 pStats->rcqBdTotal.value.ui64 = pRcq->bd_chain.capacity; 1601 pStats->rcqBdLeft.value.ui64 = pRcq->bd_chain.bd_left; 1602 pStats->rcqBdPageCnt.value.ui64 = pRcq->bd_chain.page_cnt; 1603 pStats->rcqBdsPerPage.value.ui64 = pRcq->bd_chain.bds_per_page; 1604 pStats->rcqBdSize.value.ui64 = pRcq->bd_chain.bd_size; 1605 pStats->rcqBdsSkipEop.value.ui64 = pRcq->bd_chain.bds_skip_eop; 1606 pStats->rcqBdProdIdx.value.ui64 = pRcq->bd_chain.prod_idx; 1607 pStats->rcqBdConsIdx.value.ui64 = pRcq->bd_chain.cons_idx; 1648 pStats->txBdTotal.value.ui64 = LM_TXQ(pLM, idx).bd_chain.capacity; 1649 pStats->txBdLeft.value.ui64 = LM_TXQ(pLM, idx).bd_chain [all...] |
H A D | bnxe_rx.c | 92 if (lm_bd_chain_avail_bds(&pLmRxChain->bd_chain) < 32)
|
/illumos-gate/usr/src/uts/common/io/bnxe/577xx/drivers/common/lm/vf/channel_vf/ |
H A D | lm_vf.c | 4 #include "bd_chain.h" 1895 mess->rxq.rcq_addr = lm_bd_chain_phys_addr(&(LM_RCQ(pdev,vf_qid).bd_chain), 0).as_u64; 1896 mess->rxq.rcq_np_addr = lm_bd_chain_phys_addr(&(LM_RCQ(pdev,vf_qid).bd_chain), 1).as_u64; 1927 mess->txq.txq_addr = lm_bd_chain_phys_addr(&(LM_TXQ(pdev,vf_qid).bd_chain), 0).as_u64; 1946 mess->rxq.rcq_addr = lm_bd_chain_phys_addr(&(LM_RCQ(pdev,vf_qid).bd_chain), 0).as_u64; 1947 mess->rxq.rcq_np_addr = lm_bd_chain_phys_addr(&(LM_RCQ(pdev,vf_qid).bd_chain), 1).as_u64; 1987 mess->txq.txq_addr = lm_bd_chain_phys_addr(&(LM_TXQ(pdev,vf_qid).bd_chain), 0).as_u64;
|
/illumos-gate/usr/src/uts/common/io/bnxe/577xx/drivers/common/lm/include/ |
H A D | lm5710.h | 2357 lm_bd_chain_t bd_chain; member in struct:_lm_tx_chain_t 2440 lm_bd_chain_t bd_chain; // The RSC BD chain. member in struct:_lm_tpa_sge_chain_t 2442 #define LM_TPA_CHAIN_BD(_pdev, _idx) ((_pdev)->rx_info.rxq_chain[_idx].tpa_chain.sge_chain.bd_chain) 2579 lm_bd_chain_t bd_chain; member in struct:_lm_eq_chain_t 2592 lm_bd_chain_t bd_chain; member in struct:_lm_rcq_chain_t
|