snd_hda_add_imux_item(9)
π snd_hda_add_imux_item(9) β the Kernel API Manual page, but make it make sense
okay bestie so this is a page from the Kernel API Manual (yes, the actual kernel, like, the big one π§) and today's main character is snd_hda_add_imux_item(9). It's a little function that adds an item to input_mux, and it's way less scary than the name makes it look. Promise. π«Ά
β¨ NAME β¨
snd_hda_add_imux_item β add an item to input_mux, literally what it says on the tin π
πΈ SYNOPSIS πΈ
int snd_hda_add_imux_item (struct hda_codec *codec , struct
hda_input_mux *imux , const char *label , int index , int *type_idx );
π¦ ARGUMENTS π¦
codecβ the HDA codec. that's your whole guy right there πimuxβ the imux helper object, aka the thing we're adding tolabelβ the name of the imux item you're assigningindexβ the index number of the imux item you're assigningtype_idxβ pointer to store the resultant label index in
π DESCRIPTION π
ok so here's the whole vibe: when the same label is already used in the existing items, a number suffix gets appended to the label. iconic behaviour, honestly β no duplicates, no drama π
And that label index number? It gets stored in type_idx whenever you hand over a non-NULL pointer. So if you pass a real pointer, you get the receipts. If you pass NULL, you simply don't. your call, bestie π«Ά
π₯ SEE ALSO π₯
okay this list is long long, but we do not skip a single one, because every single cross-reference is part of the lore. no cap. πβ¨
Kernel file ./sound/hda/common/codec.c β and then, in order: snd_hda_sequence_write(9), snd_hda_get_conn_list(9), snd_hda_get_connections(9), snd_hda_override_conn_list(9), snd_hda_get_conn_index(9), snd_hda_get_num_devices(9), snd_hda_get_devices(9), snd_hda_get_dev_select(9), snd_hda_set_dev_select(9), snd_hda_codec_set_pincfg(9), snd_hda_codec_get_pincfg(9), snd_hda_codec_set_pin_target(9), snd_hda_codec_get_pin_target(9), snd_hda_shutup_pins(9), snd_hda_codec_cleanup_for_unbind(9), snd_hda_codec_register(9), snd_hda_codec_unregister(9), snd_hda_codec_device_init(9), snd_hda_codec_new(9), snd_hda_codec_update_widgets(9), snd_hda_codec_setup_stream(9), __snd_hda_codec_cleanup_stream(9), query_amp_caps(9), snd_hda_check_amp_caps(9), snd_hda_override_amp_caps(9), snd_hda_codec_amp_update(9), snd_hda_codec_amp_stereo(9), snd_hda_codec_amp_init(9), snd_hda_codec_amp_init_stereo(9), snd_hda_mixer_amp_volume_info(9), snd_hda_mixer_amp_volume_get(9), snd_hda_mixer_amp_volume_put(9), snd_hda_mixer_amp_tlv(9), snd_hda_set_vmaster_tlv(9), snd_hda_find_mixer_ctl(9), snd_hda_ctl_add(9), snd_hda_ctls_clear(9), snd_hda_lock_devices(9), snd_hda_unlock_devices(9), snd_hda_codec_reset(9), __snd_hda_add_vmaster(9), snd_hda_add_vmaster_hook(9), snd_hda_sync_vmaster_hook(9), snd_hda_mixer_amp_switch_info(9), snd_hda_mixer_amp_switch_get(9), snd_hda_mixer_amp_switch_put(9), snd_hda_create_dig_out_ctls(9), snd_hda_spdif_out_of_nid(9), snd_hda_spdif_ctls_unassign(9), snd_hda_spdif_ctls_assign(9), snd_hda_create_spdif_share_sw(9), snd_hda_create_spdif_in_ctls(9), snd_hda_codec_set_power_to_all(9), snd_hda_codec_eapd_power_filter(9), snd_hda_codec_prepare(9), snd_hda_codec_cleanup(9), snd_hda_add_new_ctls(9), snd_hda_codec_set_power_save(9), snd_hda_set_power_save(9), snd_hda_check_amp_list_power(9), snd_hda_input_mux_info(9), snd_hda_input_mux_put(9), snd_hda_enum_helper_info(9), snd_hda_multi_out_dig_open(9), snd_hda_multi_out_dig_prepare(9), snd_hda_multi_out_dig_cleanup(9), snd_hda_multi_out_dig_close(9), snd_hda_multi_out_analog_open(9), snd_hda_multi_out_analog_prepare(9), snd_hda_multi_out_analog_cleanup(9), snd_hda_get_default_vref(9), snd_hda_correct_pin_ctl(9), _snd_hda_set_pin_ctl(9), snd_hda_bus_reset_codecs(9), snd_hda_codec_set_gpio(9), snd_print_pcm_bits(9).
likeβ¦ go off, cross-references π every last one of you matters π
ngl the useful bit is tiny: label collision β number suffix gets tacked on, and the resulting index lands in*type_idxif it's notNULL. that's the whole tea. π
and that's the page!! this one lives under ./sound/hda/common, and the version of record is dated October 2026 β so when you cite it, cite it with confidence, bestie. mwah πβ¨π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms