taglinefilesource code
adapter337drivers/net/3c505.celp_device *adapter = dev->priv;
adapter363drivers/net/3c505.cif (!start_receive(dev, &adapter->tx_pcb))
adapter369drivers/net/3c505.celp_device *adapter = dev->priv;
adapter370drivers/net/3c505.cif (adapter->dmaing && (jiffies > (adapter->current_dma.start_time + 10))) {
adapter372drivers/net/3c505.cprintk("%s: DMA %s timed out, %d bytes left\n", dev->name, adapter->current_dma.direction ? "download" : "upload", get_dma_residue(dev->dma));
adapter375drivers/net/3c505.cadapter->dmaing = 0;
adapter376drivers/net/3c505.cadapter->busy = 0;
adapter378drivers/net/3c505.cif (adapter->rx_active)
adapter379drivers/net/3c505.cadapter->rx_active--;
adapter416drivers/net/3c505.celp_device *adapter = dev->priv;
adapter417drivers/net/3c505.cwhile (adapter->rx_active < ELP_RX_PCBS && dev->start) {
adapter418drivers/net/3c505.cif (!start_receive(dev, &adapter->itx_pcb))
adapter451drivers/net/3c505.celp_device *adapter = dev->priv;
adapter455drivers/net/3c505.cif (adapter->dmaing && adapter->current_dma.direction == 0)
adapter459drivers/net/3c505.cif (set_bit(1, &adapter->send_pcb_semaphore)) {
adapter494drivers/net/3c505.cadapter->send_pcb_semaphore = 0;
adapter511drivers/net/3c505.cadapter->send_pcb_semaphore = 0;
adapter536drivers/net/3c505.celp_device *adapter = dev->priv;
adapter591drivers/net/3c505.cif (set_bit(0, (void *) &adapter->busy)) {
adapter592drivers/net/3c505.cif (backlog_next(adapter->rx_backlog.in) == adapter->rx_backlog.out) {
adapter616drivers/net/3c505.celp_device *adapter = dev->priv;
adapter628drivers/net/3c505.cadapter->rx_active++;
adapter644drivers/net/3c505.celp_device *adapter = dev->priv;
adapter651drivers/net/3c505.cadapter->current_dma.copy_flag = 0;
adapter655drivers/net/3c505.ctarget = virt_to_bus(adapter->dma_buffer);
adapter660drivers/net/3c505.ctarget = virt_to_bus(adapter->dma_buffer);
adapter661drivers/net/3c505.cadapter->current_dma.copy_flag = 1;
adapter665drivers/net/3c505.cif (set_bit(0, (void *) &adapter->dmaing))
adapter666drivers/net/3c505.cprintk("%s: rx blocked, DMA in progress, dir %d\n", dev->name, adapter->current_dma.direction);
adapter668drivers/net/3c505.cadapter->current_dma.direction = 0;
adapter669drivers/net/3c505.cadapter->current_dma.length = rlen;
adapter670drivers/net/3c505.cadapter->current_dma.skb = skb;
adapter671drivers/net/3c505.cadapter->current_dma.start_time = jiffies;
adapter685drivers/net/3c505.cif (adapter->rx_active)
adapter686drivers/net/3c505.cadapter->rx_active--;
adapter688drivers/net/3c505.cif (!adapter->busy)
adapter704drivers/net/3c505.celp_device *adapter;
adapter717drivers/net/3c505.cadapter = (elp_device *) dev->priv;
adapter730drivers/net/3c505.cif (!adapter->dmaing) {
adapter734drivers/net/3c505.cprintk("%s: %s DMA complete, status %02x\n", dev->name, adapter->current_dma.direction ? "tx" : "rx", inb_status(dev->base_addr));
adapter738drivers/net/3c505.cif (adapter->current_dma.direction) {
adapter739drivers/net/3c505.cdev_kfree_skb(adapter->current_dma.skb, FREE_WRITE);
adapter741drivers/net/3c505.cstruct sk_buff *skb = adapter->current_dma.skb;
adapter744drivers/net/3c505.cif (adapter->current_dma.copy_flag) {
adapter745drivers/net/3c505.cmemcpy(skb_put(skb, adapter->current_dma.length), adapter->dma_buffer, adapter->current_dma.length);
adapter751drivers/net/3c505.cadapter->dmaing = 0;
adapter752drivers/net/3c505.cif (adapter->rx_backlog.in != adapter->rx_backlog.out) {
adapter753drivers/net/3c505.cint t = adapter->rx_backlog.length[adapter->rx_backlog.out];
adapter754drivers/net/3c505.cadapter->rx_backlog.out = backlog_next(adapter->rx_backlog.out);
adapter759drivers/net/3c505.cadapter->busy = 0;
adapter773drivers/net/3c505.cif (receive_pcb(dev, &adapter->irx_pcb)) {
adapter774drivers/net/3c505.cswitch (adapter->irx_pcb.command) {
adapter786drivers/net/3c505.clen = adapter->irx_pcb.data.rcv_resp.pkt_len;
adapter787drivers/net/3c505.cdlen = adapter->irx_pcb.data.rcv_resp.buf_len;
adapter788drivers/net/3c505.cif (adapter->irx_pcb.data.rcv_resp.timeout != 0) {
adapter797drivers/net/3c505.cif (adapter->irx_pcb.command == 0xff) {
adapter800drivers/net/3c505.cadapter->rx_backlog.length[adapter->rx_backlog.in] = dlen;
adapter801drivers/net/3c505.cadapter->rx_backlog.in = backlog_next(adapter->rx_backlog.in);
adapter815drivers/net/3c505.cadapter->got[CMD_CONFIGURE_82586] = 1;
adapter824drivers/net/3c505.cadapter->got[CMD_CONFIGURE_ADAPTER_MEMORY] = 1;
adapter827drivers/net/3c505.cadapter->irx_pcb.data.failed ? "failed" : "succeeded");
adapter834drivers/net/3c505.cadapter->got[CMD_LOAD_MULTICAST_LIST] = 1;
adapter837drivers/net/3c505.cadapter->irx_pcb.data.failed ? "failed" : "succeeded");
adapter844drivers/net/3c505.cadapter->got[CMD_SET_STATION_ADDRESS] = 1;
adapter847drivers/net/3c505.cadapter->irx_pcb.data.failed ? "failed" : "succeeded");
adapter855drivers/net/3c505.cadapter->stats.rx_packets += adapter->irx_pcb.data.netstat.tot_recv;
adapter856drivers/net/3c505.cadapter->stats.tx_packets += adapter->irx_pcb.data.netstat.tot_xmit;
adapter857drivers/net/3c505.cadapter->stats.rx_crc_errors += adapter->irx_pcb.data.netstat.err_CRC;
adapter858drivers/net/3c505.cadapter->stats.rx_frame_errors += adapter->irx_pcb.data.netstat.err_align;
adapter859drivers/net/3c505.cadapter->stats.rx_fifo_errors += adapter->irx_pcb.data.netstat.err_ovrrun;
adapter860drivers/net/3c505.cadapter->stats.rx_over_errors += adapter->irx_pcb.data.netstat.err_res;
adapter861drivers/net/3c505.cadapter->got[CMD_NETWORK_STATISTICS] = 1;
adapter874drivers/net/3c505.cif (adapter->irx_pcb.data.xmit_resp.c_stat != 0) {
adapter877drivers/net/3c505.cdev->name, adapter->irx_pcb.data.xmit_resp.c_stat);
adapter878drivers/net/3c505.cswitch (adapter->irx_pcb.data.xmit_resp.c_stat) {
adapter880drivers/net/3c505.cadapter->stats.tx_aborted_errors++;
adapter883drivers/net/3c505.cadapter->stats.tx_fifo_errors++;
adapter895drivers/net/3c505.cprintk("%s: unknown PCB received - %2.2x\n", dev->name, adapter->irx_pcb.command);
adapter923drivers/net/3c505.celp_device *adapter;
adapter925drivers/net/3c505.cadapter = dev->priv;
adapter933drivers/net/3c505.cif (adapter == NULL) {
adapter961drivers/net/3c505.cadapter->rx_active = 0;
adapter963drivers/net/3c505.cadapter->busy = 0;
adapter964drivers/net/3c505.cadapter->send_pcb_semaphore = 0;
adapter965drivers/net/3c505.cadapter->rx_backlog.in = 0;
adapter966drivers/net/3c505.cadapter->rx_backlog.out = 0;
adapter984drivers/net/3c505.cadapter->dma_buffer = (void *) dma_mem_alloc(DMA_BUFFER_SIZE);
adapter985drivers/net/3c505.cif (!adapter->dma_buffer) {
adapter988drivers/net/3c505.cadapter->dmaing = 0;
adapter1005drivers/net/3c505.cadapter->tx_pcb.command = CMD_CONFIGURE_ADAPTER_MEMORY;
adapter1006drivers/net/3c505.cadapter->tx_pcb.data.memconf.cmd_q = 10;
adapter1007drivers/net/3c505.cadapter->tx_pcb.data.memconf.rcv_q = 20;
adapter1008drivers/net/3c505.cadapter->tx_pcb.data.memconf.mcast = 10;
adapter1009drivers/net/3c505.cadapter->tx_pcb.data.memconf.frame = 20;
adapter1010drivers/net/3c505.cadapter->tx_pcb.data.memconf.rcv_b = 20;
adapter1011drivers/net/3c505.cadapter->tx_pcb.data.memconf.progs = 0;
adapter1012drivers/net/3c505.cadapter->tx_pcb.length = sizeof(struct Memconf);
adapter1013drivers/net/3c505.cadapter->got[CMD_CONFIGURE_ADAPTER_MEMORY] = 0;
adapter1014drivers/net/3c505.cif (!send_pcb(dev, &adapter->tx_pcb))
adapter1018drivers/net/3c505.cwhile (adapter->got[CMD_CONFIGURE_ADAPTER_MEMORY] == 0 && jiffies < timeout);
adapter1029drivers/net/3c505.cadapter->tx_pcb.command = CMD_CONFIGURE_82586;
adapter1030drivers/net/3c505.cadapter->tx_pcb.data.configure = NO_LOOPBACK | RECV_BROAD;
adapter1031drivers/net/3c505.cadapter->tx_pcb.length = 2;
adapter1032drivers/net/3c505.cadapter->got[CMD_CONFIGURE_82586] = 0;
adapter1033drivers/net/3c505.cif (!send_pcb(dev, &adapter->tx_pcb))
adapter1037drivers/net/3c505.cwhile (adapter->got[CMD_CONFIGURE_82586] == 0 && jiffies < timeout);
adapter1050drivers/net/3c505.cprintk("%s: %d receive PCBs active\n", dev->name, adapter->rx_active);
adapter1066drivers/net/3c505.celp_device *adapter = dev->priv;
adapter1074drivers/net/3c505.cif (set_bit(0, (void *) &adapter->busy)) {
adapter1079drivers/net/3c505.cadapter = dev->priv;
adapter1085drivers/net/3c505.cadapter->tx_pcb.command = CMD_TRANSMIT_PACKET;
adapter1086drivers/net/3c505.cadapter->tx_pcb.length = sizeof(struct Xmit_pkt);
adapter1087drivers/net/3c505.cadapter->tx_pcb.data.xmit_pkt.buf_ofs
adapter1088drivers/net/3c505.c= adapter->tx_pcb.data.xmit_pkt.buf_seg = 0;  /* Unused */
adapter1089drivers/net/3c505.cadapter->tx_pcb.data.xmit_pkt.pkt_len = nlen;
adapter1091drivers/net/3c505.cif (!send_pcb(dev, &adapter->tx_pcb)) {
adapter1092drivers/net/3c505.cadapter->busy = 0;
adapter1096drivers/net/3c505.cif (set_bit(0, (void *) &adapter->dmaing))
adapter1097drivers/net/3c505.cprintk("%s: tx: DMA %d in progress\n", dev->name, adapter->current_dma.direction);
adapter1099drivers/net/3c505.cadapter->current_dma.direction = 1;
adapter1100drivers/net/3c505.cadapter->current_dma.start_time = jiffies;
adapter1104drivers/net/3c505.cmemcpy(adapter->dma_buffer, skb->data, nlen);
adapter1105drivers/net/3c505.ctarget = virt_to_bus(adapter->dma_buffer);
adapter1107drivers/net/3c505.cadapter->current_dma.skb = skb;
adapter1142drivers/net/3c505.celp_device *adapter = dev->priv;
adapter1155drivers/net/3c505.cadapter->stats.tx_dropped++;
adapter1206drivers/net/3c505.celp_device *adapter = (elp_device *) dev->priv;
adapter1214drivers/net/3c505.creturn &adapter->stats;
adapter1217drivers/net/3c505.cadapter->tx_pcb.command = CMD_NETWORK_STATISTICS;
adapter1218drivers/net/3c505.cadapter->tx_pcb.length = 0;
adapter1219drivers/net/3c505.cadapter->got[CMD_NETWORK_STATISTICS] = 0;
adapter1220drivers/net/3c505.cif (!send_pcb(dev, &adapter->tx_pcb))
adapter1224drivers/net/3c505.cwhile (adapter->got[CMD_NETWORK_STATISTICS] == 0 && jiffies < timeout);
adapter1227drivers/net/3c505.creturn &adapter->stats;
adapter1232drivers/net/3c505.creturn &adapter->stats;
adapter1243drivers/net/3c505.celp_device *adapter;
adapter1245drivers/net/3c505.cadapter = dev->priv;
adapter1282drivers/net/3c505.cfree_pages((unsigned long) adapter->dma_buffer, __get_order(DMA_BUFFER_SIZE));
adapter1301drivers/net/3c505.celp_device *adapter = (elp_device *) dev->priv;
adapter1311drivers/net/3c505.cadapter->tx_pcb.command = CMD_LOAD_MULTICAST_LIST;
adapter1312drivers/net/3c505.cadapter->tx_pcb.length = 6 * dev->mc_count;
adapter1314drivers/net/3c505.cmemcpy(adapter->tx_pcb.data.multicast[i], dmi->dmi_addr, 6);
adapter1317drivers/net/3c505.cadapter->got[CMD_LOAD_MULTICAST_LIST] = 0;
adapter1318drivers/net/3c505.cif (!send_pcb(dev, &adapter->tx_pcb))
adapter1322drivers/net/3c505.cwhile (adapter->got[CMD_LOAD_MULTICAST_LIST] == 0 && jiffies < timeout);
adapter1328drivers/net/3c505.cadapter->tx_pcb.data.configure = NO_LOOPBACK | RECV_BROAD | RECV_MULTI;
adapter1330drivers/net/3c505.cadapter->tx_pcb.data.configure = NO_LOOPBACK | RECV_BROAD;
adapter1332drivers/net/3c505.cadapter->tx_pcb.data.configure = NO_LOOPBACK | RECV_PROMISC;
adapter1339drivers/net/3c505.cadapter->tx_pcb.command = CMD_CONFIGURE_82586;
adapter1340drivers/net/3c505.cadapter->tx_pcb.length = 2;
adapter1341drivers/net/3c505.cadapter->got[CMD_CONFIGURE_82586] = 0;
adapter1342drivers/net/3c505.cif (!send_pcb(dev, &adapter->tx_pcb))
adapter1346drivers/net/3c505.cwhile (adapter->got[CMD_CONFIGURE_82586] == 0 && jiffies < timeout);
adapter1360drivers/net/3c505.celp_device *adapter = dev->priv;
adapter1377drivers/net/3c505.cmemset(&(adapter->stats), 0, sizeof(struct enet_statistics));
adapter1508drivers/net/3c505.celp_device *adapter;
adapter1522drivers/net/3c505.cadapter = (elp_device *) (dev->priv = kmalloc(sizeof(elp_device), GFP_KERNEL));
adapter1523drivers/net/3c505.cif (adapter == NULL) {
adapter1573drivers/net/3c505.cadapter->tx_pcb.command = CMD_STATION_ADDRESS;
adapter1574drivers/net/3c505.cadapter->tx_pcb.length = 0;
adapter1576drivers/net/3c505.cif (!send_pcb(dev, &adapter->tx_pcb)) {
adapter1581drivers/net/3c505.cif (!receive_pcb(dev, &adapter->rx_pcb)) {
adapter1586drivers/net/3c505.cif ((adapter->rx_pcb.command != CMD_ADDRESS_RESPONSE) ||
adapter1587drivers/net/3c505.c(adapter->rx_pcb.length != 6)) {
adapter1588drivers/net/3c505.cprintk("%s: first PCB wrong (%d, %d)\n", dev->name, adapter->rx_pcb.command, adapter->rx_pcb.length);
adapter1637drivers/net/3c505.cdev->dev_addr[i] = adapter->rx_pcb.data.eth_addr[i];
adapter1655drivers/net/3c505.cadapter->tx_pcb.command = CMD_ADAPTER_INFO;
adapter1656drivers/net/3c505.cadapter->tx_pcb.length = 0;
adapter1657drivers/net/3c505.cif (!send_pcb(dev, &adapter->tx_pcb) ||
adapter1658drivers/net/3c505.c!receive_pcb(dev, &adapter->rx_pcb) ||
adapter1659drivers/net/3c505.c(adapter->rx_pcb.command != CMD_ADAPTER_INFO_RESPONSE) ||
adapter1660drivers/net/3c505.c(adapter->rx_pcb.length != 10)) {
adapter1663drivers/net/3c505.cprintk("rev %d.%d, %dk\n", adapter->rx_pcb.data.info.major_vers, adapter->rx_pcb.data.info.minor_vers, adapter->rx_pcb.data.info.RAM_sz);
adapter1668drivers/net/3c505.cadapter->tx_pcb.command = CMD_CONFIGURE_ADAPTER_MEMORY;
adapter1669drivers/net/3c505.cadapter->tx_pcb.length = 12;
adapter1670drivers/net/3c505.cadapter->tx_pcb.data.memconf.cmd_q = 8;
adapter1671drivers/net/3c505.cadapter->tx_pcb.data.memconf.rcv_q = 8;
adapter1672drivers/net/3c505.cadapter->tx_pcb.data.memconf.mcast = 10;
adapter1673drivers/net/3c505.cadapter->tx_pcb.data.memconf.frame = 10;
adapter1674drivers/net/3c505.cadapter->tx_pcb.data.memconf.rcv_b = 10;
adapter1675drivers/net/3c505.cadapter->tx_pcb.data.memconf.progs = 0;
adapter1676drivers/net/3c505.cif (!send_pcb(dev, &adapter->tx_pcb) ||
adapter1677drivers/net/3c505.c!receive_pcb(dev, &adapter->rx_pcb) ||
adapter1678drivers/net/3c505.c(adapter->rx_pcb.command != CMD_CONFIGURE_ADAPTER_RESPONSE) ||
adapter1679drivers/net/3c505.c(adapter->rx_pcb.length != 2)) {
adapter1682drivers/net/3c505.cif (adapter->rx_pcb.data.configure) {
adapter288drivers/net/depca.cstatic enum {DEPCA, de100, de101, de200, de201, de202, de210, de422, unknown} adapter;
adapter341drivers/net/depca.cchar adapter;                  /* Adapter type                           */
adapter518drivers/net/depca.cnetRAM = ((adapter != DEPCA) ? 64 : 48);
adapter519drivers/net/depca.cif ((nicsr & _128KB) && (adapter == de422)) netRAM = 128;
adapter536drivers/net/depca.cif (adapter != DEPCA) {
adapter547drivers/net/depca.clp->adapter = adapter;
adapter600drivers/net/depca.cswitch (lp->adapter) {
adapter696drivers/net/depca.cif (adapter != DEPCA) {
adapter1053drivers/net/depca.cif (lp->adapter != DEPCA) {
adapter1429drivers/net/depca.cadapter = i - 1;
adapter1507drivers/net/depca.cx = (((adapter == de100) || (adapter == de101)) ? 1 : 0);