Lines Matching refs:vcc

866     struct atm_vcc*         vcc;  in fore200e_tx_irq()  local
893 if ((vc_map->vcc == NULL) || in fore200e_tx_irq()
894 (test_bit(ATM_VF_READY, &vc_map->vcc->flags) == 0)) { in fore200e_tx_irq()
902 ASSERT(vc_map->vcc); in fore200e_tx_irq()
925 vcc = vc_map->vcc; in fore200e_tx_irq()
926 ASSERT(vcc); in fore200e_tx_irq()
929 if (vcc->pop) { in fore200e_tx_irq()
930 vcc->pop(vcc, entry->skb); in fore200e_tx_irq()
938 atomic_inc(&vcc->stats->tx_err); in fore200e_tx_irq()
940 atomic_inc(&vcc->stats->tx); in fore200e_tx_irq()
1054 fore200e_push_rpd(struct fore200e* fore200e, struct atm_vcc* vcc, struct rpd* rpd) in fore200e_push_rpd() argument
1064 ASSERT(vcc); in fore200e_push_rpd()
1066 fore200e_vcc = FORE200E_VCC(vcc); in fore200e_push_rpd()
1070 if ((vcc->qos.aal == ATM_AAL0) && (vcc->qos.rxtp.max_sdu == ATM_AAL0_SDU)) { in fore200e_push_rpd()
1089 atomic_inc(&vcc->stats->rx_drop); in fore200e_push_rpd()
1125 if (atm_charge(vcc, skb->truesize) == 0) { in fore200e_push_rpd()
1128 vcc->itf, vcc->vpi, vcc->vci); in fore200e_push_rpd()
1132 atomic_inc(&vcc->stats->rx_drop); in fore200e_push_rpd()
1136 vcc->push(vcc, skb); in fore200e_push_rpd()
1137 atomic_inc(&vcc->stats->rx); in fore200e_push_rpd()
1181 struct atm_vcc* vcc; in fore200e_rx_irq() local
1194 if ((vc_map->vcc == NULL) || in fore200e_rx_irq()
1195 (test_bit(ATM_VF_READY, &vc_map->vcc->flags) == 0)) { in fore200e_rx_irq()
1202 vcc = vc_map->vcc; in fore200e_rx_irq()
1203 ASSERT(vcc); in fore200e_rx_irq()
1207 fore200e_push_rpd(fore200e, vcc, entry->rpd); in fore200e_rx_irq()
1213 atomic_inc(&vcc->stats->rx_err); in fore200e_rx_irq()
1302 fore200e_select_scheme(struct atm_vcc* vcc) in fore200e_select_scheme() argument
1305 int scheme = vcc->vci % 2 ? BUFFER_SCHEME_ONE : BUFFER_SCHEME_TWO; in fore200e_select_scheme()
1308 vcc->itf, vcc->vpi, vcc->vci, scheme); in fore200e_select_scheme()
1315 fore200e_activate_vcin(struct fore200e* fore200e, int activate, struct atm_vcc* vcc, int mtu) in fore200e_activate_vcin() argument
1323 enum fore200e_aal aal = fore200e_atm2fore_aal(vcc->qos.aal); in fore200e_activate_vcin()
1328 FORE200E_VCC(vcc)->scheme = fore200e_select_scheme(vcc); in fore200e_activate_vcin()
1332 activ_opcode.scheme = FORE200E_VCC(vcc)->scheme; in fore200e_activate_vcin()
1340 vpvc.vci = vcc->vci; in fore200e_activate_vcin()
1341 vpvc.vpi = vcc->vpi; in fore200e_activate_vcin()
1366 activate ? "open" : "close", vcc->itf, vcc->vpi, vcc->vci); in fore200e_activate_vcin()
1370 DPRINTK(1, "VC %d.%d.%d %sed\n", vcc->itf, vcc->vpi, vcc->vci, in fore200e_activate_vcin()
1396 fore200e_open(struct atm_vcc *vcc) in fore200e_open() argument
1398 struct fore200e* fore200e = FORE200E_DEV(vcc->dev); in fore200e_open()
1402 int vci = vcc->vci; in fore200e_open()
1403 short vpi = vcc->vpi; in fore200e_open()
1411 if (vc_map->vcc) { in fore200e_open()
1421 vc_map->vcc = vcc; in fore200e_open()
1427 vc_map->vcc = NULL; in fore200e_open()
1433 vcc->itf, vcc->vpi, vcc->vci, fore200e_atm2fore_aal(vcc->qos.aal), in fore200e_open()
1434 fore200e_traffic_class[ vcc->qos.txtp.traffic_class ], in fore200e_open()
1435 vcc->qos.txtp.min_pcr, vcc->qos.txtp.max_pcr, vcc->qos.txtp.max_cdv, vcc->qos.txtp.max_sdu, in fore200e_open()
1436 fore200e_traffic_class[ vcc->qos.rxtp.traffic_class ], in fore200e_open()
1437 vcc->qos.rxtp.min_pcr, vcc->qos.rxtp.max_pcr, vcc->qos.rxtp.max_cdv, vcc->qos.rxtp.max_sdu); in fore200e_open()
1440 if ((vcc->qos.txtp.traffic_class == ATM_CBR) && (vcc->qos.txtp.max_pcr > 0)) { in fore200e_open()
1443 if (fore200e->available_cell_rate < vcc->qos.txtp.max_pcr) { in fore200e_open()
1447 vc_map->vcc = NULL; in fore200e_open()
1452 fore200e->available_cell_rate -= vcc->qos.txtp.max_pcr; in fore200e_open()
1456 vcc->itf = vcc->dev->number; in fore200e_open()
1458 set_bit(ATM_VF_PARTIAL,&vcc->flags); in fore200e_open()
1459 set_bit(ATM_VF_ADDR, &vcc->flags); in fore200e_open()
1461 vcc->dev_data = fore200e_vcc; in fore200e_open()
1463 if (fore200e_activate_vcin(fore200e, 1, vcc, vcc->qos.rxtp.max_sdu) < 0) { in fore200e_open()
1465 vc_map->vcc = NULL; in fore200e_open()
1467 clear_bit(ATM_VF_ADDR, &vcc->flags); in fore200e_open()
1468 clear_bit(ATM_VF_PARTIAL,&vcc->flags); in fore200e_open()
1470 vcc->dev_data = NULL; in fore200e_open()
1472 fore200e->available_cell_rate += vcc->qos.txtp.max_pcr; in fore200e_open()
1479 if ((vcc->qos.txtp.traffic_class == ATM_CBR) && (vcc->qos.txtp.max_pcr > 0)) { in fore200e_open()
1481 fore200e_rate_ctrl(&vcc->qos, &fore200e_vcc->rate); in fore200e_open()
1482 set_bit(ATM_VF_HASQOS, &vcc->flags); in fore200e_open()
1485 vcc->itf, vcc->vpi, vcc->vci, fore200e_atm2fore_aal(vcc->qos.aal), in fore200e_open()
1486 vcc->qos.txtp.max_pcr, vcc->qos.rxtp.max_pcr, in fore200e_open()
1498 set_bit(ATM_VF_READY, &vcc->flags); in fore200e_open()
1505 fore200e_close(struct atm_vcc* vcc) in fore200e_close() argument
1507 struct fore200e* fore200e = FORE200E_DEV(vcc->dev); in fore200e_close()
1512 ASSERT(vcc); in fore200e_close()
1513 ASSERT((vcc->vpi >= 0) && (vcc->vpi < 1<<FORE200E_VPI_BITS)); in fore200e_close()
1514 ASSERT((vcc->vci >= 0) && (vcc->vci < 1<<FORE200E_VCI_BITS)); in fore200e_close()
1516 …DPRINTK(2, "closing %d.%d.%d:%d\n", vcc->itf, vcc->vpi, vcc->vci, fore200e_atm2fore_aal(vcc->qos.a… in fore200e_close()
1518 clear_bit(ATM_VF_READY, &vcc->flags); in fore200e_close()
1520 fore200e_activate_vcin(fore200e, 0, vcc, 0); in fore200e_close()
1524 vc_map = FORE200E_VC_MAP(fore200e, vcc->vpi, vcc->vci); in fore200e_close()
1527 vc_map->vcc = NULL; in fore200e_close()
1529 vcc->itf = vcc->vci = vcc->vpi = 0; in fore200e_close()
1531 fore200e_vcc = FORE200E_VCC(vcc); in fore200e_close()
1532 vcc->dev_data = NULL; in fore200e_close()
1537 if ((vcc->qos.txtp.traffic_class == ATM_CBR) && (vcc->qos.txtp.max_pcr > 0)) { in fore200e_close()
1540 fore200e->available_cell_rate += vcc->qos.txtp.max_pcr; in fore200e_close()
1543 clear_bit(ATM_VF_HASQOS, &vcc->flags); in fore200e_close()
1546 clear_bit(ATM_VF_ADDR, &vcc->flags); in fore200e_close()
1547 clear_bit(ATM_VF_PARTIAL,&vcc->flags); in fore200e_close()
1555 fore200e_send(struct atm_vcc *vcc, struct sk_buff *skb) in fore200e_send() argument
1557 struct fore200e* fore200e = FORE200E_DEV(vcc->dev); in fore200e_send()
1558 struct fore200e_vcc* fore200e_vcc = FORE200E_VCC(vcc); in fore200e_send()
1573 ASSERT(vcc); in fore200e_send()
1577 if (!test_bit(ATM_VF_READY, &vcc->flags)) { in fore200e_send()
1578 DPRINTK(1, "VC %d.%d.%d not ready for tx\n", vcc->itf, vcc->vpi, vcc->vpi); in fore200e_send()
1584 if ((vcc->qos.aal == ATM_AAL0) && (vcc->qos.txtp.max_sdu == ATM_AAL0_SDU)) { in fore200e_send()
1605 if ((vcc->qos.aal == ATM_AAL0) && (skb_len % ATM_CELL_PAYLOAD)) { in fore200e_send()
1616 if (vcc->pop) { in fore200e_send()
1617 vcc->pop(vcc, skb); in fore200e_send()
1633 vc_map = FORE200E_VC_MAP(fore200e, vcc->vpi, vcc->vci); in fore200e_send()
1634 ASSERT(vc_map->vcc == vcc); in fore200e_send()
1657 atomic_inc(&vcc->stats->tx_err); in fore200e_send()
1662 if (vcc->pop) { in fore200e_send()
1663 vcc->pop(vcc, skb); in fore200e_send()
1693 vcc->itf, vcc->vpi, vcc->vci, fore200e_atm2fore_aal(vcc->qos.aal), in fore200e_send()
1717 tpd->atm_header.vci = vcc->vci; in fore200e_send()
1718 tpd->atm_header.vpi = vcc->vpi; in fore200e_send()
1724 tpd->spec.aal = fore200e_atm2fore_aal(vcc->qos.aal); in fore200e_send()
1785 fore200e_getsockopt(struct atm_vcc* vcc, int level, int optname, void __user *optval, int optlen) in fore200e_getsockopt() argument
1790 vcc->itf, vcc->vpi, vcc->vci, level, optname, optval, optlen); in fore200e_getsockopt()
1797 fore200e_setsockopt(struct atm_vcc* vcc, int level, int optname, void __user *optval, unsigned int … in fore200e_setsockopt() argument
1802 vcc->itf, vcc->vpi, vcc->vci, level, optname, optval, optlen); in fore200e_setsockopt()
1980 fore200e_change_qos(struct atm_vcc* vcc,struct atm_qos* qos, int flags) in fore200e_change_qos() argument
1982 struct fore200e_vcc* fore200e_vcc = FORE200E_VCC(vcc); in fore200e_change_qos()
1983 struct fore200e* fore200e = FORE200E_DEV(vcc->dev); in fore200e_change_qos()
1985 if (!test_bit(ATM_VF_READY, &vcc->flags)) { in fore200e_change_qos()
1986 DPRINTK(1, "VC %d.%d.%d not ready for QoS change\n", vcc->itf, vcc->vpi, vcc->vpi); in fore200e_change_qos()
1994 vcc->itf, vcc->vpi, vcc->vci, in fore200e_change_qos()
2004 if (fore200e->available_cell_rate + vcc->qos.txtp.max_pcr < qos->txtp.max_pcr) { in fore200e_change_qos()
2009 fore200e->available_cell_rate += vcc->qos.txtp.max_pcr; in fore200e_change_qos()
2014 memcpy(&vcc->qos, qos, sizeof(struct atm_qos)); in fore200e_change_qos()
2019 set_bit(ATM_VF_HASQOS, &vcc->flags); in fore200e_change_qos()
2824 struct atm_vcc* vcc; in fore200e_proc_read() local
3074 vcc = fore200e->vc_map[i].vcc; in fore200e_proc_read()
3076 if (vcc == NULL) in fore200e_proc_read()
3081 if (vcc && test_bit(ATM_VF_READY, &vcc->flags) && !left--) { in fore200e_proc_read()
3083 fore200e_vcc = FORE200E_VCC(vcc); in fore200e_proc_read()
3088 vcc, in fore200e_proc_read()
3089 vcc->vpi, vcc->vci, fore200e_atm2fore_aal(vcc->qos.aal), in fore200e_proc_read()