/Linux-v5.10/sound/pci/hda/ |
D | hda_bind.c | 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 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() [all …]
|
D | hda_codec.c | 3 * 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 …]
|
D | hda_generic.c | 3 * Universal Interface for Intel High Definition Audio Codec 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() [all …]
|
D | patch_via.c | 3 * Universal Interface for Intel High Definition Audio Codec 5 * HD audio interface patch 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 */ 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 [all …]
|
D | hda_jack.c | 21 * @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 …]
|
D | patch_ca0132.c | 1101 struct hda_codec *codec; member 1476 * CA0132 codec access 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() [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 | hda_sysfs.c | 3 * sysfs interface for HD-audio codec 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); \ [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 …]
|
D | hda_local.h | 3 * Universal Interface for Intel High Definition Audio Codec 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, [all …]
|
D | patch_si3054.c | 3 * Universal Interface for Intel High Definition Audio Codec 5 * HD audio interface patch for Silicon Labs 3054/5 modem codec 63 /* si3054 codec registers (nodes) access macros */ 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 [all …]
|
D | hda_jack.h | 54 snd_hda_jack_tbl_get_mst(struct hda_codec *codec, hda_nid_t nid, int dev_id); 58 * @codec: the HDA codec 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, 84 * @codec: the HDA codec [all …]
|
D | patch_conexant.c | 3 * HD audio interface patch 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 …]
|
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 | 3 * Universal Interface for Intel High Definition Audio Codec 80 /* codec parameterization */ 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 [all …]
|
D | hda_proc.c | 3 * Universal Interface for Intel High Definition Audio Codec 19 MODULE_PARM_DESC(dump_coef, "Dump processing coefficients in codec proc file (-1=auto, 0=disable, 1… 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 [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 …]
|
/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 | 3 * HD-audio codec core device 18 static void setup_fg_nodes(struct hdac_device *codec); 19 static int get_codec_vendor_name(struct hdac_device *codec); 27 * snd_hdac_device_init - initialize the HD-audio codec base device 28 * @codec: device to initialize 31 * @addr: codec address 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() [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/Documentation/devicetree/bindings/pinctrl/ |
D | cirrus,lochnagar.yaml | 14 Smart CODEC and Amp devices. It allows the connection of most Cirrus 81 enum: [ codec-aif1, codec-aif2, codec-aif3, dsp-aif1, 91 fpga-gpio5, fpga-gpio6, codec-gpio1, codec-gpio2, 92 codec-gpio3, codec-gpio4, codec-gpio5, codec-gpio6, 93 codec-gpio7, codec-gpio8, dsp-gpio1, dsp-gpio2, 95 gf-gpio2, gf-gpio3, gf-gpio7, codec-aif1-bclk, 96 codec-aif1-rxdat, codec-aif1-lrclk, codec-aif1-txdat, 97 codec-aif2-bclk, codec-aif2-rxdat, codec-aif2-lrclk, 98 codec-aif2-txdat, codec-aif3-bclk, codec-aif3-rxdat, 99 codec-aif3-lrclk, codec-aif3-txdat, dsp-aif1-bclk, [all …]
|
/Linux-v5.10/include/sound/ |
D | hda_codec.h | 3 * Universal Interface for Intel High Definition Audio Codec 35 * codec bus 55 /* status for codec/controller */ 64 unsigned int mixer_assigned; /* codec addr for mixer name */ 71 * codec preset 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); [all …]
|
/Linux-v5.10/sound/soc/codecs/ |
D | Kconfig | 3 # modular, meaning we can't build the codec driver in with I2C support. 12 menu "CODEC drivers" 15 tristate "Build all ASoC CODEC drivers" 283 Normally ASoC codec drivers are only built if a machine driver which 334 tristate "Build generic ASoC AC97 CODEC driver" 372 tristate "Analog Devices ADAU1701 CODEC" 386 tristate "Analog Devices AU1761 CODEC - I2C" 392 tristate "Analog Devices AU1761 CODEC - SPI" 475 tristate "AKM AK4104 CODEC" 479 tristate "AKM AK4118 CODEC" [all …]
|
/Linux-v5.10/drivers/staging/media/zoran/ |
D | videocodec.c | 5 * Interface for MJPEG (and maybe later MPEG/WAVELETS) codec's 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() [all …]
|