PCMDIR_REC
pcm_addchan(dev, PCMDIR_REC, chan_class, sc);
uaudio_configure_msg_sub(sc, &sc->sc_rec_chan, PCMDIR_REC);
pcm_addchan(dev, PCMDIR_REC, &alsrchan_class, sc);
pcm_addchan(sc->dev, PCMDIR_REC, &atiixp_chan_class, sc);
if (ch->dir == PCMDIR_REC) {
pcm_addchan(dev, PCMDIR_REC, &cmichan_class, sc);
pcm_addchan(dev, PCMDIR_REC, &cs4281chan_class, sc);
pcm_addchan(dev, PCMDIR_REC, &emurchan_class, sc);
KASSERT(dir == PCMDIR_REC, ("emurchan_init: bad direction"));
KASSERT(dir == PCMDIR_REC, ("emurchan_init: bad direction"));
pcm_addchan(dev, PCMDIR_REC, &emurchan_class, sc);
pcm_addchan(dev, PCMDIR_REC, &emufxrchan_class, sc);
KASSERT(dir == PCMDIR_REC, ("emurchan_init: bad direction"));
if ((sc->chnum > ENVY24_CHAN_PLAY_SPDIF && dir != PCMDIR_REC) ||
if (envy24_checkintr(sc, PCMDIR_REC)) {
envy24_updintr(sc, PCMDIR_REC);
sc->adc[i] = sc->cfg->codec->create(sc->dev, sc, PCMDIR_REC, i);
pcm_addchan(dev, PCMDIR_REC, &envy24chan_class, sc);
if (dir == PCMDIR_REC && sc->adc[num] != NULL)
if ((sc->chnum > ENVY24HT_CHAN_PLAY_SPDIF && dir != PCMDIR_REC) ||
if (envy24ht_checkintr(sc, PCMDIR_REC)) {
envy24ht_updintr(sc, PCMDIR_REC);
sc->adc[i] = sc->cfg->codec->create(sc->dev, sc, PCMDIR_REC, i);
pcm_addchan(dev, PCMDIR_REC, &envy24htchan_class, sc);
if (dir == PCMDIR_REC && sc->adc[num] != NULL)
pcm_addchan(dev, PCMDIR_REC, ct, es);
if(ch->dir == PCMDIR_REC ) {
if(ch->dir == PCMDIR_REC ) {
if(ch->dir == PCMDIR_REC)
} else if(ch->dir == PCMDIR_REC) {
if (ch->dir == PCMDIR_REC) {
pcm_addchan(dev, PCMDIR_REC, &fm801ch_class, fm801);
(as[j].dir == HDAA_CTL_IN) ? PCMDIR_REC : PCMDIR_PLAY;
if (ch->dir == ((dir == 1) ? PCMDIR_PLAY : PCMDIR_REC) &&
pcm_addchan(dev, PCMDIR_REC, &hdaa_channel_class,
(dev == SOUND_MIXER_RECLEV && ch->dir == PCMDIR_REC)) {
pcm_addchan(dev, PCMDIR_REC, &hdspechan_class, scp);
pcm_addchan(dev, PCMDIR_REC, &ichchan_class, sc); /* record */
pcm_addchan(dev, PCMDIR_REC, &ichchan_class, sc); /* record mic */
KASSERT(dir == PCMDIR_REC, ("wrong direction"));
KASSERT(dir == PCMDIR_REC, ("wrong direction"));
KASSERT((dir == PCMDIR_REC),
pcm_addchan(dev, PCMDIR_REC, &aggrch_class, ess);
if (dir == PCMDIR_REC)
pcm_addchan(dev, PCMDIR_REC, &nmchan_class, sc);
pcm_addchan(dev, PCMDIR_REC, &esschan_class, sc);
if (sc->simplex_dir == PCMDIR_REC)
sc->simplex_dir = play ? PCMDIR_PLAY : PCMDIR_REC ;
KASSERT((dir == PCMDIR_PLAY) || (dir == PCMDIR_REC), ("ess_setupch: dir1 bad"));
if (dir == PCMDIR_REC && codec->type == SPICDS_TYPE_AK4524) {
KASSERT(dir == PCMDIR_REC, ("trrchan_init: bad direction"));
pcm_addchan(dev, PCMDIR_REC, &trrchan_class, tr);
pcm_addchan(dev, PCMDIR_REC, &via8233wr_class, via);
if (ch->dir == PCMDIR_REC) {
pcm_addchan(dev, PCMDIR_REC, &viachan_class, via);
pcm_addchan(dev, PCMDIR_REC, &svrchan_class, sc);
!(dir == PCMDIR_PLAY || dir == PCMDIR_REC)) {
!(c->direction == PCMDIR_PLAY || c->direction == PCMDIR_REC))
case PCMDIR_REC:
KASSERT(c->direction == PCMDIR_REC, ("chn_rdupdate on bad channel"));
if (c->direction == PCMDIR_REC) {
(j == SOUND_MIXER_RECLEV && volch->direction == PCMDIR_REC))) {
rderror = pcm_chnalloc(d, &rdch, PCMDIR_REC,
if (ch->direction == PCMDIR_REC) {
if (!(c->flags & CHN_F_HAS_VCHAN) || c->direction == PCMDIR_REC)
if (c->direction == PCMDIR_REC && (c->flags & CHN_F_HAS_VCHAN))
if (c->direction == PCMDIR_REC)
if (rdch == NULL && c->direction == PCMDIR_REC) {
(c->direction == PCMDIR_REC) ? "hardware" : \
(c->direction == PCMDIR_REC) ? "userland" : \
if (c->direction == PCMDIR_REC) \
(direction == PCMDIR_REC && d->reccount < 1))
else if (direction == PCMDIR_REC)
(direction == PCMDIR_PLAY || direction == PCMDIR_REC),
if (direction != PCMDIR_REC)
direction == PCMDIR_REC))
(void)pcm_setvchans(d, PCMDIR_REC, num, -1);
(void)pcm_setvchans(d, PCMDIR_REC, 1, -1);
case PCMDIR_REC:
direction = PCMDIR_REC;
direction = PCMDIR_REC;
ch->direction == PCMDIR_REC), ("Invalid pcm channel"));
direction = PCMDIR_REC;
direction = PCMDIR_REC;
direction = PCMDIR_REC;
direction = PCMDIR_REC;
KASSERT(dir == PCMDIR_PLAY || dir == PCMDIR_REC,
parent->direction == PCMDIR_REC))