Home
last modified time | relevance | path

Searched refs:codec (Results 1 – 25 of 149) sorted by relevance

123456

/sound/pci/hda/
Dhda_bind.c23 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
47 if (codec->bus->shutdown) in hda_codec_unsol_event()
50 if (codec->patch_ops.unsol_event) in hda_codec_unsol_event()
51 codec->patch_ops.unsol_event(codec, ev); in hda_codec_unsol_event()
59 int snd_hda_codec_set_name(struct hda_codec *codec, const char *name) in snd_hda_codec_set_name() argument
65 err = snd_hdac_device_set_chip_name(&codec->core, name); in snd_hda_codec_set_name()
[all …]
Dpatch_ca0132.c1025 struct hda_codec *codec; member
1191 static unsigned int codec_send_command(struct hda_codec *codec, hda_nid_t nid, in codec_send_command() argument
1195 response = snd_hda_codec_read(codec, nid, 0, verb, parm); in codec_send_command()
1201 static int codec_set_converter_format(struct hda_codec *codec, hda_nid_t nid, in codec_set_converter_format() argument
1204 return codec_send_command(codec, nid, VENDOR_CHIPIO_STREAM_FORMAT, in codec_set_converter_format()
1208 static int codec_set_converter_stream_channel(struct hda_codec *codec, in codec_set_converter_stream_channel() argument
1215 return codec_send_command(codec, nid, AC_VERB_SET_CHANNEL_STREAMID, in codec_set_converter_stream_channel()
1220 static int chipio_send(struct hda_codec *codec, in chipio_send() argument
1229 res = snd_hda_codec_read(codec, WIDGET_CHIP_CTRL, 0, in chipio_send()
1242 static int chipio_write_address(struct hda_codec *codec, in chipio_write_address() argument
[all …]
Dhda_codec.c27 #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()
52 err = snd_hdac_bus_exec_verb_unlocked(&bus->core, codec->core.addr, in codec_exec_verb()
[all …]
Dpatch_via.c92 static enum VIA_HDA_CODEC get_codec_type(struct hda_codec *codec);
94 struct hda_codec *codec,
100 static struct via_spec *via_new_spec(struct hda_codec *codec) in via_new_spec() argument
108 codec->spec = spec; in via_new_spec()
110 spec->codec_type = get_codec_type(codec); in via_new_spec()
118 codec->power_save_node = 1; in via_new_spec()
120 codec->patch_ops = via_patch_ops; in via_new_spec()
124 static enum VIA_HDA_CODEC get_codec_type(struct hda_codec *codec) in get_codec_type() argument
126 u32 vendor_id = codec->core.vendor_id; in get_codec_type()
142 if (snd_hda_param_read(codec, 0x16, AC_PAR_CONNLIST_LEN) == 0x7) in get_codec_type()
[all …]
Dpatch_realtek.c96 void (*init_hook)(struct hda_codec *codec);
98 void (*power_hook)(struct hda_codec *codec);
100 void (*shutup)(struct hda_codec *codec);
101 void (*reboot_notify)(struct hda_codec *codec);
123 static int alc_read_coefex_idx(struct hda_codec *codec, hda_nid_t nid, in alc_read_coefex_idx() argument
128 snd_hda_codec_write(codec, nid, 0, AC_VERB_SET_COEF_INDEX, coef_idx); in alc_read_coefex_idx()
129 val = snd_hda_codec_read(codec, nid, 0, AC_VERB_GET_PROC_COEF, 0); in alc_read_coefex_idx()
133 #define alc_read_coef_idx(codec, coef_idx) \ argument
134 alc_read_coefex_idx(codec, 0x20, coef_idx)
136 static void alc_write_coefex_idx(struct hda_codec *codec, hda_nid_t nid, in alc_write_coefex_idx() argument
[all …]
Dpatch_cirrus.c129 static inline int cs_vendor_coef_get(struct hda_codec *codec, unsigned int idx) in cs_vendor_coef_get() argument
131 struct cs_spec *spec = codec->spec; in cs_vendor_coef_get()
132 snd_hda_codec_write(codec, spec->vendor_nid, 0, in cs_vendor_coef_get()
134 return snd_hda_codec_read(codec, spec->vendor_nid, 0, in cs_vendor_coef_get()
138 static inline void cs_vendor_coef_set(struct hda_codec *codec, unsigned int idx, in cs_vendor_coef_set() argument
141 struct cs_spec *spec = codec->spec; in cs_vendor_coef_set()
142 snd_hda_codec_write(codec, spec->vendor_nid, 0, in cs_vendor_coef_set()
144 snd_hda_codec_write(codec, spec->vendor_nid, 0, in cs_vendor_coef_set()
154 static void cs_automute(struct hda_codec *codec) in cs_automute() argument
156 struct cs_spec *spec = codec->spec; in cs_automute()
[all …]
Dpatch_hdmi.c41 #define is_haswell(codec) ((codec)->core.vendor_id == 0x80862807) argument
42 #define is_broadwell(codec) ((codec)->core.vendor_id == 0x80862808) argument
43 #define is_skylake(codec) ((codec)->core.vendor_id == 0x80862809) argument
44 #define is_broxton(codec) ((codec)->core.vendor_id == 0x8086280a) argument
45 #define is_kabylake(codec) ((codec)->core.vendor_id == 0x8086280b) argument
46 #define is_geminilake(codec) (((codec)->core.vendor_id == 0x8086280d) || \ argument
47 ((codec)->core.vendor_id == 0x80862800))
48 #define is_cannonlake(codec) ((codec)->core.vendor_id == 0x8086280c) argument
49 #define is_icelake(codec) ((codec)->core.vendor_id == 0x8086280f) argument
50 #define is_tigerlake(codec) ((codec)->core.vendor_id == 0x80862812) argument
[all …]
Dpatch_analog.c49 static int create_beep_ctls(struct hda_codec *codec) in create_beep_ctls() argument
51 struct ad198x_spec *spec = codec->spec; in create_beep_ctls()
60 kctl = snd_ctl_new1(knew, codec); in create_beep_ctls()
64 err = snd_hda_ctl_add(codec, 0, kctl); in create_beep_ctls()
71 #define create_beep_ctls(codec) 0 argument
75 static void ad198x_power_eapd_write(struct hda_codec *codec, hda_nid_t front, in ad198x_power_eapd_write() argument
78 if (snd_hda_query_pin_caps(codec, front) & AC_PINCAP_EAPD) in ad198x_power_eapd_write()
79 snd_hda_codec_write(codec, front, 0, AC_VERB_SET_EAPD_BTLENABLE, in ad198x_power_eapd_write()
80 !codec->inv_eapd ? 0x00 : 0x02); in ad198x_power_eapd_write()
81 if (snd_hda_query_pin_caps(codec, hp) & AC_PINCAP_EAPD) in ad198x_power_eapd_write()
[all …]
Dhda_generic.c99 static void parse_user_hints(struct hda_codec *codec) in parse_user_hints() argument
101 struct hda_gen_spec *spec = codec->spec; in parse_user_hints()
104 val = snd_hda_get_bool_hint(codec, "jack_detect"); in parse_user_hints()
106 codec->no_jack_detect = !val; in parse_user_hints()
107 val = snd_hda_get_bool_hint(codec, "inv_jack_detect"); in parse_user_hints()
109 codec->inv_jack_detect = !!val; in parse_user_hints()
110 val = snd_hda_get_bool_hint(codec, "trigger_sense"); in parse_user_hints()
112 codec->no_trigger_sense = !val; in parse_user_hints()
113 val = snd_hda_get_bool_hint(codec, "inv_eapd"); in parse_user_hints()
115 codec->inv_eapd = !!val; in parse_user_hints()
[all …]
Dpatch_conexant.c74 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()
101 if (!(snd_hda_query_pin_caps(codec, nid) & AC_PINCAP_EAPD)) in cx_auto_parse_eapd()
[all …]
Dhda_jack.c29 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) in read_pin_sense() argument
51 if (!codec->no_trigger_sense) { in read_pin_sense()
52 pincap = snd_hda_query_pin_caps(codec, nid); in read_pin_sense()
54 snd_hda_codec_read(codec, nid, 0, in read_pin_sense()
[all …]
Dhda_proc.c22 #define param_read(codec, nid, parm) \ argument
23 snd_hdac_read_parm_uncached(&(codec)->core, nid, parm)
48 struct hda_codec *codec, hda_nid_t nid, in print_nid_array() argument
75 struct hda_codec *codec, hda_nid_t nid) in print_nid_pcms() argument
80 list_for_each_entry(cpcm, &codec->pcm_list_head, list) { in print_nid_pcms()
94 struct hda_codec *codec, hda_nid_t nid, int dir) in print_amp_caps() argument
97 caps = param_read(codec, nid, dir == HDA_OUTPUT ? in print_amp_caps()
112 static bool is_stereo_amps(struct hda_codec *codec, hda_nid_t nid, in is_stereo_amps() argument
126 if (snd_hda_get_raw_connections(codec, nid, &conn, 1) < 0) in is_stereo_amps()
129 wcaps = snd_hda_param_read(codec, conn, AC_PAR_AUDIO_WIDGET_CAP); in is_stereo_amps()
[all …]
Dpatch_sigmatel.c241 struct hda_codec *codec, in stac_playback_pcm_hook() argument
245 struct sigmatel_spec *spec = codec->spec; in stac_playback_pcm_hook()
251 struct hda_codec *codec, in stac_capture_pcm_hook() argument
255 struct sigmatel_spec *spec = codec->spec; in stac_capture_pcm_hook()
271 snd_hda_codec_write(codec, hinfo->nid, 0, in stac_capture_pcm_hook()
276 snd_hda_codec_write(codec, hinfo->nid, 0, in stac_capture_pcm_hook()
288 static void stac_gpio_set(struct hda_codec *codec, unsigned int mask, in stac_gpio_set() argument
292 hda_nid_t fg = codec->core.afg; in stac_gpio_set()
294 codec_dbg(codec, "%s msk %x dir %x gpio %x\n", __func__, mask, dir_mask, data); in stac_gpio_set()
296 gpiostate = snd_hda_codec_read(codec, fg, 0, in stac_gpio_set()
[all …]
Dhda_local.h117 #define snd_hda_codec_amp_read(codec, nid, ch, dir, idx) \ argument
118 snd_hdac_regmap_get_amp(&(codec)->core, nid, ch, dir, idx)
119 int snd_hda_codec_amp_update(struct hda_codec *codec, hda_nid_t nid,
121 int snd_hda_codec_amp_stereo(struct hda_codec *codec, hda_nid_t nid,
123 int snd_hda_codec_amp_init(struct hda_codec *codec, hda_nid_t nid, int ch,
125 int snd_hda_codec_amp_init_stereo(struct hda_codec *codec, hda_nid_t nid,
127 void snd_hda_set_vmaster_tlv(struct hda_codec *codec, hda_nid_t nid, int dir,
129 struct snd_kcontrol *snd_hda_find_mixer_ctl(struct hda_codec *codec,
131 int __snd_hda_add_vmaster(struct hda_codec *codec, char *name,
135 #define snd_hda_add_vmaster(codec, name, tlv, slaves, suffix) \ argument
[all …]
Dpatch_si3054.c64 #define GET_REG(codec,reg) (snd_hda_codec_read(codec,reg,0,SI3054_VERB_READ_NODE,0)) argument
65 #define SET_REG(codec,reg,val) (snd_hda_codec_write(codec,reg,0,SI3054_VERB_WRITE_NODE,val)) argument
66 #define SET_REG_CACHE(codec,reg,val) \ argument
67 snd_hda_codec_write_cache(codec,reg,0,SI3054_VERB_WRITE_NODE,val)
88 struct hda_codec *codec = snd_kcontrol_chip(kcontrol); in si3054_switch_get() local
91 uvalue->value.integer.value[0] = (GET_REG(codec, reg)) & mask ? 1 : 0 ; in si3054_switch_get()
98 struct hda_codec *codec = snd_kcontrol_chip(kcontrol); in si3054_switch_put() local
102 SET_REG_CACHE(codec, reg, (GET_REG(codec, reg)) | mask); in si3054_switch_put()
104 SET_REG_CACHE(codec, reg, (GET_REG(codec, reg)) & ~mask); in si3054_switch_put()
125 static int si3054_build_controls(struct hda_codec *codec) in si3054_build_controls() argument
[all …]
Dhda_auto_parser.c56 static void add_auto_cfg_input_pin(struct hda_codec *codec, struct auto_pin_cfg *cfg, in add_auto_cfg_input_pin() argument
63 nid_has_volume(codec, nid, HDA_INPUT); in add_auto_cfg_input_pin()
102 static bool check_pincap_validity(struct hda_codec *codec, hda_nid_t pin, in check_pincap_validity() argument
105 unsigned int pincap = snd_hda_query_pin_caps(codec, pin); in check_pincap_validity()
123 static bool can_be_headset_mic(struct hda_codec *codec, in can_be_headset_mic() argument
135 def_conf = snd_hda_codec_get_pincfg(codec, item->pin); in can_be_headset_mic()
166 int snd_hda_parse_pin_defcfg(struct hda_codec *codec, in snd_hda_parse_pin_defcfg() argument
178 if (!snd_hda_get_int_hint(codec, "parser_flags", &i)) in snd_hda_parse_pin_defcfg()
188 for_each_hda_codec_node(nid, codec) { in snd_hda_parse_pin_defcfg()
189 unsigned int wid_caps = get_wcaps(codec, nid); in snd_hda_parse_pin_defcfg()
[all …]
Dhda_sysfs.c34 struct hda_codec *codec = dev_get_drvdata(dev); in power_on_acct_show() local
35 snd_hda_update_power_acct(codec); in power_on_acct_show()
36 return sprintf(buf, "%u\n", jiffies_to_msecs(codec->power_on_acct)); in power_on_acct_show()
43 struct hda_codec *codec = dev_get_drvdata(dev); in power_off_acct_show() local
44 snd_hda_update_power_acct(codec); in power_off_acct_show()
45 return sprintf(buf, "%u\n", jiffies_to_msecs(codec->power_off_acct)); in power_off_acct_show()
57 struct hda_codec *codec = dev_get_drvdata(dev); \
58 return sprintf(buf, "0x%x\n", codec->field); \
66 struct hda_codec *codec = dev_get_drvdata(dev); \
68 codec->field ? codec->field : ""); \
[all …]
DMakefile5 snd-hda-codec-y := hda_bind.o hda_codec.o hda_jack.o hda_auto_parser.o hda_sysfs.o
6 snd-hda-codec-y += hda_controller.o
7 snd-hda-codec-$(CONFIG_SND_PROC_FS) += hda_proc.o
9 snd-hda-codec-$(CONFIG_SND_HDA_HWDEP) += hda_hwdep.o
10 snd-hda-codec-$(CONFIG_SND_HDA_INPUT_BEEP) += hda_beep.o
16 snd-hda-codec-generic-objs := hda_generic.o
17 snd-hda-codec-realtek-objs := patch_realtek.o
18 snd-hda-codec-cmedia-objs := patch_cmedia.o
19 snd-hda-codec-analog-objs := patch_analog.o
20 snd-hda-codec-idt-objs := patch_sigmatel.o
[all …]
Dhda_beep.c26 struct hda_codec *codec = beep->codec; in generate_tone() local
29 snd_hda_power_up(codec); in generate_tone()
34 snd_hda_codec_write(codec, beep->nid, 0, in generate_tone()
40 snd_hda_power_down(codec); in generate_tone()
135 int snd_hda_enable_beep_device(struct hda_codec *codec, int enable) in snd_hda_enable_beep_device() argument
137 struct hda_beep *beep = codec->beep; in snd_hda_enable_beep_device()
178 beep->codec->beep = NULL; in beep_dev_free()
193 int snd_hda_attach_beep_device(struct hda_codec *codec, int nid) in snd_hda_attach_beep_device() argument
204 if (!snd_hda_get_bool_hint(codec, "beep")) in snd_hda_attach_beep_device()
206 if (codec->beep_mode == HDA_BEEP_MODE_OFF) in snd_hda_attach_beep_device()
[all …]
Dhda_hwdep.c21 static int verb_write_ioctl(struct hda_codec *codec, in verb_write_ioctl() argument
28 res = snd_hda_codec_read(codec, verb >> 24, 0, in verb_write_ioctl()
35 static int get_wcap_ioctl(struct hda_codec *codec, in get_wcap_ioctl() argument
44 if (verb < codec->core.start_nid || in get_wcap_ioctl()
45 verb >= codec->core.start_nid + codec->core.num_nodes) { in get_wcap_ioctl()
48 verb -= codec->core.start_nid; in get_wcap_ioctl()
49 verb = array_index_nospec(verb, codec->core.num_nodes); in get_wcap_ioctl()
50 res = codec->wcaps[verb]; in get_wcap_ioctl()
63 struct hda_codec *codec = hw->private_data; in hda_hwdep_ioctl() local
70 return verb_write_ioctl(codec, argp); in hda_hwdep_ioctl()
[all …]
/sound/pci/ali5451/
Dali5451.c142 #define ALI_REG(codec, x) ((codec)->port + x) argument
181 struct snd_ali *codec; member
267 static inline unsigned int snd_ali_5451_peek(struct snd_ali *codec, in snd_ali_5451_peek() argument
270 return (unsigned int)inl(ALI_REG(codec, port)); in snd_ali_5451_peek()
273 static inline void snd_ali_5451_poke(struct snd_ali *codec, in snd_ali_5451_poke() argument
277 outl((unsigned int)val, ALI_REG(codec, port)); in snd_ali_5451_poke()
280 static int snd_ali_codec_ready(struct snd_ali *codec, in snd_ali_codec_ready() argument
289 res = snd_ali_5451_peek(codec,port); in snd_ali_codec_ready()
297 snd_ali_5451_poke(codec, port, res & ~0x8000); in snd_ali_codec_ready()
298 dev_dbg(codec->card->dev, "ali_codec_ready: codec is not ready.\n "); in snd_ali_codec_ready()
[all …]
/sound/hda/
Dhdac_device.c18 static void setup_fg_nodes(struct hdac_device *codec);
19 static int get_codec_vendor_name(struct hdac_device *codec);
40 int snd_hdac_device_init(struct hdac_device *codec, struct hdac_bus *bus, in snd_hdac_device_init() argument
47 dev = &codec->dev; in snd_hdac_device_init()
56 codec->bus = bus; in snd_hdac_device_init()
57 codec->addr = addr; in snd_hdac_device_init()
58 codec->type = HDA_DEV_CORE; in snd_hdac_device_init()
59 mutex_init(&codec->widget_lock); in snd_hdac_device_init()
60 pm_runtime_set_active(&codec->dev); in snd_hdac_device_init()
61 pm_runtime_get_noresume(&codec->dev); in snd_hdac_device_init()
[all …]
Dhdac_regmap.c26 static int codec_pm_lock(struct hdac_device *codec) in codec_pm_lock() argument
28 return snd_hdac_keep_power_up(codec); in codec_pm_lock()
31 static void codec_pm_unlock(struct hdac_device *codec, int lock) in codec_pm_unlock() argument
34 snd_hdac_power_down_pm(codec); in codec_pm_unlock()
41 struct hdac_device *codec = dev_to_hdac_dev(dev); in hda_volatile_reg() local
46 return !codec->cache_coef; in hda_volatile_reg()
68 struct hdac_device *codec = dev_to_hdac_dev(dev); in hda_writeable_reg() local
73 snd_array_for_each(&codec->vendor_verbs, i, v) { in hda_writeable_reg()
78 if (codec->caps_overwriting) in hda_writeable_reg()
86 return codec->cache_coef; in hda_writeable_reg()
[all …]
Dhdac_sysfs.c24 struct hdac_device *codec = dev_to_hdac_dev(dev); \
25 return sprintf(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 …]
/sound/aoa/core/
Dcore.c57 int aoa_codec_register(struct aoa_codec *codec) in aoa_codec_register() argument
65 err = attach_codec_to_fabric(codec); in aoa_codec_register()
67 list_add(&codec->list, &codec_list); in aoa_codec_register()
72 void aoa_codec_unregister(struct aoa_codec *codec) in aoa_codec_unregister() argument
74 list_del(&codec->list); in aoa_codec_unregister()
75 if (codec->fabric && codec->exit) in aoa_codec_unregister()
76 codec->exit(codec); in aoa_codec_unregister()
78 fabric->remove_codec(codec); in aoa_codec_unregister()
79 codec->fabric = NULL; in aoa_codec_unregister()
80 module_put(codec->owner); in aoa_codec_unregister()
[all …]

123456