drivers/atm/eni.c
1031
struct eni_vcc *eni_vcc;
drivers/atm/eni.c
1046
eni_vcc = ENI_VCC(vcc);
drivers/atm/eni.c
1047
tx = eni_vcc->tx;
drivers/atm/eni.c
1291
struct eni_vcc *eni_vcc = ENI_VCC(vcc);
drivers/atm/eni.c
1311
eni_vcc->tx = eni_dev->ubr;
drivers/atm/eni.c
1317
new_tx = !eni_vcc->tx;
drivers/atm/eni.c
1319
if (!new_tx) tx = eni_vcc->tx;
drivers/atm/eni.c
1369
if (set_shp) eni_vcc->tx = tx;
drivers/atm/eni.c
1394
struct eni_vcc *eni_vcc;
drivers/atm/eni.c
1396
eni_vcc = ENI_VCC(vcc);
drivers/atm/eni.c
1397
if (!eni_vcc->tx) return;
drivers/atm/eni.c
1407
txing = skb_peek(&eni_vcc->tx->backlog) || eni_vcc->txing;
drivers/atm/eni.c
1410
DPRINTK("%d TX left\n",eni_vcc->txing);
drivers/atm/eni.c
1416
if (eni_vcc->tx != eni_dev->ubr) {
drivers/atm/eni.c
1422
while (eni_in(MID_TX_RDPTR(eni_vcc->tx->index)) !=
drivers/atm/eni.c
1423
eni_in(MID_TX_DESCRSTART(eni_vcc->tx->index)))
drivers/atm/eni.c
1425
eni_free_mem(eni_dev,eni_vcc->tx->send,eni_vcc->tx->words << 2);
drivers/atm/eni.c
1426
eni_vcc->tx->send = NULL;
drivers/atm/eni.c
1427
eni_dev->tx_bw += eni_vcc->tx->reserved;
drivers/atm/eni.c
1429
eni_vcc->tx = NULL;
drivers/atm/eni.c
1911
struct eni_vcc *eni_vcc;
drivers/atm/eni.c
1927
eni_vcc = kmalloc_obj(struct eni_vcc);
drivers/atm/eni.c
1928
if (!eni_vcc) return -ENOMEM;
drivers/atm/eni.c
1929
vcc->dev_data = eni_vcc;
drivers/atm/eni.c
1930
eni_vcc->tx = NULL; /* for eni_close after open_rx */
drivers/atm/eni.c
2162
struct eni_vcc *eni_vcc;
drivers/atm/eni.c
2168
eni_vcc = ENI_VCC(vcc);
drivers/atm/eni.c
2171
if (eni_vcc->rx) {
drivers/atm/eni.c
2174
(unsigned long) (eni_vcc->recv - eni_dev->ram),
drivers/atm/eni.c
2175
eni_vcc->recv-eni_dev->ram+eni_vcc->words*4-1,
drivers/atm/eni.c
2176
eni_vcc->words*4);
drivers/atm/eni.c
2177
if (eni_vcc->tx) length += sprintf(page+length,", ");
drivers/atm/eni.c
2179
if (eni_vcc->tx)
drivers/atm/eni.c
2181
eni_vcc->tx->index,eni_vcc->txing);
drivers/atm/eni.c
311
struct eni_vcc *eni_vcc;
drivers/atm/eni.c
319
eni_vcc = ENI_VCC(vcc);
drivers/atm/eni.c
323
eni_vcc->rxing,eni_vcc->words);
drivers/atm/eni.c
325
"0x%x\n",eni_vcc->descr,eni_vcc->rx_pos,
drivers/atm/eni.c
326
(unsigned) readl(eni_vcc->recv+eni_vcc->descr*4));
drivers/atm/eni.c
327
printk(KERN_ALERT " last %p, servicing %d\n",eni_vcc->last,
drivers/atm/eni.c
328
eni_vcc->servicing);
drivers/atm/eni.c
342
struct eni_vcc *eni_vcc;
drivers/atm/eni.c
350
eni_vcc = ENI_VCC(vcc);
drivers/atm/eni.c
368
here = (eni_vcc->descr+skip) & (eni_vcc->words-1);
drivers/atm/eni.c
373
here = (eni_vcc->descr+size+skip) & (eni_vcc->words-1);
drivers/atm/eni.c
469
ENI_PRV_POS(skb) = eni_vcc->descr+size+1;
drivers/atm/eni.c
471
eni_vcc->last = skb;
drivers/atm/eni.c
474
eni_vcc->descr = here;
drivers/atm/eni.c
490
struct eni_vcc *eni_vcc;
drivers/atm/eni.c
492
eni_vcc = ENI_VCC(vcc);
drivers/atm/eni.c
496
if (eni_vcc->rxing) ENI_PRV_POS(eni_vcc->last) += size+1;
drivers/atm/eni.c
497
else eni_vcc->rx_pos = (eni_vcc->rx_pos+size+1) & (eni_vcc->words-1);
drivers/atm/eni.c
508
struct eni_vcc *eni_vcc;
drivers/atm/eni.c
514
eni_vcc = ENI_VCC(vcc);
drivers/atm/eni.c
515
descr = readl(eni_vcc->recv+eni_vcc->descr*4);
drivers/atm/eni.c
535
skb->tstamp = eni_vcc->timestamp;
drivers/atm/eni.c
538
eni_vcc->rxing++;
drivers/atm/eni.c
545
struct eni_vcc *eni_vcc;
drivers/atm/eni.c
552
eni_vcc = ENI_VCC(vcc);
drivers/atm/eni.c
553
descr = readl(eni_vcc->recv+eni_vcc->descr*4);
drivers/atm/eni.c
584
length = readl(eni_vcc->recv+(((eni_vcc->descr+size-1) &
drivers/atm/eni.c
585
(eni_vcc->words-1)))*4) & 0xffff;
drivers/atm/eni.c
607
eni_vcc->rxing++;
drivers/atm/eni.c
616
struct eni_vcc *eni_vcc;
drivers/atm/eni.c
618
eni_vcc = ENI_VCC(vcc);
drivers/atm/eni.c
621
while (eni_vcc->descr != (tmp = (readl(vci_dsc+4) & MID_VCI_DESCR) >>
drivers/atm/eni.c
624
eni_vcc->descr,tmp);
drivers/atm/eni.c
641
eni_vcc->descr,tmp);
drivers/atm/eni.c
723
struct eni_vcc *eni_vcc;
drivers/atm/eni.c
745
eni_vcc = ENI_VCC(vcc);
drivers/atm/eni.c
748
if (!EEPMOK(eni_vcc->rx_pos,ENI_PRV_SIZE(skb),
drivers/atm/eni.c
750
eni_vcc->words)) {
drivers/atm/eni.c
755
eni_vcc->rxing--;
drivers/atm/eni.c
756
eni_vcc->rx_pos = ENI_PRV_POS(skb) & (eni_vcc->words-1);
drivers/atm/eni.c
778
struct eni_vcc *eni_vcc;
drivers/atm/eni.c
783
eni_vcc = ENI_VCC(vcc);
drivers/atm/eni.c
784
eni_vcc->rx = NULL;
drivers/atm/eni.c
790
eni_vcc->recv = eni_alloc_mem(eni_dev,&size);
drivers/atm/eni.c
791
DPRINTK("rx at 0x%lx\n",eni_vcc->recv);
drivers/atm/eni.c
792
eni_vcc->words = size >> 2;
drivers/atm/eni.c
793
if (!eni_vcc->recv) return -ENOBUFS;
drivers/atm/eni.c
794
eni_vcc->rx = vcc->qos.aal == ATM_AAL5 ? rx_aal5 : rx_aal0;
drivers/atm/eni.c
795
eni_vcc->descr = 0;
drivers/atm/eni.c
796
eni_vcc->rx_pos = 0;
drivers/atm/eni.c
797
eni_vcc->rxing = 0;
drivers/atm/eni.c
798
eni_vcc->servicing = 0;
drivers/atm/eni.c
799
eni_vcc->next = ENI_VCC_NOS;
drivers/atm/eni.c
808
struct eni_vcc *eni_vcc;
drivers/atm/eni.c
814
eni_vcc = ENI_VCC(vcc);
drivers/atm/eni.c
815
if (!eni_vcc->rx) return 0;
drivers/atm/eni.c
818
DPRINTK("loc 0x%x\n",(unsigned) (eni_vcc->recv-eni_dev->ram)/4);
drivers/atm/eni.c
819
size = eni_vcc->words >> 8;
drivers/atm/eni.c
829
(((eni_vcc->recv-eni_dev->ram) >> (MID_LOC_SKIP+2)) <<
drivers/atm/eni.c
840
struct eni_vcc *eni_vcc;
drivers/atm/eni.c
842
eni_vcc = ENI_VCC(vcc);
drivers/atm/eni.c
843
if (!eni_vcc->rx) return;
drivers/atm/eni.c
864
if (!eni_vcc->servicing) {
drivers/atm/eni.c
866
if (!eni_vcc->rxing) break;
drivers/atm/eni.c
868
EVENT("drain PDUs (rx %ld, serv %ld)\n",eni_vcc->rxing,
drivers/atm/eni.c
869
eni_vcc->servicing);
drivers/atm/eni.c
870
printk(KERN_INFO "%d+%d RX left\n",eni_vcc->servicing,
drivers/atm/eni.c
871
eni_vcc->rxing);
drivers/atm/eni.c
881
at_end = eni_vcc->rx_pos == tmp >> MID_VCI_READ_SHIFT;
drivers/atm/eni.c
885
eni_vcc->rx_pos,tmp);
drivers/atm/eni.c
887
eni_vcc->rx_pos,tmp);
drivers/atm/eni.c
894
eni_free_mem(eni_dev,eni_vcc->recv,eni_vcc->words << 2);
drivers/atm/eni.c
895
eni_vcc->rx = NULL;
drivers/atm/eni.h
122
#define ENI_VCC(d) ((struct eni_vcc *) (d)->dev_data)