Home | History | Annotate | Download | only in netboot

Lines Matching refs:lp

465 static struct depca_private	lp;
480 lp.rx_cur = lp.tx_cur = 0;
482 for (i = 0; i <= lp.rxRingMask; i++) {
483 writel((p = lp.dma_buffs + i * RX_BUFF_SZ) | R_OWN, &lp.rx_ring[i].base);
484 writew(-RX_BUFF_SZ, &lp.rx_ring[i].buf_length);
485 lp.rx_memcpy[i] = (char *) (p + lp.bus_offset);
487 for (i = 0; i <= lp.txRingMask; i++) {
488 writel((p = lp.dma_buffs + (i + lp.txRingMask + 1) * TX_BUFF_SZ) & 0x00ffffff, &lp.tx_ring[i].base);
489 lp.tx_memcpy[i] = (char *) (p + lp.bus_offset);
493 lp.init_block.rx_ring = ((u32) ((u32) lp.rx_ring) & LA_MASK) | lp.rx_rlen;
494 lp.init_block.tx_ring = ((u32) ((u32) lp.tx_ring) & LA_MASK) | lp.tx_rlen;
496 lp.init_block.phys_addr[i] = nic->node_addr[i];
497 lp.init_block.mode = 0x0000; /* Enable the Tx and Rx */
498 memset(lp.init_block.mcast_table, 0, sizeof(lp.init_block.mcast_table));
504 outw((u16) (lp.sh_mem & LA_MASK), DEPCA_DATA);
506 outw((u16) ((lp.sh_mem & LA_MASK) >> 16), DEPCA_DATA);
517 memcpy_toio((char *)lp.sh_mem, &lp.init_block, sizeof(struct depca_init));
552 lp.sh_mem = mem_start;
556 lp.rx_ring = (struct depca_rx_desc *) mem_start;
558 lp.tx_ring = (struct depca_tx_desc *) mem_start;
561 lp.bus_offset = mem_start & 0x00ff0000;
563 lp.dma_buffs = mem_start & LA_MASK;
566 lp.rxRingMask = NUM_RX_DESC - 1;
567 lp.txRingMask = NUM_TX_DESC - 1;
570 for (i = 0, j = lp.rxRingMask; j > 0; i++) {
573 lp.rx_rlen = (s32) (i << 29);
574 for (i = 0, j = lp.txRingMask; j > 0; i++) {
577 lp.tx_rlen = (s32) (i << 29);
593 entry = lp.rx_cur;
594 if ((status = readl(&lp.rx_ring[entry].base) & R_OWN))
596 memcpy(nic->packet, lp.rx_memcpy[entry], nic->packetlen = lp.rx_ring[entry].msg_length);
597 lp.rx_ring[entry].base |= R_OWN;
598 lp.rx_cur = (++lp.rx_cur) & lp.rxRingMask;
621 mem = lp.tx_memcpy[entry = lp.tx_cur];
630 writel(readl(&lp.tx_ring[entry].base) & ~T_FLAGS, &lp.tx_ring[entry].base);
632 writew(0x0000, &lp.tx_ring[entry].misc);
634 writew(-len, &lp.tx_ring[entry].length);
636 writel(readl(&lp.tx_ring[entry].base) | (T_STP|T_ENP|T_OWN), &lp.tx_ring[entry].base);
638 lp.tx_cur = (++lp.tx_cur) & lp.txRingMask;