Loading sound/pci/hda/hda_codec.c +0 −82 Original line number Diff line number Diff line Loading @@ -4843,88 +4843,6 @@ int snd_hda_check_amp_list_power(struct hda_codec *codec, EXPORT_SYMBOL_GPL(snd_hda_check_amp_list_power); #endif /* * Channel mode helper */ /** * snd_hda_ch_mode_info - Info callback helper for the channel mode enum * @codec: the HDA codec * @uinfo: pointer to get/store the data * @chmode: channel mode array * @num_chmodes: channel mode array size */ int snd_hda_ch_mode_info(struct hda_codec *codec, struct snd_ctl_elem_info *uinfo, const struct hda_channel_mode *chmode, int num_chmodes) { uinfo->type = SNDRV_CTL_ELEM_TYPE_ENUMERATED; uinfo->count = 1; uinfo->value.enumerated.items = num_chmodes; if (uinfo->value.enumerated.item >= num_chmodes) uinfo->value.enumerated.item = num_chmodes - 1; sprintf(uinfo->value.enumerated.name, "%dch", chmode[uinfo->value.enumerated.item].channels); return 0; } EXPORT_SYMBOL_GPL(snd_hda_ch_mode_info); /** * snd_hda_ch_mode_get - Get callback helper for the channel mode enum * @codec: the HDA codec * @ucontrol: pointer to get/store the data * @chmode: channel mode array * @num_chmodes: channel mode array size * @max_channels: max number of channels */ int snd_hda_ch_mode_get(struct hda_codec *codec, struct snd_ctl_elem_value *ucontrol, const struct hda_channel_mode *chmode, int num_chmodes, int max_channels) { int i; for (i = 0; i < num_chmodes; i++) { if (max_channels == chmode[i].channels) { ucontrol->value.enumerated.item[0] = i; break; } } return 0; } EXPORT_SYMBOL_GPL(snd_hda_ch_mode_get); /** * snd_hda_ch_mode_put - Put callback helper for the channel mode enum * @codec: the HDA codec * @ucontrol: pointer to get/store the data * @chmode: channel mode array * @num_chmodes: channel mode array size * @max_channelsp: pointer to store the max channels */ int snd_hda_ch_mode_put(struct hda_codec *codec, struct snd_ctl_elem_value *ucontrol, const struct hda_channel_mode *chmode, int num_chmodes, int *max_channelsp) { unsigned int mode; mode = ucontrol->value.enumerated.item[0]; if (mode >= num_chmodes) return -EINVAL; if (*max_channelsp == chmode[mode].channels) return 0; /* change the current channel setting */ *max_channelsp = chmode[mode].channels; if (chmode[mode].sequence) snd_hda_sequence_write_cache(codec, chmode[mode].sequence); return 1; } EXPORT_SYMBOL_GPL(snd_hda_ch_mode_put); /* * input MUX helper */ Loading sound/pci/hda/hda_local.h +0 −23 Original line number Diff line number Diff line Loading @@ -272,29 +272,6 @@ int snd_hda_add_imux_item(struct hda_codec *codec, struct hda_input_mux *imux, const char *label, int index, int *type_index_ret); /* * Channel mode helper */ struct hda_channel_mode { int channels; const struct hda_verb *sequence; }; int snd_hda_ch_mode_info(struct hda_codec *codec, struct snd_ctl_elem_info *uinfo, const struct hda_channel_mode *chmode, int num_chmodes); int snd_hda_ch_mode_get(struct hda_codec *codec, struct snd_ctl_elem_value *ucontrol, const struct hda_channel_mode *chmode, int num_chmodes, int max_channels); int snd_hda_ch_mode_put(struct hda_codec *codec, struct snd_ctl_elem_value *ucontrol, const struct hda_channel_mode *chmode, int num_chmodes, int *max_channelsp); /* * Multi-channel / digital-out PCM helper */ Loading Loading
sound/pci/hda/hda_codec.c +0 −82 Original line number Diff line number Diff line Loading @@ -4843,88 +4843,6 @@ int snd_hda_check_amp_list_power(struct hda_codec *codec, EXPORT_SYMBOL_GPL(snd_hda_check_amp_list_power); #endif /* * Channel mode helper */ /** * snd_hda_ch_mode_info - Info callback helper for the channel mode enum * @codec: the HDA codec * @uinfo: pointer to get/store the data * @chmode: channel mode array * @num_chmodes: channel mode array size */ int snd_hda_ch_mode_info(struct hda_codec *codec, struct snd_ctl_elem_info *uinfo, const struct hda_channel_mode *chmode, int num_chmodes) { uinfo->type = SNDRV_CTL_ELEM_TYPE_ENUMERATED; uinfo->count = 1; uinfo->value.enumerated.items = num_chmodes; if (uinfo->value.enumerated.item >= num_chmodes) uinfo->value.enumerated.item = num_chmodes - 1; sprintf(uinfo->value.enumerated.name, "%dch", chmode[uinfo->value.enumerated.item].channels); return 0; } EXPORT_SYMBOL_GPL(snd_hda_ch_mode_info); /** * snd_hda_ch_mode_get - Get callback helper for the channel mode enum * @codec: the HDA codec * @ucontrol: pointer to get/store the data * @chmode: channel mode array * @num_chmodes: channel mode array size * @max_channels: max number of channels */ int snd_hda_ch_mode_get(struct hda_codec *codec, struct snd_ctl_elem_value *ucontrol, const struct hda_channel_mode *chmode, int num_chmodes, int max_channels) { int i; for (i = 0; i < num_chmodes; i++) { if (max_channels == chmode[i].channels) { ucontrol->value.enumerated.item[0] = i; break; } } return 0; } EXPORT_SYMBOL_GPL(snd_hda_ch_mode_get); /** * snd_hda_ch_mode_put - Put callback helper for the channel mode enum * @codec: the HDA codec * @ucontrol: pointer to get/store the data * @chmode: channel mode array * @num_chmodes: channel mode array size * @max_channelsp: pointer to store the max channels */ int snd_hda_ch_mode_put(struct hda_codec *codec, struct snd_ctl_elem_value *ucontrol, const struct hda_channel_mode *chmode, int num_chmodes, int *max_channelsp) { unsigned int mode; mode = ucontrol->value.enumerated.item[0]; if (mode >= num_chmodes) return -EINVAL; if (*max_channelsp == chmode[mode].channels) return 0; /* change the current channel setting */ *max_channelsp = chmode[mode].channels; if (chmode[mode].sequence) snd_hda_sequence_write_cache(codec, chmode[mode].sequence); return 1; } EXPORT_SYMBOL_GPL(snd_hda_ch_mode_put); /* * input MUX helper */ Loading
sound/pci/hda/hda_local.h +0 −23 Original line number Diff line number Diff line Loading @@ -272,29 +272,6 @@ int snd_hda_add_imux_item(struct hda_codec *codec, struct hda_input_mux *imux, const char *label, int index, int *type_index_ret); /* * Channel mode helper */ struct hda_channel_mode { int channels; const struct hda_verb *sequence; }; int snd_hda_ch_mode_info(struct hda_codec *codec, struct snd_ctl_elem_info *uinfo, const struct hda_channel_mode *chmode, int num_chmodes); int snd_hda_ch_mode_get(struct hda_codec *codec, struct snd_ctl_elem_value *ucontrol, const struct hda_channel_mode *chmode, int num_chmodes, int max_channels); int snd_hda_ch_mode_put(struct hda_codec *codec, struct snd_ctl_elem_value *ucontrol, const struct hda_channel_mode *chmode, int num_chmodes, int *max_channelsp); /* * Multi-channel / digital-out PCM helper */ Loading