/linux-6.12.1/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() 51 if (codec->core.dev.power.power_state.event != PM_EVENT_ON) in hda_codec_unsol_event() 54 if (codec->patch_ops.unsol_event) 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 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 …]
|
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_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 | patch_hdmi.c | 78 struct hda_codec *codec; member 99 int (*pin_get_eld)(struct hda_codec *codec, hda_nid_t pin_nid, 102 void (*pin_setup_infoframe)(struct hda_codec *codec, hda_nid_t pin_nid, 107 int (*pin_hbr_setup)(struct hda_codec *codec, hda_nid_t pin_nid, 110 int (*setup_stream)(struct hda_codec *codec, hda_nid_t cvt_nid, 114 void (*pin_cvt_fixup)(struct hda_codec *codec, 132 struct hda_codec *codec; member 172 /* hdmi interrupt trigger control flag for Nvidia codec */ 197 static inline bool codec_has_acomp(struct hda_codec *codec) in codec_has_acomp() argument 199 struct hdmi_spec *spec = codec->spec; in codec_has_acomp() [all …]
|
D | patch_ca0132.c | 1135 struct hda_codec *codec; member 1513 * CA0132 codec access 1515 static unsigned int codec_send_command(struct hda_codec *codec, hda_nid_t nid, in codec_send_command() argument 1519 response = snd_hda_codec_read(codec, nid, 0, verb, parm); in codec_send_command() 1525 static int codec_set_converter_format(struct hda_codec *codec, hda_nid_t nid, in codec_set_converter_format() argument 1528 return codec_send_command(codec, nid, VENDOR_CHIPIO_STREAM_FORMAT, in codec_set_converter_format() 1532 static int codec_set_converter_stream_channel(struct hda_codec *codec, in codec_set_converter_stream_channel() argument 1539 return codec_send_command(codec, nid, AC_VERB_SET_CHANNEL_STREAMID, in codec_set_converter_stream_channel() 1544 static int chipio_send(struct hda_codec *codec, in chipio_send() argument 1553 res = snd_hda_codec_read(codec, WIDGET_CHIP_CTRL, 0, in chipio_send() [all …]
|
D | patch_senarytech.c | 3 * HD audio interface patch 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 …]
|
D | hda_sysfs.c | 3 * 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 …]
|
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_cs8409.c | 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() 72 static inline int cs8409_vendor_coef_get(struct hda_codec *codec, unsigned int idx) in cs8409_vendor_coef_get() argument [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_cmedia.c | 3 * Universal Interface for Intel High Definition Audio Codec 48 struct hda_codec *codec; member 127 hp_jack_plugin = snd_hda_jack_detect(spec->codec, hp_pin); in cm9825_unsol_hp_delayed() 129 codec_dbg(spec->codec, "hp_jack_plugin %d, hp_pin 0x%X\n", in cm9825_unsol_hp_delayed() 134 snd_hda_codec_write(spec->codec, 0x42, 0, in cm9825_unsol_hp_delayed() 137 codec_dbg(spec->codec, "codec_write err %d\n", err); in cm9825_unsol_hp_delayed() 139 snd_hda_sequence_write(spec->codec, spec->chip_hp_remove_verbs); in cm9825_unsol_hp_delayed() 141 snd_hda_sequence_write(spec->codec, in cm9825_unsol_hp_delayed() 145 jack = snd_hda_jack_tbl_get(spec->codec, hp_pin); in cm9825_unsol_hp_delayed() 148 snd_hda_jack_report_sync(spec->codec); in cm9825_unsol_hp_delayed() [all …]
|
D | hda_jack.h | 55 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 …]
|
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 | Kconfig | 24 to choose the appropriate codec options below. 56 bool "Allow dynamic codec reconfiguration" 58 Say Y here to enable the HD-audio codec re-configuration feature. 59 It allows user to clear the whole codec configuration, change the 60 codec setup, add extra verbs, and re-configure the codec dynamically. 98 tristate "KUnit test for Cirrus side-codec library" if !KUNIT_ALL_TESTS 104 This builds KUnit tests for the cirrus side-codec library. 123 tristate "Build CS35L41 HD-audio side codec support for I2C Bus" 133 Say Y or M here to include CS35L41 I2C HD-audio side codec support 136 comment "Set to Y if you want auto-loading the side codec driver" [all …]
|
/linux-6.12.1/sound/pci/ali5451/ |
D | ali5451.c | 141 #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-6.12.1/sound/hda/ |
D | hdac_regmap.c | 25 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 …]
|
D | hdac_device.c | 3 * 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 …]
|
D | hdac_sysfs.c | 24 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-6.12.1/Documentation/devicetree/bindings/pinctrl/ |
D | cirrus,lochnagar.yaml | 14 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-6.12.1/drivers/media/pci/zoran/ |
D | videocodec.c | 5 * 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-6.12.1/include/sound/ |
D | hda_codec.h | 3 * Universal Interface for Intel High Definition Audio Codec 32 * codec bus 52 /* 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-6.12.1/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" 353 Normally ASoC codec drivers are only built if a machine driver which 415 tristate "Build generic ASoC AC97 CODEC driver" 452 tristate "Analog Devices ADAU1372 CODEC (I2C)" 458 tristate "Analog Devices ADAU1372 CODEC (SPI)" 469 tristate "Analog Devices ADAU1701 CODEC" 483 tristate "Analog Devices AU1761 CODEC - I2C" 489 tristate "Analog Devices AU1761 CODEC - SPI" [all …]
|
D | hda.c | 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() 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 …]
|