Lines Matching refs:l1c
156 atge_l1c_data_t *l1c; in atge_l1c_alloc_dma() local
160 l1c = kmem_zalloc(sizeof (atge_l1c_data_t), KM_SLEEP); in atge_l1c_alloc_dma()
161 atgep->atge_private_data = l1c; in atge_l1c_alloc_dma()
196 l1c->atge_rx_ring = kmem_alloc(sizeof (atge_ring_t), KM_SLEEP); in atge_l1c_alloc_dma()
197 l1c->atge_rx_ring->r_atge = atgep; in atge_l1c_alloc_dma()
198 l1c->atge_rx_ring->r_desc_ring = NULL; in atge_l1c_alloc_dma()
206 l1c->atge_rx_ring->r_desc_ring = dma; in atge_l1c_alloc_dma()
211 err = atge_alloc_buffers(l1c->atge_rx_ring, L1C_RX_RING_CNT, in atge_l1c_alloc_dma()
227 l1c->atge_l1c_cmb = dma; in atge_l1c_alloc_dma()
241 l1c->atge_l1c_rr = dma; in atge_l1c_alloc_dma()
256 l1c->atge_l1c_smb = dma; in atge_l1c_alloc_dma()
270 atge_l1c_data_t *l1c; in atge_l1c_free_dma() local
272 l1c = atgep->atge_private_data; in atge_l1c_free_dma()
288 if (l1c && l1c->atge_l1c_cmb != NULL) { in atge_l1c_free_dma()
289 atge_free_a_dma_blk(l1c->atge_l1c_cmb); in atge_l1c_free_dma()
290 l1c->atge_l1c_cmb = NULL; in atge_l1c_free_dma()
293 if (l1c && l1c->atge_l1c_rr != NULL) { in atge_l1c_free_dma()
294 atge_free_a_dma_blk(l1c->atge_l1c_rr); in atge_l1c_free_dma()
295 l1c->atge_l1c_rr = NULL; in atge_l1c_free_dma()
298 if (l1c && l1c->atge_l1c_smb != NULL) { in atge_l1c_free_dma()
299 atge_free_a_dma_blk(l1c->atge_l1c_smb); in atge_l1c_free_dma()
300 l1c->atge_l1c_smb = NULL; in atge_l1c_free_dma()
306 if (l1c && l1c->atge_rx_ring != NULL) { in atge_l1c_free_dma()
307 atge_free_buffers(l1c->atge_rx_ring, L1C_RX_RING_CNT); in atge_l1c_free_dma()
309 if (l1c->atge_rx_ring->r_desc_ring != NULL) { in atge_l1c_free_dma()
310 atge_free_a_dma_blk(l1c->atge_rx_ring->r_desc_ring); in atge_l1c_free_dma()
313 kmem_free(l1c->atge_rx_ring, sizeof (atge_ring_t)); in atge_l1c_free_dma()
314 l1c->atge_rx_ring = NULL; in atge_l1c_free_dma()
328 if (l1c != NULL) { in atge_l1c_free_dma()
329 kmem_free(l1c, sizeof (atge_l1c_data_t)); in atge_l1c_free_dma()
337 atge_l1c_data_t *l1c; in atge_l1c_init_rx_ring() local
342 l1c = atgep->atge_private_data; in atge_l1c_init_rx_ring()
343 l1c->atge_rx_ring->r_consumer = L1C_RX_RING_CNT - 1; in atge_l1c_init_rx_ring()
344 dma = l1c->atge_rx_ring->r_desc_ring; in atge_l1c_init_rx_ring()
352 l1c->atge_rx_ring->r_buf_tbl[i]->cookie.dmac_laddress); in atge_l1c_init_rx_ring()
358 OUTL(atgep, ATGE_MBOX_RD0_PROD_IDX, l1c->atge_rx_ring->r_consumer); in atge_l1c_init_rx_ring()
375 atge_l1c_data_t *l1c; in atge_l1c_init_rr_ring() local
378 l1c = atgep->atge_private_data; in atge_l1c_init_rr_ring()
379 l1c->atge_l1c_rr_consumers = 0; in atge_l1c_init_rr_ring()
381 dma = l1c->atge_l1c_rr; in atge_l1c_init_rr_ring()
389 atge_l1c_data_t *l1c; in atge_l1c_init_smb() local
392 l1c = atgep->atge_private_data; in atge_l1c_init_smb()
393 dma = l1c->atge_l1c_smb; in atge_l1c_init_smb()
401 atge_l1c_data_t *l1c; in atge_l1c_init_cmb() local
404 l1c = atgep->atge_private_data; in atge_l1c_init_cmb()
405 dma = l1c->atge_l1c_cmb; in atge_l1c_init_cmb()
413 atge_l1c_data_t *l1c; in atge_l1c_program_dma() local
417 l1c = atgep->atge_private_data; in atge_l1c_program_dma()
436 r = l1c->atge_rx_ring; in atge_l1c_program_dma()
461 ATGE_ADDR_LO(l1c->atge_l1c_rr->cookie.dmac_laddress)); in atge_l1c_program_dma()
469 ATGE_ADDR_LO(l1c->atge_l1c_cmb->cookie.dmac_laddress)); in atge_l1c_program_dma()
473 ATGE_ADDR_HI(l1c->atge_l1c_smb->cookie.dmac_laddress)); in atge_l1c_program_dma()
475 ATGE_ADDR_LO(l1c->atge_l1c_smb->cookie.dmac_laddress)); in atge_l1c_program_dma()
559 atge_l1c_data_t *l1c; in atge_l1c_gather_stats() local
566 l1c = atgep->atge_private_data; in atge_l1c_gather_stats()
567 dma = l1c->atge_l1c_smb; in atge_l1c_gather_stats()
737 atge_l1c_data_t *l1c; in atge_l1c_rx() local
746 l1c = atgep->atge_private_data; in atge_l1c_rx()
747 ASSERT(l1c != NULL); in atge_l1c_rx()
749 DMA_SYNC(l1c->atge_l1c_rr, 0, 0, DDI_DMA_SYNC_FORKERNEL); in atge_l1c_rx()
751 rx_rr = (l1c_rx_rdesc_t *)(l1c->atge_l1c_rr->addr + in atge_l1c_rx()
752 (l1c->atge_l1c_rr_consumers * sizeof (l1c_rx_rdesc_t))); in atge_l1c_rx()
754 rdinfo = ATGE_GET32(l1c->atge_l1c_rr, &rx_rr->rdinfo); in atge_l1c_rx()
755 status = ATGE_GET32(l1c->atge_l1c_rr, &rx_rr->status); in atge_l1c_rx()
775 l1c->atge_rx_ring->r_consumer += nsegs; in atge_l1c_rx()
776 l1c->atge_rx_ring->r_consumer %= L1C_RX_RING_CNT; in atge_l1c_rx()
818 buf = l1c->atge_rx_ring->r_buf_tbl[rx_cons]; in atge_l1c_rx()
841 l1c->atge_rx_ring->r_consumer += nsegs; in atge_l1c_rx()
842 l1c->atge_rx_ring->r_consumer %= L1C_RX_RING_CNT; in atge_l1c_rx()
844 l1c->atge_rx_ring->r_consumer = rx_cons; in atge_l1c_rx()
852 ATGE_INC_SLOT(l1c->atge_l1c_rr_consumers, L1C_RR_RING_CNT); in atge_l1c_rx()
857 DMA_SYNC(l1c->atge_rx_ring->r_desc_ring, 0, 0, in atge_l1c_rx()
860 DMA_SYNC(l1c->atge_l1c_rr, 0, 0, DDI_DMA_SYNC_FORDEV); in atge_l1c_rx()
865 l1c->atge_rx_ring->r_consumer); in atge_l1c_rx()
869 atgep->atge_name, __func__, l1c->atge_rx_ring->r_consumer, in atge_l1c_rx()
870 rx_cons, l1c->atge_l1c_rr_consumers)); in atge_l1c_rx()
927 atge_l1c_data_t *l1c; in atge_l1c_interrupt() local
929 l1c = atgep->atge_private_data; in atge_l1c_interrupt()
934 atgep->atge_name, __func__, l1c->atge_l1c_intr_status, in atge_l1c_interrupt()
935 l1c->atge_l1c_rx_prod_cons, l1c->atge_l1c_tx_prod_cons, in atge_l1c_interrupt()
936 l1c->atge_l1c_rr_consumers)); in atge_l1c_interrupt()