Lines Matching refs:jack

122  * umidi(sc) -> endpoint -> jack   <- (dynamically assignable) - mididev
1072 * jack stuffs
1080 struct umidi_jack *jack;
1121 jack = &sc->sc_out_jacks[0];
1123 jack->opened = 0;
1124 jack->bound = 0;
1125 jack->arg = NULL;
1126 jack->u.out.intr = NULL;
1127 jack->midiman_ppkt = NULL;
1129 jack->cable_number = i;
1130 jack++;
1132 jack = &sc->sc_in_jacks[0];
1134 jack->opened = 0;
1135 jack->bound = 0;
1136 jack->arg = NULL;
1137 jack->u.in.intr = NULL;
1139 jack->cable_number = i;
1140 jack++;
1144 jack = &sc->sc_out_jacks[0];
1148 jack->endpoint = ep;
1150 jack->cable_number = *cn_spec++;
1152 jack->cable_number = j;
1153 ep->jacks[jack->cable_number] = jack;
1154 jack++;
1158 jack = &sc->sc_in_jacks[0];
1162 jack->endpoint = ep;
1164 jack->cable_number = *cn_spec++;
1166 jack->cable_number = j;
1167 ep->jacks[jack->cable_number] = jack;
1168 jack++;
1299 open_out_jack(struct umidi_jack *jack, void *arg, void (*intr)(void *))
1301 struct umidi_endpoint *ep = jack->endpoint;
1308 if (jack->opened)
1311 jack->arg = arg;
1312 jack->u.out.intr = intr;
1313 jack->midiman_ppkt = NULL;
1315 jack->opened = 1;
1328 jack->opened = 0;
1337 open_in_jack(struct umidi_jack *jack, void *arg, void (*intr)(void *, int))
1340 struct umidi_endpoint *ep = jack->endpoint;
1344 if (jack->opened)
1347 jack->arg = arg;
1348 jack->u.in.intr = intr;
1349 jack->opened = 1;
1368 close_out_jack(struct umidi_jack *jack)
1375 if (jack->opened) {
1376 ep = jack->endpoint;
1380 mask = 1 << (jack->cable_number);
1391 if (jack->opened) {
1392 jack->opened = 0;
1393 jack->endpoint->num_open--;
1401 close_in_jack(struct umidi_jack *jack)
1403 if (jack->opened) {
1404 struct umidi_softc *sc = jack->endpoint->sc;
1408 jack->opened = 0;
1409 if (--jack->endpoint->num_open == 0) {
1417 usbd_abort_pipe(jack->endpoint->pipe);
1547 * For class-compliant devices: get the iJack string from the jack descriptor.
1551 * - support an array quirk explicitly giving a char * for each jack.
1633 dump_jack(struct umidi_jack *jack)
1636 jack->endpoint));
1830 struct umidi_jack *jack;
1865 if (!(jack = ep->jacks[cn]) || cn != jack->cable_number) {
1876 if (!jack->bound || !jack->opened)
1886 if (jack->u.in.intr) {
1888 (*jack->u.in.intr)(jack->arg, data[i]);
1949 * A jack on which we have received a packet must be called back on its
1954 * In contrast, a jack that is open but not scheduled may supply us a packet
1962 * the minimum or no jack has any more to send.
1971 struct umidi_jack *jack;
1987 * At least one jack is scheduled. Find and mask off the least
1989 * Convert mask to bit index to find the corresponding jack,
2007 which &= 0x1f; /* the bit index a/k/a jack number */
2009 jack = ep->jacks[which];
2010 if (jack->u.out.intr)
2011 (*jack->u.out.intr)(jack->arg);