Lines Matching refs:l1e
109 atge_l1e_data_t *l1e; in atge_rx_desc_free() local
113 l1e = (atge_l1e_data_t *)atgep->atge_private_data; in atge_rx_desc_free()
114 if (l1e == NULL) in atge_rx_desc_free()
117 if (l1e->atge_l1e_rx_page == NULL) in atge_rx_desc_free()
121 dma = l1e->atge_l1e_rx_page[pages]; in atge_rx_desc_free()
130 kmem_free(l1e->atge_l1e_rx_page, L1E_RX_PAGES * sizeof (atge_dma_t *)); in atge_rx_desc_free()
131 l1e->atge_l1e_rx_page = NULL; in atge_rx_desc_free()
138 atge_l1e_data_t *l1e; in atge_l1e_alloc_dma() local
143 l1e = kmem_zalloc(sizeof (atge_l1e_data_t), KM_SLEEP); in atge_l1e_alloc_dma()
144 atgep->atge_private_data = l1e; in atge_l1e_alloc_dma()
185 l1e->atge_l1e_pagesize = ROUNDUP(guard_size + L1E_RX_PAGE_SZ, in atge_l1e_alloc_dma()
187 l1e->atge_l1e_rx_page = in atge_l1e_alloc_dma()
191 atgep->atge_name, __func__, l1e->atge_l1e_pagesize, in atge_l1e_alloc_dma()
197 l1e->atge_l1e_pagesize, DDI_DMA_READ); in atge_l1e_alloc_dma()
204 l1e->atge_l1e_rx_page[pages] = dma; in atge_l1e_alloc_dma()
227 l1e->atge_l1e_rx_cmb = dma; in atge_l1e_alloc_dma()
243 atge_l1e_data_t *l1e; in atge_l1e_free_dma() local
259 l1e = atgep->atge_private_data; in atge_l1e_free_dma()
260 if (l1e == NULL) in atge_l1e_free_dma()
266 if (l1e->atge_l1e_rx_cmb != NULL) { in atge_l1e_free_dma()
267 atge_free_a_dma_blk(l1e->atge_l1e_rx_cmb); in atge_l1e_free_dma()
268 l1e->atge_l1e_rx_cmb = NULL; in atge_l1e_free_dma()
288 atge_l1e_data_t *l1e; in atge_l1e_init_rx_pages() local
293 l1e = atgep->atge_private_data; in atge_l1e_init_rx_pages()
295 ASSERT(l1e != NULL); in atge_l1e_init_rx_pages()
297 l1e->atge_l1e_proc_max = L1E_RX_PAGE_SZ / ETHERMIN; in atge_l1e_init_rx_pages()
298 l1e->atge_l1e_rx_curp = 0; in atge_l1e_init_rx_pages()
299 l1e->atge_l1e_rx_seqno = 0; in atge_l1e_init_rx_pages()
302 l1e->atge_l1e_rx_page_cons = 0; in atge_l1e_init_rx_pages()
303 l1e->atge_l1e_rx_page_prods[pages] = 0; in atge_l1e_init_rx_pages()
306 dma = l1e->atge_l1e_rx_page[pages]; in atge_l1e_init_rx_pages()
308 bzero(dma->addr, l1e->atge_l1e_pagesize); in atge_l1e_init_rx_pages()
309 DMA_SYNC(dma, 0, l1e->atge_l1e_pagesize, DDI_DMA_SYNC_FORDEV); in atge_l1e_init_rx_pages()
312 dma = l1e->atge_l1e_rx_cmb; in atge_l1e_init_rx_pages()
338 atge_l1e_data_t *l1e; in atge_l1e_program_dma() local
342 l1e = (atge_l1e_data_t *)atgep->atge_private_data; in atge_l1e_program_dma()
362 paddr = l1e->atge_l1e_rx_page[0]->cookie.dmac_laddress; in atge_l1e_program_dma()
364 paddr = l1e->atge_l1e_rx_page[1]->cookie.dmac_laddress; in atge_l1e_program_dma()
368 paddr = l1e->atge_l1e_rx_cmb->cookie.dmac_laddress; in atge_l1e_program_dma()
370 paddr = l1e->atge_l1e_rx_cmb->cookie.dmac_laddress + sizeof (uint32_t); in atge_l1e_program_dma()
421 atge_l1e_data_t *l1e; in atge_l1e_receive() local
433 l1e = atgep->atge_private_data; in atge_l1e_receive()
436 ASSERT(l1e != NULL); in atge_l1e_receive()
441 current_page = l1e->atge_l1e_rx_curp; in atge_l1e_receive()
444 dma_rx_cmb = l1e->atge_l1e_rx_cmb; in atge_l1e_receive()
448 dma_rx_page = l1e->atge_l1e_rx_page[current_page]; in atge_l1e_receive()
455 l1e->atge_l1e_rx_page_prods[current_page] = in atge_l1e_receive()
459 DMA_SYNC(dma_rx_page, l1e->atge_l1e_rx_page_cons, in atge_l1e_receive()
460 l1e->atge_l1e_rx_page_prods[current_page], DDI_DMA_SYNC_FORKERNEL); in atge_l1e_receive()
465 l1e->atge_l1e_rx_page_prods[current_page], in atge_l1e_receive()
466 l1e->atge_l1e_rx_page_cons, l1e->atge_l1e_rx_curp, gen, in atge_l1e_receive()
469 for (prog = 0; prog <= l1e->atge_l1e_proc_max; prog++) { in atge_l1e_receive()
470 cons = l1e->atge_l1e_rx_page_cons; in atge_l1e_receive()
471 if (cons >= l1e->atge_l1e_rx_page_prods[l1e->atge_l1e_rx_curp]) in atge_l1e_receive()
474 dma_rx_page = l1e->atge_l1e_rx_page[l1e->atge_l1e_rx_curp]; in atge_l1e_receive()
487 if (seqno != l1e->atge_l1e_rx_seqno) { in atge_l1e_receive()
495 l1e->atge_l1e_rx_seqno, len, flags)); in atge_l1e_receive()
507 l1e->atge_l1e_rx_seqno++; in atge_l1e_receive()
571 l1e->atge_l1e_rx_seqno, len, flags, in atge_l1e_receive()
572 l1e->atge_l1e_rx_page_cons, in atge_l1e_receive()
573 l1e->atge_l1e_rx_page_prods[l1e->atge_l1e_rx_curp])); in atge_l1e_receive()
579 l1e->atge_l1e_rx_page_cons, in atge_l1e_receive()
580 l1e->atge_l1e_rx_page_prods[l1e->atge_l1e_rx_curp], in atge_l1e_receive()
590 atge_l1e_data_t *l1e = atgep->atge_private_data; in atge_l1e_rx_next_pkt() local
593 int curr = l1e->atge_l1e_rx_curp; in atge_l1e_rx_next_pkt()
599 l1e->atge_l1e_rx_page_cons += in atge_l1e_rx_next_pkt()
606 if (l1e->atge_l1e_rx_page_cons >= L1E_RX_PAGE_SZ) { in atge_l1e_rx_next_pkt()
608 atgep->atge_name, __func__, l1e->atge_l1e_rx_page_cons, in atge_l1e_rx_next_pkt()
609 l1e->atge_l1e_rx_page_prods[curr], L1E_RX_PAGE_SZ)); in atge_l1e_rx_next_pkt()
614 dma_rx_cmb = l1e->atge_l1e_rx_cmb; in atge_l1e_rx_next_pkt()
629 l1e->atge_l1e_rx_page_cons = 0; in atge_l1e_rx_next_pkt()
630 l1e->atge_l1e_rx_page_prods[curr] = 0; in atge_l1e_rx_next_pkt()
636 l1e->atge_l1e_rx_curp = curr; in atge_l1e_rx_next_pkt()
644 l1e->atge_l1e_rx_page_prods[curr] = in atge_l1e_rx_next_pkt()
647 dma_rx_page = l1e->atge_l1e_rx_page[curr]; in atge_l1e_rx_next_pkt()
648 DMA_SYNC(dma_rx_page, 0, l1e->atge_l1e_rx_page_prods[curr], in atge_l1e_rx_next_pkt()