int rt_set_info(void *v, struct radio_info *ri) { struct rt_softc *sc = v; sc->sc_mute = ri->mute ? 1 : 0; sc->sc_rf = lm700x_encode_ref(ri->rfreq); switch (sc->sc_ct) { case CARD_RADIOTRACK: sc->sc_vol = rt_conv_vol(ri->volume); break; case CARD_SF16FMI: sc->sc_vol = ri->volume ? 1 : 0; break; } /* * Though SF16-FMI does not set stereo/mono * it won't hurt to have this */ sc->sc_stereo = ri->stereo ? LM700X_STEREO : LM700X_MONO; rt_set_freq(sc, ri->freq); rt_set_mute(sc, sc->sc_vol); return (0); }
int az_set_info(void *v, struct radio_info *ri) { struct az_softc *sc = v; sc->mute = ri->mute ? 1 : 0; sc->vol = az_conv_vol(ri->volume); sc->stereo = ri->stereo ? LM700X_STEREO : LM700X_MONO; sc->rf = lm700x_encode_ref(ri->rfreq); az_set_freq(sc, ri->freq); az_set_mute(sc); return (0); }