Home
last modified time | relevance | path

Searched full:codec (Results 1 – 25 of 2184) sorted by relevance

12345678910>>...88

/linux/sound/hda/common/
H A Dbind.c3 * 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
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()
34 codec->preset = list; in hda_codec_match()
44 struct hda_codec *codec = container_of(dev, struct hda_codec, core); in hda_codec_unsol_event() local
45 struct hda_codec_driver *driver = hda_codec_to_driver(codec); in hda_codec_unsol_event()
48 if (codec->card->shutdown || codec->bus->shutdown) in hda_codec_unsol_event()
52 if (codec->core.dev.power.power_state.event != PM_EVENT_ON) in hda_codec_unsol_event()
[all …]
H A Dcodec.c3 * Universal Interface for Intel High Definition Audio Codec
27 #define codec_in_pm(codec) snd_hdac_is_in_pm(&codec->core) argument
28 #define hda_codec_is_power_on(codec) snd_hdac_is_power_on(&codec->core) argument
29 #define codec_has_epss(codec) \ argument
30 ((codec)->core.power_caps & AC_PWRST_EPSS)
31 #define codec_has_clkstop(codec) \ argument
32 ((codec)->core.power_caps & AC_PWRST_CLKSTOP)
40 struct hda_codec *codec = container_of(dev, struct hda_codec, core); in codec_exec_verb() local
41 struct hda_bus *bus = codec->bus; in codec_exec_verb()
48 snd_hda_power_up_pm(codec); in codec_exec_verb()
[all …]
H A Djack.c21 * @codec: the HDA codec
26 * detection is prohibited in the codec level, the pin config has
29 bool is_jack_detectable(struct hda_codec *codec, hda_nid_t nid) in is_jack_detectable() argument
31 if (codec->no_jack_detect) in is_jack_detectable()
33 if (!(snd_hda_query_pin_caps(codec, nid) & AC_PINCAP_PRES_DETECT)) in is_jack_detectable()
35 if (get_defcfg_misc(snd_hda_codec_get_pincfg(codec, nid)) & in is_jack_detectable()
38 if (!(get_wcaps(codec, nid) & AC_WCAP_UNSOL_CAP) && in is_jack_detectable()
39 !codec->jackpoll_interval) in is_jack_detectable()
46 static u32 read_pin_sense(struct hda_codec *codec, hda_nid_t nid, int dev_id) in read_pin_sense() argument
51 if (!codec->no_trigger_sense) { in read_pin_sense()
[all …]
H A Dsysfs.c3 * sysfs interface for HD-audio codec
33 struct hda_codec *codec = dev_get_drvdata(dev); in power_on_acct_show() local
34 snd_hda_update_power_acct(codec); in power_on_acct_show()
35 return sysfs_emit(buf, "%u\n", jiffies_to_msecs(codec->power_on_acct)); in power_on_acct_show()
42 struct hda_codec *codec = dev_get_drvdata(dev); in power_off_acct_show() local
43 snd_hda_update_power_acct(codec); in power_off_acct_show()
44 return sysfs_emit(buf, "%u\n", jiffies_to_msecs(codec->power_off_acct)); in power_off_acct_show()
55 struct hda_codec *codec = dev_get_drvdata(dev); \
56 return sysfs_emit(buf, "0x%x\n", codec->field); \
64 struct hda_codec *codec = dev_get_drvdata(dev); \
[all …]
H A Dhda_local.h3 * Universal Interface for Intel High Definition Audio Codec
119 #define snd_hda_codec_amp_read(codec, nid, ch, dir, idx) \ argument
120 snd_hdac_regmap_get_amp(&(codec)->core, nid, ch, dir, idx)
121 int snd_hda_codec_amp_update(struct hda_codec *codec, hda_nid_t nid,
123 int snd_hda_codec_amp_stereo(struct hda_codec *codec, hda_nid_t nid,
125 int snd_hda_codec_amp_init(struct hda_codec *codec, hda_nid_t nid, int ch,
127 int snd_hda_codec_amp_init_stereo(struct hda_codec *codec, hda_nid_t nid,
129 void snd_hda_set_vmaster_tlv(struct hda_codec *codec, hda_nid_t nid, int dir,
131 struct snd_kcontrol *snd_hda_find_mixer_ctl(struct hda_codec *codec,
133 int __snd_hda_add_vmaster(struct hda_codec *codec, char *name,
[all …]
H A Dhda_jack.h55 snd_hda_jack_tbl_get_mst(struct hda_codec *codec, hda_nid_t nid, int dev_id);
59 * @codec: the HDA codec
63 snd_hda_jack_tbl_get(struct hda_codec *codec, hda_nid_t nid) in snd_hda_jack_tbl_get() argument
65 return snd_hda_jack_tbl_get_mst(codec, nid, 0); in snd_hda_jack_tbl_get()
69 snd_hda_jack_tbl_get_from_tag(struct hda_codec *codec,
72 void snd_hda_jack_tbl_disconnect(struct hda_codec *codec);
73 void snd_hda_jack_tbl_clear(struct hda_codec *codec);
75 void snd_hda_jack_set_dirty_all(struct hda_codec *codec);
77 int snd_hda_jack_detect_enable(struct hda_codec *codec, hda_nid_t nid,
81 snd_hda_jack_detect_enable_callback_mst(struct hda_codec *codec, hda_nid_t nid,
[all …]
/linux/sound/hda/codecs/realtek/
H A Drealtek.c3 // Realtek HD-audio codec support code
14 static void coef_mutex_lock(struct hda_codec *codec) in coef_mutex_lock() argument
16 struct alc_spec *spec = codec->spec; in coef_mutex_lock()
18 snd_hda_power_up_pm(codec); in coef_mutex_lock()
22 static void coef_mutex_unlock(struct hda_codec *codec) in coef_mutex_unlock() argument
24 struct alc_spec *spec = codec->spec; in coef_mutex_unlock()
27 snd_hda_power_down_pm(codec); in coef_mutex_unlock()
30 static int __alc_read_coefex_idx(struct hda_codec *codec, hda_nid_t nid, in __alc_read_coefex_idx() argument
35 snd_hda_codec_write(codec, nid, 0, AC_VERB_SET_COEF_INDEX, coef_idx); in __alc_read_coefex_idx()
36 val = snd_hda_codec_read(codec, nid, 0, AC_VERB_GET_PROC_COEF, 0); in __alc_read_coefex_idx()
[all …]
H A Drealtek.h3 // Realtek HD-audio codec support code
80 /* codec parameterization */
108 void (*init_hook)(struct hda_codec *codec);
109 void (*power_hook)(struct hda_codec *codec);
110 void (*shutup)(struct hda_codec *codec);
135 int alc_read_coefex_idx(struct hda_codec *codec, hda_nid_t nid,
137 void alc_write_coefex_idx(struct hda_codec *codec, hda_nid_t nid,
139 void alc_update_coefex_idx(struct hda_codec *codec, hda_nid_t nid,
142 #define alc_read_coef_idx(codec, coef_idx) \ argument
143 alc_read_coefex_idx(codec, 0x20, coef_idx)
[all …]
/linux/sound/pci/ali5451/
H A Dali5451.c141 #define ALI_REG(codec, x) ((codec)->port + x) argument
180 struct snd_ali *codec; member
264 static inline unsigned int snd_ali_5451_peek(struct snd_ali *codec, in snd_ali_5451_peek() argument
267 return (unsigned int)inl(ALI_REG(codec, port)); in snd_ali_5451_peek()
270 static inline void snd_ali_5451_poke(struct snd_ali *codec, in snd_ali_5451_poke() argument
274 outl((unsigned int)val, ALI_REG(codec, port)); in snd_ali_5451_poke()
277 static int snd_ali_codec_ready(struct snd_ali *codec, in snd_ali_codec_ready() argument
286 res = snd_ali_5451_peek(codec,port); in snd_ali_codec_ready()
294 snd_ali_5451_poke(codec, port, res & ~0x8000); in snd_ali_codec_ready()
295 dev_dbg(codec->card->dev, "ali_codec_ready: codec is not ready.\n"); in snd_ali_codec_ready()
[all …]
/linux/sound/hda/codecs/hdmi/
H A Dintelhdmi.c3 * 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()
48 vendor_param = snd_hda_codec_read(codec, spec->vendor_nid, 0, 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
60 struct hdmi_spec *spec = codec->spec; in intel_haswell_fixup_enable_dp12()
62 vendor_param = snd_hda_codec_read(codec, spec->vendor_nid, 0, in intel_haswell_fixup_enable_dp12()
69 snd_hdac_regmap_add_vendor_verb(&codec->core, INTEL_SET_VENDOR_VERB); in intel_haswell_fixup_enable_dp12()
[all …]
H A Dhdmi.c50 int snd_hda_hdmi_pin_id_to_pin_index(struct hda_codec *codec, in snd_hda_hdmi_pin_id_to_pin_index() argument
53 struct hdmi_spec *spec = codec->spec; in snd_hda_hdmi_pin_id_to_pin_index()
71 codec_warn(codec, "HDMI: pin NID 0x%x not registered\n", pin_nid); in snd_hda_hdmi_pin_id_to_pin_index()
76 static int hinfo_to_pcm_index(struct hda_codec *codec, in hinfo_to_pcm_index() argument
79 struct hdmi_spec *spec = codec->spec; in hinfo_to_pcm_index()
86 codec_warn(codec, "HDMI: hinfo %p not tied to a PCM\n", hinfo); in hinfo_to_pcm_index()
90 static int hinfo_to_pin_index(struct hda_codec *codec, in hinfo_to_pin_index() argument
93 struct hdmi_spec *spec = codec->spec; in hinfo_to_pin_index()
104 codec_dbg(codec, "HDMI: hinfo %p (pcm %d) not registered\n", hinfo, in hinfo_to_pin_index()
105 hinfo_to_pcm_index(codec, hinfo)); in hinfo_to_pin_index()
[all …]
/linux/Documentation/devicetree/bindings/pinctrl/
H A Dcirrus,lochnagar.yaml14 Smart CODEC and Amp devices. It allows the connection of most Cirrus
72 enum: [ codec-aif1, codec-aif2, codec-aif3, dsp-aif1,
82 fpga-gpio5, fpga-gpio6, codec-gpio1, codec-gpio2,
83 codec-gpio3, codec-gpio4, codec-gpio5, codec-gpio6,
84 codec-gpio7, codec-gpio8, dsp-gpio1, dsp-gpio2,
86 gf-gpio2, gf-gpio3, gf-gpio7, codec-aif1-bclk,
87 codec-aif1-rxdat, codec-aif1-lrclk, codec-aif1-txdat,
88 codec-aif2-bclk, codec-aif2-rxdat, codec-aif2-lrclk,
89 codec-aif2-txdat, codec-aif3-bclk, codec-aif3-rxdat,
90 codec-aif3-lrclk, codec-aif3-txdat, dsp-aif1-bclk,
[all …]
/linux/sound/hda/core/
H A Dregmap.c25 static int codec_pm_lock(struct hdac_device *codec) in codec_pm_lock() argument
27 return snd_hdac_keep_power_up(codec); in codec_pm_lock()
30 static void codec_pm_unlock(struct hdac_device *codec, int lock) in codec_pm_unlock() argument
33 snd_hdac_power_down_pm(codec); in codec_pm_unlock()
40 struct hdac_device *codec = dev_to_hdac_dev(dev); in hda_volatile_reg() local
45 return !codec->cache_coef; in hda_volatile_reg()
67 struct hdac_device *codec = dev_to_hdac_dev(dev); in hda_writeable_reg() local
72 snd_array_for_each(&codec->vendor_verbs, i, v) { in hda_writeable_reg()
77 if (codec->caps_overwriting) in hda_writeable_reg()
85 return codec->cache_coef; in hda_writeable_reg()
[all …]
H A Ddevice.c3 * HD-audio codec core device
19 static void setup_fg_nodes(struct hdac_device *codec);
20 static int get_codec_vendor_name(struct hdac_device *codec);
28 * snd_hdac_device_init - initialize the HD-audio codec base device
29 * @codec: device to initialize
32 * @addr: codec address
41 int snd_hdac_device_init(struct hdac_device *codec, struct hdac_bus *bus, in snd_hdac_device_init() argument
48 dev = &codec->dev; in snd_hdac_device_init()
57 codec->bus = bus; in snd_hdac_device_init()
58 codec->addr = addr; in snd_hdac_device_init()
[all …]
H A Dsysfs.c24 struct hdac_device *codec = dev_to_hdac_dev(dev); \
25 return sysfs_emit(buf, "0x%x\n", codec->type); \
34 struct hdac_device *codec = dev_to_hdac_dev(dev); \
36 codec->type ? codec->type : ""); \
89 ssize_t (*show)(struct hdac_device *codec, hda_nid_t nid,
91 ssize_t (*store)(struct hdac_device *codec, hda_nid_t nid,
114 struct hdac_device *codec; in widget_attr_show() local
119 nid = get_codec_nid(kobj, &codec); in widget_attr_show()
122 return wid_attr->show(codec, nid, wid_attr, buf); in widget_attr_show()
130 struct hdac_device *codec; in widget_attr_store() local
[all …]
/linux/sound/hda/codecs/
H A Dgeneric.c3 * Universal Interface for Intel High Definition Audio Codec
105 static void parse_user_hints(struct hda_codec *codec) in parse_user_hints() argument
107 struct hda_gen_spec *spec = codec->spec; in parse_user_hints()
110 val = snd_hda_get_bool_hint(codec, "jack_detect"); in parse_user_hints()
112 codec->no_jack_detect = !val; in parse_user_hints()
113 val = snd_hda_get_bool_hint(codec, "inv_jack_detect"); in parse_user_hints()
115 codec->inv_jack_detect = !!val; in parse_user_hints()
116 val = snd_hda_get_bool_hint(codec, "trigger_sense"); in parse_user_hints()
118 codec->no_trigger_sense = !val; in parse_user_hints()
119 val = snd_hda_get_bool_hint(codec, "inv_eapd"); in parse_user_hints()
[all …]
H A Dca0132.c3 * HD audio codec driver for Creative CA0132 chip
1135 struct hda_codec *codec; member
1181 #define ca0132_quirk(spec) ((spec)->codec->fixup_id)
1525 * CA0132 codec access
1527 static unsigned int codec_send_command(struct hda_codec *codec, hda_nid_t nid, in codec_send_command() argument
1531 response = snd_hda_codec_read(codec, nid, 0, verb, parm); in codec_send_command()
1537 static int codec_set_converter_format(struct hda_codec *codec, hda_nid_t nid, in codec_set_converter_format() argument
1540 return codec_send_command(codec, nid, VENDOR_CHIPIO_STREAM_FORMAT, in codec_set_converter_format()
1544 static int codec_set_converter_stream_channel(struct hda_codec *codec, in codec_set_converter_stream_channel() argument
1551 return codec_send_command(codec, nid, AC_VERB_SET_CHANNEL_STREAMID, in codec_set_converter_stream_channel()
[all …]
H A Dvia.c3 * Universal Interface for Intel High Definition Audio Codec
5 * HD audio codec driver for VIA VT17xx/VT18xx/VT20xx codec
13 /* 2006-03-03 Lydia Wang Create the basic patch to support VT1708 codec */
15 /* 2006-08-02 Lydia Wang Add support to VT1709 codec */
18 /* 2007-09-17 Lydia Wang Add VT1708B codec support */
19 /* 2007-11-14 Lydia Wang Add VT1708A codec HP and CD pin connect config */
21 /* 2008-03-06 Lydia Wang Add VT1702 codec and VT1708S codec support */
95 static enum VIA_HDA_CODEC get_codec_type(struct hda_codec *codec);
97 struct hda_codec *codec,
101 static struct via_spec *via_new_spec(struct hda_codec *codec) in via_new_spec() argument
[all …]
H A Dsenarytech.c3 * HD audio codec driver for Senary HDA audio codec
63 static int senary_auto_parse_beep(struct hda_codec *codec) in senary_auto_parse_beep() argument
65 struct senary_spec *spec = codec->spec; in senary_auto_parse_beep()
68 for_each_hda_codec_node(nid, codec) in senary_auto_parse_beep()
69 if ((get_wcaps_type(get_wcaps(codec, nid)) == AC_WID_BEEP) && in senary_auto_parse_beep()
70 (get_wcaps(codec, nid) & (AC_WCAP_OUT_AMP | AC_WCAP_AMP_OVRD))) in senary_auto_parse_beep()
75 #define senary_auto_parse_beep(codec) 0 argument
79 static void senary_auto_parse_eapd(struct hda_codec *codec) in senary_auto_parse_eapd() argument
81 struct senary_spec *spec = codec->spec; in senary_auto_parse_eapd()
84 for_each_hda_codec_node(nid, codec) { in senary_auto_parse_eapd()
[all …]
H A Dconexant.c3 * HD audio codec driver for Conexant HDA audio codec
74 static int cx_auto_parse_beep(struct hda_codec *codec) in cx_auto_parse_beep() argument
76 struct conexant_spec *spec = codec->spec; in cx_auto_parse_beep()
79 for_each_hda_codec_node(nid, codec) in cx_auto_parse_beep()
80 if (get_wcaps_type(get_wcaps(codec, nid)) == AC_WID_BEEP) in cx_auto_parse_beep()
85 #define cx_auto_parse_beep(codec) 0 argument
93 static void cx_auto_parse_eapd(struct hda_codec *codec) in cx_auto_parse_eapd() argument
95 struct conexant_spec *spec = codec->spec; in cx_auto_parse_eapd()
98 for_each_hda_codec_node(nid, codec) { in cx_auto_parse_eapd()
99 if (get_wcaps_type(get_wcaps(codec, nid)) != AC_WID_PIN) in cx_auto_parse_eapd()
[all …]
/linux/drivers/media/pci/zoran/
H A Dvideocodec.c5 * Interface for MJPEG (and maybe later MPEG/WAVELETS) codec's
20 struct videocodec *codec; member
25 const struct videocodec *codec; member
42 struct videocodec *codec; in videocodec_attach() local
63 if ((master->flags & h->codec->flags) == master->flags) { in videocodec_attach()
64 zrdev_dbg(zr, "%s: try '%s'\n", __func__, h->codec->name); in videocodec_attach()
66 codec = kmemdup(h->codec, sizeof(struct videocodec), GFP_KERNEL); in videocodec_attach()
67 if (!codec) in videocodec_attach()
70 res = strlen(codec->name); in videocodec_attach()
71 snprintf(codec->name + res, sizeof(codec->name) - res, "[%d]", h->attached); in videocodec_attach()
[all …]
/linux/include/sound/
H A Dhda_codec.h3 * 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 preset
95 #define hda_codec_to_driver(codec) \ argument
96 container_of((codec)->core.dev.driver, struct hda_codec_driver, core.driver)
107 /* ops for hda codec driver */
109 int (*probe)(struct hda_codec *codec, const struct hda_device_id *id);
110 void (*remove)(struct hda_codec *codec);
[all …]
/linux/sound/soc/codecs/
H A DKconfig3 # modular, meaning we can't build the codec driver in with I2C support.
12 menu "CODEC drivers"
15 tristate "Build all ASoC CODEC drivers"
363 Normally ASoC codec drivers are only built if a machine driver which
427 tristate "Build generic ASoC AC97 CODEC driver"
464 tristate "Analog Devices ADAU1372 CODEC (I2C)"
470 tristate "Analog Devices ADAU1372 CODEC (SPI)"
476 tristate "Analog Devices ADAU1373 CODEC"
481 tristate "Analog Devices ADAU1701 CODEC"
495 tristate "Analog Devices AU1761 CODEC - I2C"
[all …]
H A Dhda.c16 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()
28 pcm = list_first_entry(&codec->pcm_list_head, struct hda_pcm, list); in hda_codec_create_dais()
83 static int hda_codec_register_dais(struct hda_codec *codec, struct snd_soc_component *component) in hda_codec_register_dais() argument
90 if (list_empty(&codec->pcm_list_head)) in hda_codec_register_dais()
92 list_for_each_entry(pcm, &codec->pcm_list_head, list) in hda_codec_register_dais()
95 ret = hda_codec_create_dais(codec, pcm_count, &drvs); in hda_codec_register_dais()
101 list_for_each_entry(pcm, &codec->pcm_list_head, list) { in hda_codec_register_dais()
124 static void hda_codec_unregister_dais(struct hda_codec *codec, in hda_codec_unregister_dais() argument
133 list_for_each_entry(pcm, &codec->pcm_list_head, list) { in hda_codec_unregister_dais()
[all …]
/linux/sound/hda/codecs/cirrus/
H A Dcs8409.c3 * HD audio codec driver for Cirrus Logic CS8409 HDA bridge chip
22 static int cs8409_parse_auto_config(struct hda_codec *codec) in cs8409_parse_auto_config() argument
24 struct cs8409_spec *spec = codec->spec; in cs8409_parse_auto_config()
28 err = snd_hda_parse_pin_defcfg(codec, &spec->gen.autocfg, NULL, 0); in cs8409_parse_auto_config()
32 err = snd_hda_gen_parse_auto_config(codec, &spec->gen.autocfg); in cs8409_parse_auto_config()
45 snd_hda_gen_fix_pin_power(codec, spec->gen.adc_nids[idx]); in cs8409_parse_auto_config()
55 static struct cs8409_spec *cs8409_alloc_spec(struct hda_codec *codec) in cs8409_alloc_spec() argument
62 codec->spec = spec; in cs8409_alloc_spec()
63 spec->codec = codec; in cs8409_alloc_spec()
64 codec->power_save_node = 1; in cs8409_alloc_spec()
[all …]

12345678910>>...88