Lines Matching refs:vc

121 static int fatm_load_vc(struct fatm_softc *sc, struct card_vcc *vc);
1487 struct card_vcc *vc;
1541 vc = NULL;
1542 else if ((vc = sc->vccs[vci]) == NULL ||
1545 vc = NULL;
1548 DBG(sc, RCV, ("RCV: vc=%u.%u pt=%u mlen=%d %s", vpi, vci,
1549 pt, mlen, vc == NULL ? "dropped" : ""));
1551 if (vc == NULL) {
1555 if (!(vc->param.flags & ATMIO_FLAG_NG) &&
1556 vc->param.aal == ATMIO_AAL_5 &&
1557 (vc->param.flags & ATM_PH_LLCSNAP))
1561 ATM_PH_FLAGS(&aph) = vc->param.flags;
1568 vc->ipackets++;
1569 vc->ibytes += m0->m_pkthdr.len;
1571 atm_input(ifp, &aph, m0, vc->rxhand);
1928 fatm_tx(struct fatm_softc *sc, struct mbuf *m, struct card_vcc *vc, u_int mlen)
1966 if (!(vc->param.flags & ATMIO_FLAG_NG) &&
1967 vc->param.aal == ATMIO_AAL_5 &&
1968 (vc->param.flags & ATM_PH_LLCSNAP))
1988 aal = (vc->param.aal == ATMIO_AAL_5) ? 5 : 0;
2001 H_SETDESC(tpd->atm_header, TDX_MKHDR(vc->param.vpi,
2002 vc->param.vci, 0, 0));
2004 if (vc->param.traffic == ATMIO_TRAFFIC_UBR)
2010 if (rate_table[i].cell_rate < vc->param.tparam.pcr)
2028 vc->obytes += m->m_pkthdr.len;
2029 vc->opackets++;
2043 struct card_vcc *vc;
2092 if (!VC_OK(sc, vpi, vci) || (vc = sc->vccs[vci]) == NULL ||
2093 !(vc->vflags & FATM_VCC_OPEN)) {
2098 if (fatm_tx(sc, m, vc, mlen)) {
2170 fatm_open_finish(struct fatm_softc *sc, struct card_vcc *vc)
2172 vc->vflags &= ~FATM_VCC_TRY_OPEN;
2173 vc->vflags |= FATM_VCC_OPEN;
2175 if (vc->vflags & FATM_VCC_REOPEN) {
2176 vc->vflags &= ~FATM_VCC_REOPEN;
2182 if (!(vc->param.flags & ATMIO_FLAG_NG) ||
2183 (vc->param.flags & ATMIO_FLAG_PVC))
2184 ATMEV_SEND_VCC_CHANGED(IFP2IFATM(sc->ifp), 0, vc->param.vci, 1);
2194 struct card_vcc *vc;
2197 vc = sc->vccs[vci];
2202 uma_zfree(sc->vcc_zone, vc);
2206 fatm_open_finish(sc, vc);
2234 struct card_vcc *vc;
2248 vc = uma_zalloc(sc->vcc_zone, M_NOWAIT | M_ZERO);
2249 if (vc == NULL)
2263 vc->param = op->param;
2264 vc->rxhand = op->rxhand;
2283 vc->ibytes = vc->obytes = 0;
2284 vc->ipackets = vc->opackets = 0;
2286 vc->vflags = FATM_VCC_TRY_OPEN;
2287 sc->vccs[op->param.vci] = vc;
2290 error = fatm_load_vc(sc, vc);
2298 vc = NULL;
2302 if (vc != NULL)
2303 uma_zfree(sc->vcc_zone, vc);
2311 fatm_load_vc(struct fatm_softc *sc, struct card_vcc *vc)
2319 if (vc->param.aal == ATMIO_AAL_0)
2324 q = fatm_start_vcc(sc, vc->param.vpi, vc->param.vci, cmd, 1,
2325 (vc->param.flags & ATMIO_FLAG_ASYNC) ?
2330 if (!(vc->param.flags & ATMIO_FLAG_ASYNC)) {
2334 fatm_open_finish(sc, vc);
2343 fatm_close_finish(struct fatm_softc *sc, struct card_vcc *vc)
2347 if (!(vc->param.flags & ATMIO_FLAG_NG) ||
2348 (vc->param.flags & ATMIO_FLAG_PVC))
2349 ATMEV_SEND_VCC_CHANGED(IFP2IFATM(sc->ifp), 0, vc->param.vci, 0);
2351 sc->vccs[vc->param.vci] = NULL;
2354 uma_zfree(sc->vcc_zone, vc);
2364 struct card_vcc *vc;
2367 vc = sc->vccs[vci];
2376 fatm_close_finish(sc, vc);
2387 struct card_vcc *vc;
2399 vc = sc->vccs[cl->vci];
2400 if (vc == NULL || !(vc->vflags & (FATM_VCC_OPEN | FATM_VCC_TRY_OPEN))) {
2407 (vc->param.flags & ATMIO_FLAG_ASYNC) ?
2414 vc->vflags &= ~(FATM_VCC_OPEN | FATM_VCC_TRY_OPEN);
2415 vc->vflags |= FATM_VCC_TRY_CLOSE;
2417 if (!(vc->param.flags & ATMIO_FLAG_ASYNC)) {
2422 fatm_close_finish(sc, vc);