Home
last modified time | relevance | path

Searched +full:codec +full:- +full:driver (Results 1 – 25 of 939) sorted by relevance

12345678910>>...38

/linux/sound/hda/common/
H A Dbind.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * HD-audio codec driver binding
19 * find a matching codec id
23 struct hda_codec *codec = container_of(dev, struct hda_codec, core); in hda_codec_match() local
24 const struct hda_codec_driver *driver = in hda_codec_match() local
28 u32 id = codec->probe_id ? codec->probe_id : codec->core.vendor_id; in hda_codec_match()
29 u32 rev_id = codec->core.revision_id; in hda_codec_match()
31 for (list = driver->id; list->vendor_id; list++) { in hda_codec_match()
32 if (list->vendor_id == id && in hda_codec_match()
33 (!list->rev_id || list->rev_id == rev_id)) { in hda_codec_match()
[all …]
H A Dcodec.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Universal Interface for Intel High Definition Audio Codec
28 #define codec_in_pm(codec) snd_hdac_is_in_pm(&codec->core) argument
29 #define hda_codec_is_power_on(codec) snd_hdac_is_power_o argument
27 codec_in_pm(codec) global() argument
31 codec_has_clkstop(codec) global() argument
40 struct hda_codec *codec = container_of(dev, struct hda_codec, core); codec_exec_verb() local
79 snd_hda_sequence_write(struct hda_codec * codec,const struct hda_verb * seq) snd_hda_sequence_write() argument
96 lookup_conn_list(struct hda_codec * codec,hda_nid_t nid) lookup_conn_list() argument
106 add_conn_list(struct hda_codec * codec,hda_nid_t nid,int len,const hda_nid_t * list) add_conn_list() argument
121 remove_conn_list(struct hda_codec * codec) remove_conn_list() argument
132 read_and_add_raw_conns(struct hda_codec * codec,hda_nid_t nid) read_and_add_raw_conns() argument
168 snd_hda_get_conn_list(struct hda_codec * codec,hda_nid_t nid,const hda_nid_t ** listp) snd_hda_get_conn_list() argument
207 snd_hda_get_connections(struct hda_codec * codec,hda_nid_t nid,hda_nid_t * conn_list,int max_conns) snd_hda_get_connections() argument
238 snd_hda_override_conn_list(struct hda_codec * codec,hda_nid_t nid,int len,const hda_nid_t * list) snd_hda_override_conn_list() argument
264 snd_hda_get_conn_index(struct hda_codec * codec,hda_nid_t mux,hda_nid_t nid,int recursive) snd_hda_get_conn_index() argument
300 snd_hda_get_num_devices(struct hda_codec * codec,hda_nid_t nid) snd_hda_get_num_devices() argument
326 snd_hda_get_devices(struct hda_codec * codec,hda_nid_t nid,u8 * dev_list,int max_devices) snd_hda_get_devices() argument
365 snd_hda_get_dev_select(struct hda_codec * codec,hda_nid_t nid) snd_hda_get_dev_select() argument
383 snd_hda_set_dev_select(struct hda_codec * codec,hda_nid_t nid,int dev_id) snd_hda_set_dev_select() argument
416 read_widget_caps(struct hda_codec * codec,hda_nid_t fg_node) read_widget_caps() argument
432 read_pin_defaults(struct hda_codec * codec) read_pin_defaults() argument
460 look_up_pincfg(struct hda_codec * codec,struct snd_array * array,hda_nid_t nid) look_up_pincfg() argument
477 snd_hda_add_pincfg(struct hda_codec * codec,struct snd_array * list,hda_nid_t nid,unsigned int cfg) snd_hda_add_pincfg() argument
503 snd_hda_codec_set_pincfg(struct hda_codec * codec,hda_nid_t nid,unsigned int cfg) snd_hda_codec_set_pincfg() argument
519 snd_hda_codec_get_pincfg(struct hda_codec * codec,hda_nid_t nid) snd_hda_codec_get_pincfg() argument
555 snd_hda_codec_set_pin_target(struct hda_codec * codec,hda_nid_t nid,unsigned int val) snd_hda_codec_set_pin_target() argument
573 snd_hda_codec_get_pin_target(struct hda_codec * codec,hda_nid_t nid) snd_hda_codec_get_pin_target() argument
591 snd_hda_shutup_pins(struct hda_codec * codec) snd_hda_shutup_pins() argument
611 restore_shutup_pins(struct hda_codec * codec) restore_shutup_pins() argument
630 struct hda_codec *codec = hda_jackpoll_work() local
646 free_init_pincfgs(struct hda_codec * codec) free_init_pincfgs() argument
669 get_hda_cvt_setup(struct hda_codec * codec,hda_nid_t nid) get_hda_cvt_setup() argument
694 snd_hda_codec_pcm_new(struct hda_codec * codec,const char * fmt,...) snd_hda_codec_pcm_new() argument
722 snd_hda_codec_disconnect_pcms(struct hda_codec * codec) snd_hda_codec_disconnect_pcms() argument
736 codec_release_pcms(struct hda_codec * codec) codec_release_pcms() argument
754 snd_hda_codec_cleanup_for_unbind(struct hda_codec * codec) snd_hda_codec_cleanup_for_unbind() argument
793 snd_hda_codec_display_power(struct hda_codec * codec,bool enable) snd_hda_codec_display_power() argument
805 snd_hda_codec_register(struct hda_codec * codec) snd_hda_codec_register() argument
829 snd_hda_codec_unregister(struct hda_codec * codec) snd_hda_codec_unregister() argument
858 struct hda_codec *codec = dev_to_hda_codec(dev); snd_hda_codec_dev_release() local
884 struct hda_codec *codec; snd_hda_codec_device_init() local
944 struct hda_codec *codec; snd_hda_codec_new() local
962 snd_hda_codec_device_new(struct hda_bus * bus,struct snd_card * card,unsigned int codec_addr,struct hda_codec * codec,bool snddev_managed) snd_hda_codec_device_new() argument
1041 snd_hda_codec_update_widgets(struct hda_codec * codec) snd_hda_codec_update_widgets() argument
1067 update_pcm_stream_id(struct hda_codec * codec,struct hda_cvt_setup * p,hda_nid_t nid,u32 stream_tag,int channel_id) update_pcm_stream_id() argument
1086 update_pcm_format(struct hda_codec * codec,struct hda_cvt_setup * p,hda_nid_t nid,int format) update_pcm_format() argument
1112 snd_hda_codec_setup_stream(struct hda_codec * codec,hda_nid_t nid,u32 stream_tag,int channel_id,int format) snd_hda_codec_setup_stream() argument
1116 struct hda_codec_driver *driver = hda_codec_to_driver(codec); snd_hda_codec_setup_stream() local
1164 __snd_hda_codec_cleanup_stream(struct hda_codec * codec,hda_nid_t nid,int do_now) __snd_hda_codec_cleanup_stream() argument
1190 really_cleanup_stream(struct hda_codec * codec,struct hda_cvt_setup * q) really_cleanup_stream() argument
1193 struct hda_codec_driver *driver = hda_codec_to_driver(codec); really_cleanup_stream() local
1208 purify_inactive_streams(struct hda_codec * codec) purify_inactive_streams() argument
1223 hda_cleanup_all_streams(struct hda_codec * codec) hda_cleanup_all_streams() argument
1250 query_amp_caps(struct hda_codec * codec,hda_nid_t nid,int direction) query_amp_caps() argument
1269 snd_hda_check_amp_caps(struct hda_codec * codec,hda_nid_t nid,int dir,unsigned int bits) snd_hda_check_amp_caps() argument
1294 snd_hda_override_amp_caps(struct hda_codec * codec,hda_nid_t nid,int dir,unsigned int caps) snd_hda_override_amp_caps() argument
1306 encode_amp(struct hda_codec * codec,hda_nid_t nid,int ch,int dir,int idx) encode_amp() argument
1330 snd_hda_codec_amp_update(struct hda_codec * codec,hda_nid_t nid,int ch,int dir,int idx,int mask,int val) snd_hda_codec_amp_update() argument
1351 snd_hda_codec_amp_stereo(struct hda_codec * codec,hda_nid_t nid,int direction,int idx,int mask,int val) snd_hda_codec_amp_stereo() argument
1379 snd_hda_codec_amp_init(struct hda_codec * codec,hda_nid_t nid,int ch,int dir,int idx,int mask,int val) snd_hda_codec_amp_init() argument
1401 snd_hda_codec_amp_init_stereo(struct hda_codec * codec,hda_nid_t nid,int dir,int idx,int mask,int val) snd_hda_codec_amp_init_stereo() argument
1415 get_amp_max_value(struct hda_codec * codec,hda_nid_t nid,int dir,unsigned int ofs) get_amp_max_value() argument
1437 struct hda_codec *codec = snd_kcontrol_chip(kcontrol); snd_hda_mixer_amp_volume_info() local
1459 read_amp_value(struct hda_codec * codec,hda_nid_t nid,int ch,int dir,int idx,unsigned int ofs) read_amp_value() argument
1473 update_amp_value(struct hda_codec * codec,hda_nid_t nid,int ch,int dir,int idx,unsigned int ofs,unsigned int val) update_amp_value() argument
1500 struct hda_codec *codec = snd_kcontrol_chip(kcontrol); snd_hda_mixer_amp_volume_get() local
1527 struct hda_codec *codec = snd_kcontrol_chip(kcontrol); snd_hda_mixer_amp_volume_put() local
1557 struct hda_codec *codec = snd_kcontrol_chip(kcontrol); get_ctl_amp_tlv() local
1613 snd_hda_set_vmaster_tlv(struct hda_codec * codec,hda_nid_t nid,int dir,unsigned int * tlv) snd_hda_set_vmaster_tlv() argument
1632 find_mixer_ctl(struct hda_codec * codec,const char * name,int dev,int idx) find_mixer_ctl() argument
1652 snd_hda_find_mixer_ctl(struct hda_codec * codec,const char * name) snd_hda_find_mixer_ctl() argument
1659 find_empty_mixer_ctl_idx(struct hda_codec * codec,const char * name,int start_idx) find_empty_mixer_ctl_idx() argument
1690 snd_hda_ctl_add(struct hda_codec * codec,hda_nid_t nid,struct snd_kcontrol * kctl) snd_hda_ctl_add() argument
1723 snd_hda_ctls_clear(struct hda_codec * codec) snd_hda_ctls_clear() argument
1743 struct hda_codec *codec; snd_hda_lock_devices() local
1797 snd_hda_codec_reset(struct hda_codec * codec) snd_hda_codec_reset() argument
1815 map_followers(struct hda_codec * codec,const char * const * followers,const char * suffix,map_follower_func_t func,void * data) map_followers() argument
1846 check_follower_present(struct hda_codec * codec,void * data,struct snd_kcontrol * sctl) check_follower_present() argument
1867 struct hda_codec *codec; global() member
1926 add_follower(struct hda_codec * codec,void * data,struct snd_kcontrol * follower) add_follower() argument
1952 __snd_hda_add_vmaster(struct hda_codec * codec,char * name,unsigned int * tlv,const char * const * followers,const char * suffix,bool init_follower_vol,unsigned int access,struct snd_kcontrol ** ctl_ret) __snd_hda_add_vmaster() argument
2013 snd_hda_add_vmaster_hook(struct hda_codec * codec,struct hda_vmaster_mute_hook * hook) snd_hda_add_vmaster_hook() argument
2077 struct hda_codec *codec = snd_kcontrol_chip(kcontrol); snd_hda_mixer_amp_switch_get() local
2105 struct hda_codec *codec = snd_kcontrol_chip(kcontrol); snd_hda_mixer_amp_switch_put() local
2169 struct hda_codec *codec = snd_kcontrol_chip(kcontrol); snd_hda_spdif_default_get() local
2240 set_dig_out(struct hda_codec * codec,hda_nid_t nid,int mask,int val) set_dig_out() argument
2255 set_dig_out_convert(struct hda_codec * codec,hda_nid_t nid,int dig1,int dig2) set_dig_out_convert() argument
2275 struct hda_codec *codec = snd_kcontrol_chip(kcontrol); snd_hda_spdif_default_put() local
2306 struct hda_codec *codec = snd_kcontrol_chip(kcontrol); snd_hda_spdif_out_switch_get() local
2319 set_spdif_ctls(struct hda_codec * codec,hda_nid_t nid,int dig1,int dig2) set_spdif_ctls() argument
2333 struct hda_codec *codec = snd_kcontrol_chip(kcontrol); snd_hda_spdif_out_switch_put() local
2399 snd_hda_create_dig_out_ctls(struct hda_codec * codec,hda_nid_t associated_nid,hda_nid_t cvt_nid,int type) snd_hda_create_dig_out_ctls() argument
2470 snd_hda_spdif_out_of_nid(struct hda_codec * codec,hda_nid_t nid) snd_hda_spdif_out_of_nid() argument
2491 snd_hda_spdif_ctls_unassign(struct hda_codec * codec,int idx) snd_hda_spdif_ctls_unassign() argument
2512 snd_hda_spdif_ctls_assign(struct hda_codec * codec,int idx,hda_nid_t nid) snd_hda_spdif_ctls_assign() argument
2562 snd_hda_create_spdif_share_sw(struct hda_codec * codec,struct hda_multi_out * mout) snd_hda_create_spdif_share_sw() argument
2587 struct hda_codec *codec = snd_kcontrol_chip(kcontrol); snd_hda_spdif_in_switch_get() local
2596 struct hda_codec *codec = snd_kcontrol_chip(kcontrol); snd_hda_spdif_in_switch_put() local
2615 struct hda_codec *codec = snd_kcontrol_chip(kcontrol); snd_hda_spdif_in_status_get() local
2658 snd_hda_create_spdif_in_ctls(struct hda_codec * codec,hda_nid_t nid) snd_hda_create_spdif_in_ctls() argument
2697 snd_hda_codec_set_power_to_all(struct hda_codec * codec,hda_nid_t fg,unsigned int power_state) snd_hda_codec_set_power_to_all() argument
2727 snd_hda_codec_eapd_power_filter(struct hda_codec * codec,hda_nid_t nid,unsigned int power_state) snd_hda_codec_eapd_power_filter() argument
2748 hda_set_power_state(struct hda_codec * codec,unsigned int power_state) hda_set_power_state() argument
2751 struct hda_codec_driver *driver = hda_codec_to_driver(codec); hda_set_power_state() local
2792 sync_power_up_states(struct hda_codec * codec) sync_power_up_states() argument
2816 hda_exec_init_verbs(struct hda_codec * codec) hda_exec_init_verbs() argument
2822 hda_exec_init_verbs(struct hda_codec * codec) hda_exec_init_verbs() argument
2826 update_power_acct(struct hda_codec * codec,bool on) update_power_acct() argument
2837 snd_hda_update_power_acct(struct hda_codec * codec) snd_hda_update_power_acct() argument
2846 hda_call_codec_suspend(struct hda_codec * codec) hda_call_codec_suspend() argument
2848 struct hda_codec_driver *driver = hda_codec_to_driver(codec); hda_call_codec_suspend() local
2865 hda_call_codec_resume(struct hda_codec * codec) hda_call_codec_resume() argument
2867 struct hda_codec_driver *driver = hda_codec_to_driver(codec); hda_call_codec_resume() local
2896 struct hda_codec *codec = dev_to_hda_codec(dev); hda_codec_runtime_suspend() local
2915 struct hda_codec *codec = dev_to_hda_codec(dev); hda_codec_runtime_resume() local
2930 struct hda_codec *codec = dev_to_hda_codec(dev); hda_codec_runtime_idle() local
2939 struct hda_codec *codec = dev_to_hda_codec(dev); hda_codec_pm_prepare() local
2948 struct hda_codec *codec = dev_to_hda_codec(dev); hda_codec_pm_complete() local
2973 struct hda_codec *codec = dev_to_hda_codec(dev); hda_codec_pm_freeze() local
3007 snd_hda_codec_shutdown(struct hda_codec * codec) snd_hda_codec_shutdown() argument
3027 add_std_chmaps(struct hda_codec * codec) add_std_chmaps() argument
3065 snd_hda_codec_build_controls(struct hda_codec * codec) snd_hda_codec_build_controls() argument
3067 struct hda_codec_driver *driver = hda_codec_to_driver(codec); snd_hda_codec_build_controls() local
3101 hda_pcm_default_open_close(struct hda_pcm_stream * hinfo,struct hda_codec * codec,struct snd_pcm_substream * substream) hda_pcm_default_open_close() argument
3108 hda_pcm_default_prepare(struct hda_pcm_stream * hinfo,struct hda_codec * codec,unsigned int stream_tag,unsigned int format,struct snd_pcm_substream * substream) hda_pcm_default_prepare() argument
3118 hda_pcm_default_cleanup(struct hda_pcm_stream * hinfo,struct hda_codec * codec,struct snd_pcm_substream * substream) hda_pcm_default_cleanup() argument
3125 set_pcm_default_values(struct hda_codec * codec,struct hda_pcm_stream * info) set_pcm_default_values() argument
3171 snd_hda_codec_prepare(struct hda_codec * codec,struct hda_pcm_stream * hinfo,unsigned int stream,unsigned int format,struct snd_pcm_substream * substream) snd_hda_codec_prepare() argument
3199 snd_hda_codec_cleanup(struct hda_codec * codec,struct hda_pcm_stream * hinfo,struct snd_pcm_substream * substream) snd_hda_codec_cleanup() argument
3264 snd_hda_codec_parse_pcms(struct hda_codec * codec) snd_hda_codec_parse_pcms() argument
3266 struct hda_codec_driver *driver = hda_codec_to_driver(codec); snd_hda_codec_parse_pcms() local
3306 snd_hda_codec_build_pcms(struct hda_codec * codec) snd_hda_codec_build_pcms() argument
3351 snd_hda_add_new_ctls(struct hda_codec * codec,const struct snd_kcontrol_new * knew) snd_hda_add_new_ctls() argument
3403 snd_hda_codec_set_power_save(struct hda_codec * codec,int delay) snd_hda_codec_set_power_save() argument
3452 snd_hda_check_amp_list_power(struct hda_codec * codec,struct hda_loopback_check * check,hda_nid_t nid) snd_hda_check_amp_list_power() argument
3524 snd_hda_input_mux_put(struct hda_codec * codec,const struct hda_input_mux * imux,struct snd_ctl_elem_value * ucontrol,hda_nid_t nid,unsigned int * cur_val) snd_hda_input_mux_put() argument
3579 setup_dig_out_stream(struct hda_codec * codec,hda_nid_t nid,unsigned int stream_tag,unsigned int format) setup_dig_out_stream() argument
3618 cleanup_dig_out_stream(struct hda_codec * codec,hda_nid_t nid) cleanup_dig_out_stream() argument
3633 snd_hda_multi_out_dig_open(struct hda_codec * codec,struct hda_multi_out * mout) snd_hda_multi_out_dig_open() argument
3654 snd_hda_multi_out_dig_prepare(struct hda_codec * codec,struct hda_multi_out * mout,unsigned int stream_tag,unsigned int format,struct snd_pcm_substream * substream) snd_hda_multi_out_dig_prepare() argument
3672 snd_hda_multi_out_dig_cleanup(struct hda_codec * codec,struct hda_multi_out * mout) snd_hda_multi_out_dig_cleanup() argument
3687 snd_hda_multi_out_dig_close(struct hda_codec * codec,struct hda_multi_out * mout) snd_hda_multi_out_dig_close() argument
3708 snd_hda_multi_out_analog_open(struct hda_codec * codec,struct hda_multi_out * mout,struct snd_pcm_substream * substream,struct hda_pcm_stream * hinfo) snd_hda_multi_out_analog_open() argument
3763 snd_hda_multi_out_analog_prepare(struct hda_codec * codec,struct hda_multi_out * mout,unsigned int stream_tag,unsigned int format,struct snd_pcm_substream * substream) snd_hda_multi_out_analog_prepare() argument
3839 snd_hda_multi_out_analog_cleanup(struct hda_codec * codec,struct hda_multi_out * mout) snd_hda_multi_out_analog_cleanup() argument
3875 snd_hda_get_default_vref(struct hda_codec * codec,hda_nid_t pin) snd_hda_get_default_vref() argument
3902 snd_hda_correct_pin_ctl(struct hda_codec * codec,hda_nid_t pin,unsigned int val) snd_hda_correct_pin_ctl() argument
3965 _snd_hda_set_pin_ctl(struct hda_codec * codec,hda_nid_t pin,unsigned int val,bool cached) _snd_hda_set_pin_ctl() argument
3991 snd_hda_add_imux_item(struct hda_codec * codec,struct hda_input_mux * imux,const char * label,int index,int * type_idx) snd_hda_add_imux_item() argument
4025 struct hda_codec *codec; snd_hda_bus_reset_codecs() local
[all...]
/linux/sound/hda/codecs/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
8 tristate "Build Analog Devices HD-audio codec support"
11 Say Y or M here to include Analog Devices HD-audio codec support in
12 snd-hda-intel driver, such as AD1986A.
14 comment "Set to Y if you want auto-loading the codec driver"
18 tristate "Build IDT/Sigmatel HD-audio codec support"
22 Say Y or M here to include IDT (Sigmatel) HD-audio codec support in
23 snd-hda-intel driver, such as STAC9200.
25 comment "Set to Y if you want auto-loading the codec driver"
29 tristate "Build VIA HD-audio codec support"
[all …]
H A Dcmedia.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Universal codec driver for Intel High Definition Audio Codec
5 * HD audio codec driver for C-Media CMI9880
20 static int cmedia_probe(struct hda_codec *codec, const struct hda_device_id *id) in cmedia_probe() argument
24 bool is_cmi8888 = id->vendor_id == 0x13f68888; in cmedia_probe()
29 return -ENOMEM; in cmedia_probe()
31 codec->spec = spec; in cmedia_probe()
32 cfg = &spec->autocfg; in cmedia_probe()
39 spec->out_vol_mask = (1ULL << 0x10); in cmedia_probe()
42 err = snd_hda_parse_pin_defcfg(codec, cfg, NULL, 0); in cmedia_probe()
[all …]
/linux/sound/soc/intel/boards/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
51 tristate "Haswell with RT5640 I2S codec"
67 tristate "Broadwell with RT5650 codec"
73 This adds the ASoC machine driver for Intel Broadwell platforms with
74 the RT5650 codec.
79 tristate "Broadwell with RT5677 codec"
90 the RT5677 audio codec. This is a recommended option.
95 tristate "Broadwell with RT286 I2S codec"
110 tristate "Baytrail and Baytrail-CR with RT5640 codec"
117 This adds support for ASoC machine driver for Intel(R) Baytrail and Baytrail-CR
[all …]
H A Dcht_bsw_rt5672.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * cht_bsw_rt5672.c - ASoc Machine driver for Intel Cherryview-based platforms
4 * Cherrytrail and Braswell, with RT5672 codec.
22 #include <sound/soc-acpi.h>
24 #include "../atom/sst-atom-controls.h"
25 #include "../common/soc-intel-quirks.h"
28 /* The platform clock #3 outputs 19.2Mhz clock to codec as I2S MCLK */
30 #define CHT_CODEC_DAI "rt5670-aif1"
54 struct snd_soc_dapm_context *dapm = w->dapm; in platform_clock_control()
55 struct snd_soc_card *card = dapm->card; in platform_clock_control()
[all …]
/linux/sound/soc/codecs/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
3 # modular, meaning we can't build the codec driver in with I2C support.
5 # setting - SPI can't be modular so that case doesn't need to be covered.
12 menu "CODEC drivers"
15 tristate "Build all ASoC CODEC drivers"
366 Normally ASoC codec driver
[all...]
H A Dhda.c1 // SPDX-License-Identifier: GPL-2.0
3 // Copyright(c) 2021-2022 Intel Corporation
16 static int hda_codec_create_dais(struct hda_codec *codec, int pcm_count, in hda_codec_create_dais() argument
19 struct device *dev = &codec->core.dev; in hda_codec_create_dais()
26 return -ENOMEM; in hda_codec_create_dais()
28 pcm = list_first_entry(&codec->pcm_list_head, struct hda_pcm, list); in hda_codec_create_dais()
34 dev_info(dev, "creating for %s %d\n", pcm->name, i); in hda_codec_create_dais()
36 drvs[i].name = pcm->name; in hda_codec_create_dais()
41 if (!pcm->stream[dir].substreams) { in hda_codec_create_dais()
42 dev_info(dev, "skipping playback dai for %s\n", pcm->name); in hda_codec_create_dais()
[all …]
H A Dhdac_hda.c1 // SPDX-License-Identifier: GPL-2.0
2 // Copyright(c) 2015-18 Intel Corporation.
5 * hdac_hda.c - ASoC extensions to reuse the legacy HDA codec drivers
7 * codec drivers using hdac_ext_bus_ops ops.
43 …ESC(patch, "Patch file array for Intel HD audio interface. The array index is the codec address.");
74 .name = "Analog Codec DAI",
77 .stream_name = "Analog Codec Playback",
85 .stream_name = "Analog Codec Capture",
95 .name = "Digital Codec DAI",
98 .stream_name = "Digital Codec Playback",
[all …]
H A Dcs40l50-codec.c1 // SPDX-License-Identifier: GPL-2.0
3 // CS40L50 Advanced Haptic Driver with waveform memory,
4 // integrated DSP, and closed-loop algorithms
74 return -EINVAL; in cs40l50_get_clk_config()
77 static int cs40l50_swap_ext_clk(struct cs40l50_codec *codec, const unsigned int clk_src) in cs40l50_swap_ext_clk() argument
84 ret = cs40l50_get_clk_config(codec->bclk_ratio * codec->rate, &cfg); in cs40l50_swap_ext_clk()
92 return -EINVAL; in cs40l50_swap_ext_clk()
95 ret = regmap_update_bits(codec->regmap, CS40L50_REFCLK_INPUT, in cs40l50_swap_ext_clk()
102 ret = regmap_update_bits(codec->regmap, CS40L50_REFCLK_INPUT, in cs40l50_swap_ext_clk()
109 return regmap_update_bits(codec->regmap, CS40L50_REFCLK_INPUT, in cs40l50_swap_ext_clk()
[all …]
/linux/sound/hda/codecs/side-codecs/
H A DKconfig5 tristate "KUnit test for Cirrus side-codec library" if !KUNIT_ALL_TESTS
9 This builds KUnit tests for the cirrus side-codec library.
12 Documentation/dev-tools/kunit/.
25 tristate "Build CS35L41 HD-audio side codec support for I2C Bus"
34 Say Y or M here to include CS35L41 I2C HD-audio side codec support
35 in snd-hda-intel driver, such as ALC287.
37 comment "Set to Y if you want auto-loading the side codec driver"
41 tristate "Build CS35L41 HD-audio codec support for SPI Bus"
50 Say Y or M here to include CS35L41 SPI HD-audio side codec support
51 in snd-hda-intel driver, such as ALC287.
[all …]
/linux/sound/soc/mediatek/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
13 This adds ASoC driver for Mediatek MT2701 boards
19 tristate "ASoc Audio driver for MT2701 with CS42448 codec"
24 This adds ASoC driver for Mediatek MT2701 boards
30 tristate "ASoc Audio driver for MT2701 with WM8960 codec"
34 This adds ASoC driver for Mediatek MT2701 boards
44 This adds ASoC driver for Mediatek MT6797 boards
50 tristate "ASoc Audio driver for MT6797 with MT6351 codec"
54 This adds ASoC driver for Mediatek MT6797 boards
64 This adds ASoC platform driver support for MediaTek MT7986 chip
[all …]
/linux/sound/soc/intel/avs/boards/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
21 This adds support for AVS with DA7219 I2S codec configuration.
39 This adds support for AVS with ES8336 I2S codec configuration.
44 tristate "HD-Audio generic board"
47 This adds support for AVS with HDAudio codec configuration.
54 This adds support for I2S test-board which can be used to verify
63 This adds support for AVS with MAX98927 I2S codec configuration.
73 This adds support for AVS with MAX98357A I2S codec configuration.
83 This adds support for AVS with MAX98373 I2S codec configuration.
93 This adds support for ASoC machine driver with NAU8825 I2S audio codec.
[all …]
/linux/Documentation/sound/soc/
H A Doverview.rst6 provide better ALSA support for embedded system-on-chip processors (e.g.
9 had some limitations:-
11 * Codec drivers were often tightly coupled to the underlying SoC
12 CPU. This is not ideal and leads to code duplication - for example,
18 machine specific code to re-route audio, enable amps, etc., after such an
21 * Drivers tended to power up the entire codec when playing (or
24 power via changing codec oversampling rates, bias currents, etc.
31 features :-
33 * Codec independence. Allows reuse of codec drivers on other platforms
36 * Easy I2S/PCM audio interface setup between codec and SoC. Each SoC
[all …]
/linux/sound/hda/codecs/cirrus/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
4 tristate "Cirrus Logic HD-audio codec support"
6 Say Y or M here to include Cirrus Logic HD-audio codec support.
8 This will enable both CS420x and CS421x HD-audio codec drivers
9 as default, but you can enable/disable each codec driver
15 tristate "Build Cirrus Logic CS420x codec support" if EXPERT
19 Say Y or M here to include Cirrus Logic CS420x codec support
21 comment "Set to Y if you want auto-loading the codec driver"
25 tristate "Build Cirrus Logic CS421x codec support" if EXPERT
29 Say Y or M here to include Cirrus Logic CS421x codec support
[all …]
/linux/include/sound/
H A Dhda_codec.h1 /* SPDX-License-Identifier: GPL-2.0-or-later */
3 * Universal Interface for Intel High Definition Audio Codec
33 * codec bus
53 /* status for codec/controller */
65 unsigned int mixer_assigned; /* codec addr for mixer name */
72 * codec prese
95 hda_codec_to_driver(codec) global() argument
172 struct hda_codec *codec; global() member
325 snd_hda_codec_read(struct hda_codec * codec,hda_nid_t nid,int flags,unsigned int verb,unsigned int parm) snd_hda_codec_read() argument
333 snd_hda_codec_write(struct hda_codec * codec,hda_nid_t nid,int flags,unsigned int verb,unsigned int parm) snd_hda_codec_write() argument
339 snd_hda_param_read(codec,nid,param) global() argument
341 snd_hda_get_sub_nodes(codec,nid,start_nid) global() argument
346 snd_hda_get_num_conns(struct hda_codec * codec,hda_nid_t nid) snd_hda_get_num_conns() argument
351 snd_hda_get_raw_connections(codec,nid,list,max_conns) global() argument
353 snd_hda_get_num_raw_conns(codec,nid) global() argument
379 snd_hda_codec_write_cache(struct hda_codec * codec,hda_nid_t nid,int flags,unsigned int verb,unsigned int parm) snd_hda_codec_write_cache() argument
448 snd_hda_codec_cleanup_stream(codec,nid) global() argument
451 snd_hda_query_supported_pcm(codec,nid,ratesp,fmtsp,subfmtp,bpsp) global() argument
453 snd_hda_is_supported_format(codec,nid,fmt) global() argument
481 hda_call_check_power_status(struct hda_codec * codec,hda_nid_t nid) hda_call_check_power_status() argument
483 struct hda_codec_driver *driver = hda_codec_to_driver(codec); hda_call_check_power_status() local
493 snd_hda_power_up(codec) global() argument
494 snd_hda_power_up_pm(codec) global() argument
495 snd_hda_power_down(codec) global() argument
496 snd_hda_power_down_pm(codec) global() argument
501 hda_codec_need_resume(struct hda_codec * codec) hda_codec_need_resume() argument
522 snd_hda_codec_load_dsp_prepare(struct hda_codec * codec,unsigned int format,unsigned int size,struct snd_dma_buffer * bufp) snd_hda_codec_load_dsp_prepare() argument
529 snd_hda_codec_load_dsp_trigger(struct hda_codec * codec,bool start) snd_hda_codec_load_dsp_trigger() argument
531 snd_hda_codec_load_dsp_cleanup(struct hda_codec * codec,struct snd_dma_buffer * dmab) snd_hda_codec_load_dsp_cleanup() argument
[all...]
H A Dhdaudio.h1 /* SPDX-License-Identifier: GPL-2.0 */
3 * HD-audio core stuff
12 #include <linux/io-64-nonatomic-lo-hi.h>
23 /* codec node id */
50 * HD-audi
171 snd_hdac_read_parm(struct hdac_device * codec,hda_nid_t nid,int parm) snd_hdac_read_parm() argument
187 snd_hdac_enter_pm(struct hdac_device * codec) snd_hdac_enter_pm() argument
193 snd_hdac_leave_pm(struct hdac_device * codec) snd_hdac_leave_pm() argument
198 snd_hdac_is_in_pm(struct hdac_device * codec) snd_hdac_is_in_pm() argument
203 snd_hdac_is_power_on(struct hdac_device * codec) snd_hdac_is_power_on() argument
208 snd_hdac_power_up(struct hdac_device * codec) snd_hdac_power_up() argument
209 snd_hdac_power_down(struct hdac_device * codec) snd_hdac_power_down() argument
210 snd_hdac_power_up_pm(struct hdac_device * codec) snd_hdac_power_up_pm() argument
211 snd_hdac_power_down_pm(struct hdac_device * codec) snd_hdac_power_down_pm() argument
212 snd_hdac_keep_power_up(struct hdac_device * codec) snd_hdac_keep_power_up() argument
213 snd_hdac_enter_pm(struct hdac_device * codec) snd_hdac_enter_pm() argument
214 snd_hdac_leave_pm(struct hdac_device * codec) snd_hdac_leave_pm() argument
215 snd_hdac_is_in_pm(struct hdac_device * codec) snd_hdac_is_in_pm() argument
216 snd_hdac_is_power_on(struct hdac_device * codec) snd_hdac_is_power_on() argument
223 struct device_driver driver; global() member
686 snd_hdac_get_wcaps(codec,nid) global() argument
[all...]
/linux/sound/hda/codecs/hdmi/
H A Dintelhdmi.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Intel HDMI codec support
36 static void intel_haswell_enable_all_pins(struct hda_codec *codec, in intel_haswell_enable_all_pins() argument
40 struct hdmi_spec *spec = codec->spec; in intel_haswell_enable_all_pins()
42 vendor_param = snd_hda_codec_read(codec, spec->vendor_nid, 0, in intel_haswell_enable_all_pins()
44 if (vendor_param == -1 || vendor_param & INTEL_EN_ALL_PIN_CVTS) in intel_haswell_enable_all_pins()
48 vendor_param = snd_hda_codec_read(codec, spec->vendor_nid, 0, in intel_haswell_enable_all_pins()
50 if (vendor_param == -1) in intel_haswell_enable_all_pins()
54 snd_hda_codec_update_widgets(codec); in intel_haswell_enable_all_pins()
57 static void intel_haswell_fixup_enable_dp12(struct hda_codec *codec) in intel_haswell_fixup_enable_dp12() argument
[all …]
/linux/include/sound/ac97/
H A Dcodec.h1 /* SPDX-License-Identifier: GPL-2.0
22 * struct ac97_id - matches a codec device and driver on an ac97 bus
23 * @id: The significant bits if the codec vendor ID1 and ID2
25 * matching. A driver binds to a device when :
27 * @data: Private data used by the driver.
36 * ac97_codec_device - a ac97 codec
38 * @vendor_id: the vendor_id of the codec, as sensed on the AC-link
39 * @num: the codec number, 0 is primary, 1 is first slave, etc ...
40 * @clk: the clock BIT_CLK provided by the codec
41 * @ac97_ctrl: ac97 digital controller on the same AC-link
[all …]
/linux/sound/aoa/codecs/
H A Dtoonie.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Apple Onboard Audio driver for Toonie codec
7 * This is a driver for the toonie codec chip. This chip is present
15 MODULE_DESCRIPTION("toonie codec driver fo
24 struct aoa_codec codec; global() member
85 toonie_init_codec(struct aoa_codec * codec) toonie_init_codec() argument
109 toonie_exit_codec(struct aoa_codec * codec) toonie_exit_codec() argument
[all...]
/linux/sound/hda/core/
H A Dcomponent.c1 // SPDX-License-Identifier: GPL-2.0
2 // hdac_component.c - routines for sync between HD-A core and DRM driver
24 * snd_hdac_set_codec_wakeup - Enable / disable HDMI/DP codec wakeup
28 * This function is supposed to be used only by a HD-audio controller
29 * driver tha
120 snd_hdac_sync_audio_rate(struct hdac_device * codec,hda_nid_t nid,int dev_id,int rate) snd_hdac_sync_audio_rate() argument
161 snd_hdac_acomp_get_eld(struct hdac_device * codec,hda_nid_t nid,int dev_id,bool * audio_enabled,char * buffer,int max_bytes) snd_hdac_acomp_get_eld() argument
[all...]
/linux/sound/hda/core/ext/
H A Dbus.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * hdac-ext-bus.c - HD-audio extended core bus functions.
5 * Copyright (C) 2014-2015 Intel Corp
21 * snd_hdac_ext_bus_init - initialize a HD-audio extended bus
25 * @ext_ops: operators used for ASoC HDA codec drivers
39 bus->ext_ops = ext_ops; in snd_hdac_ext_bus_init()
42 * buses, bus->idx should be greater than 0, but there needs to be a in snd_hdac_ext_bus_init()
45 bus->idx = 0; in snd_hdac_ext_bus_init()
46 bus->cmd_dma_state = true; in snd_hdac_ext_bus_init()
53 * snd_hdac_ext_bus_exit - clean up a HD-audio extended bus
[all …]
/linux/sound/soc/tegra/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
5 tristate "SoC Audio for the Tegra System-on-Chip"
85 Config to enable the Inter-IC Sound (I2S) Controller which
86 implements full-duplex and bidirectional and single direction
87 point-to-point serial interfaces. It can interface with I2S
116 converts the multi-bit Pulse Code Modulation (PCM) audio input to
117 oversampled 1-bit Pulse Density Modulation (PDM) output. From the
119 that up-samples the input to the desired sampling rate by
121 the desired 1-bit output via Delta Sigma Modulation (DSM).
141 per-stream volume control or for master volume control.
[all …]
/linux/sound/aoa/core/
H A Dcore.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Apple Onboard Audio driver core
14 MODULE_DESCRIPTION("Apple Onboard Audio Sound Driver");
27 if (!try_module_get(c->owner)) in attach_codec_to_fabric()
28 return -EBUSY; in attach_codec_to_fabric()
30 err = -ENOENT; in attach_codec_to_fabric()
31 if (fabric->found_codec) in attach_codec_to_fabric()
32 err = fabric->found_codec(c); in attach_codec_to_fabric()
34 module_put(c->owner); in attach_codec_to_fabric()
35 printk(KERN_ERR "snd-aoa: fabric didn't like codec %s\n", in attach_codec_to_fabric()
[all …]
/linux/sound/soc/rockchip/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
7 tristate "Rockchip I2S Device Driver"
10 Say Y or M if you want to add support for I2S driver for
15 tristate "Rockchip I2S/TDM Device Driver"
18 Say Y or M if you want to add support for the I2S/TDM driver for
25 tristate "Rockchip PDM Controller Driver"
29 Say Y or M if you want to add support for PDM driver for
34 tristate "Rockchip SAI Controller Driver"
43 tristate "Rockchip SPDIF Device Driver"
46 Say Y or M if you want to add support for SPDIF driver for
[all …]

12345678910>>...38