/Linux-v5.10/sound/pci/hda/ |
D | hda_bind.c | 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 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 …]
|
D | patch_ca0132.c | 1101 struct hda_codec *codec; member 1478 static unsigned int codec_send_command(struct hda_codec *codec, hda_nid_t nid, in codec_send_command() argument 1482 response = snd_hda_codec_read(codec, nid, 0, verb, parm); in codec_send_command() 1488 static int codec_set_converter_format(struct hda_codec *codec, hda_nid_t nid, in codec_set_converter_format() argument 1491 return codec_send_command(codec, nid, VENDOR_CHIPIO_STREAM_FORMAT, in codec_set_converter_format() 1495 static int codec_set_converter_stream_channel(struct hda_codec *codec, in codec_set_converter_stream_channel() argument 1502 return codec_send_command(codec, nid, AC_VERB_SET_CHANNEL_STREAMID, in codec_set_converter_stream_channel() 1507 static int chipio_send(struct hda_codec *codec, in chipio_send() argument 1516 res = snd_hda_codec_read(codec, WIDGET_CHIP_CTRL, 0, in chipio_send() 1529 static int chipio_write_address(struct hda_codec *codec, in chipio_write_address() argument [all …]
|
D | hda_codec.c | 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() 52 err = snd_hdac_bus_exec_verb_unlocked(&bus->core, codec->core.addr, in codec_exec_verb() [all …]
|
D | patch_via.c | 92 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 …]
|
D | patch_cirrus.c | 129 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 …]
|
D | patch_realtek.c | 107 void (*init_hook)(struct hda_codec *codec); 109 void (*power_hook)(struct hda_codec *codec); 111 void (*shutup)(struct hda_codec *codec); 112 void (*reboot_notify)(struct hda_codec *codec); 136 static int alc_read_coefex_idx(struct hda_codec *codec, hda_nid_t nid, in alc_read_coefex_idx() argument 141 snd_hda_codec_write(codec, nid, 0, AC_VERB_SET_COEF_INDEX, coef_idx); in alc_read_coefex_idx() 142 val = snd_hda_codec_read(codec, nid, 0, AC_VERB_GET_PROC_COEF, 0); in alc_read_coefex_idx() 146 #define alc_read_coef_idx(codec, coef_idx) \ argument 147 alc_read_coefex_idx(codec, 0x20, coef_idx) 149 static void alc_write_coefex_idx(struct hda_codec *codec, hda_nid_t nid, in alc_write_coefex_idx() argument [all …]
|
D | hda_generic.c | 99 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 …]
|
D | patch_hdmi.c | 73 struct hda_codec *codec; member 92 int (*pin_get_eld)(struct hda_codec *codec, hda_nid_t pin_nid, 95 void (*pin_setup_infoframe)(struct hda_codec *codec, hda_nid_t pin_nid, 100 int (*pin_hbr_setup)(struct hda_codec *codec, hda_nid_t pin_nid, 103 int (*setup_stream)(struct hda_codec *codec, hda_nid_t cvt_nid, 107 void (*pin_cvt_fixup)(struct hda_codec *codec, 119 struct hda_codec *codec; member 180 static inline bool codec_has_acomp(struct hda_codec *codec) in codec_has_acomp() argument 182 struct hdmi_spec *spec = codec->spec; in codec_has_acomp() 186 #define codec_has_acomp(codec) false argument [all …]
|
D | patch_analog.c | 50 static int create_beep_ctls(struct hda_codec *codec) in create_beep_ctls() argument 52 struct ad198x_spec *spec = codec->spec; in create_beep_ctls() 61 kctl = snd_ctl_new1(knew, codec); in create_beep_ctls() 65 err = snd_hda_ctl_add(codec, 0, kctl); in create_beep_ctls() 72 #define create_beep_ctls(codec) 0 argument 76 static void ad198x_power_eapd_write(struct hda_codec *codec, hda_nid_t front, in ad198x_power_eapd_write() argument 79 if (snd_hda_query_pin_caps(codec, front) & AC_PINCAP_EAPD) in ad198x_power_eapd_write() 80 snd_hda_codec_write(codec, front, 0, AC_VERB_SET_EAPD_BTLENABLE, in ad198x_power_eapd_write() 81 !codec->inv_eapd ? 0x00 : 0x02); in ad198x_power_eapd_write() 82 if (snd_hda_query_pin_caps(codec, hp) & AC_PINCAP_EAPD) in ad198x_power_eapd_write() [all …]
|
D | patch_conexant.c | 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() 101 if (!(snd_hda_query_pin_caps(codec, nid) & AC_PINCAP_EAPD)) in cx_auto_parse_eapd() [all …]
|
D | hda_jack.c | 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() 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 …]
|
D | hda_local.h | 117 #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, followers, suffix) \ argument [all …]
|
D | hda_proc.c | 22 #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 …]
|
D | patch_sigmatel.c | 241 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 …]
|
D | patch_si3054.c | 64 #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 …]
|
D | hda_auto_parser.c | 56 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() 108 static bool check_pincap_validity(struct hda_codec *codec, hda_nid_t pin, in check_pincap_validity() argument 111 unsigned int pincap = snd_hda_query_pin_caps(codec, pin); in check_pincap_validity() 129 static bool can_be_headset_mic(struct hda_codec *codec, in can_be_headset_mic() argument 141 def_conf = snd_hda_codec_get_pincfg(codec, item->pin); in can_be_headset_mic() 172 int snd_hda_parse_pin_defcfg(struct hda_codec *codec, in snd_hda_parse_pin_defcfg() argument 184 if (!snd_hda_get_int_hint(codec, "parser_flags", &i)) in snd_hda_parse_pin_defcfg() 194 for_each_hda_codec_node(nid, codec) { in snd_hda_parse_pin_defcfg() 195 unsigned int wid_caps = get_wcaps(codec, nid); in snd_hda_parse_pin_defcfg() [all …]
|
D | hda_sysfs.c | 34 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 …]
|
D | hda_jack.h | 54 snd_hda_jack_tbl_get_mst(struct hda_codec *codec, hda_nid_t nid, int dev_id); 62 snd_hda_jack_tbl_get(struct hda_codec *codec, hda_nid_t nid) in snd_hda_jack_tbl_get() argument 64 return snd_hda_jack_tbl_get_mst(codec, nid, 0); in snd_hda_jack_tbl_get() 68 snd_hda_jack_tbl_get_from_tag(struct hda_codec *codec, 71 void snd_hda_jack_tbl_clear(struct hda_codec *codec); 73 void snd_hda_jack_set_dirty_all(struct hda_codec *codec); 75 int snd_hda_jack_detect_enable(struct hda_codec *codec, hda_nid_t nid, 79 snd_hda_jack_detect_enable_callback_mst(struct hda_codec *codec, hda_nid_t nid, 93 snd_hda_jack_detect_enable_callback(struct hda_codec *codec, hda_nid_t nid, in snd_hda_jack_detect_enable_callback() argument 96 return snd_hda_jack_detect_enable_callback_mst(codec, nid, 0, cb); in snd_hda_jack_detect_enable_callback() [all …]
|
D | Makefile | 5 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 …]
|
/Linux-v5.10/sound/pci/ali5451/ |
D | ali5451.c | 142 #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 …]
|
/Linux-v5.10/sound/hda/ |
D | hdac_device.c | 18 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 mutex_init(&codec->regmap_lock); in snd_hdac_device_init() 61 pm_runtime_set_active(&codec->dev); in snd_hdac_device_init() [all …]
|
D | hdac_regmap.c | 26 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 …]
|
D | hdac_sysfs.c | 24 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 …]
|
/Linux-v5.10/drivers/staging/media/zoran/ |
D | videocodec.c | 40 struct videocodec *codec; member 45 const struct videocodec *codec; member 61 struct videocodec *codec; in videocodec_attach() local 80 if ((master->flags & h->codec->flags) == master->flags) { in videocodec_attach() 81 dprintk(4, "%s: try '%s'\n", __func__, h->codec->name); in videocodec_attach() 83 if (!try_module_get(h->codec->owner)) in videocodec_attach() 86 codec = kmemdup(h->codec, sizeof(struct videocodec), GFP_KERNEL); in videocodec_attach() 87 if (!codec) in videocodec_attach() 90 res = strlen(codec->name); in videocodec_attach() 91 snprintf(codec->name + res, sizeof(codec->name) - res, "[%d]", h->attached); in videocodec_attach() [all …]
|
/Linux-v5.10/include/sound/ |
D | hda_codec.h | 105 int (*build_controls)(struct hda_codec *codec); 106 int (*build_pcms)(struct hda_codec *codec); 107 int (*init)(struct hda_codec *codec); 108 void (*free)(struct hda_codec *codec); 109 void (*unsol_event)(struct hda_codec *codec, unsigned int res); 110 void (*set_power_state)(struct hda_codec *codec, hda_nid_t fg, 113 int (*suspend)(struct hda_codec *codec); 114 int (*resume)(struct hda_codec *codec); 115 int (*check_power_status)(struct hda_codec *codec, hda_nid_t nid); 117 void (*reboot_notify)(struct hda_codec *codec); [all …]
|