Home
last modified time | relevance | path

Searched +full:codec +full:- (Results 1 – 25 of 1041) sorted by relevance

12345678910>>...42

/openbmc/linux/sound/pci/hda/
H A Dhda_bind.c1 // SPDX-License-Identifier: GPL-2.0-only
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()
31 for (list = driver->id; list->vendor_id; list++) { in hda_codec_match()
32 if (list->vendor_id == id && in hda_codec_match()
33 (!list->rev_id || list->rev_id == rev_id)) { in hda_codec_match()
34 codec->preset = list; in hda_codec_match()
[all …]
H A Dhda_codec.c1 // SPDX-License-Identifier: GPL-2.0-or-later
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)
35 * Send and receive a verb - passed to exec_verb override for hdac_device
40 struct hda_codec *codec = container_of(dev, struct hda_codec, core); in codec_exec_verb() local
[all …]
H A Dhda_generic.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Universal Interface for Intel High Definition Audio Codec
32 * snd_hda_gen_spec_init - initialize hda_gen_spec struct
39 snd_array_init(&spec->kctls, sizeof(struct snd_kcontrol_new), 32); in snd_hda_gen_spec_init()
40 snd_array_init(&spec->paths, sizeof(struct nid_path), 8); in snd_hda_gen_spec_init()
41 snd_array_init(&spec->loopback_list, sizeof(struct hda_amp_list), 8); in snd_hda_gen_spec_init()
42 mutex_init(&spec->pcm_mutex); in snd_hda_gen_spec_init()
48 * snd_hda_gen_add_kctl - Add a new kctl_new struct from the template
62 struct snd_kcontrol_new *knew = snd_array_new(&spec->kctls); in snd_hda_gen_add_kctl()
67 knew->name = kstrdup(name, GFP_KERNEL); in snd_hda_gen_add_kctl()
[all …]
H A Dhda_jack.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Jack-detection handling for HD-audio
20 * is_jack_detectable - Check whether the given pin is jack-detectable
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()
[all …]
H A Dpatch_via.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Universal Interface for Intel High Definition Audio Codec
5 * HD audio interface patch for VIA VT17xx/VT18xx/VT20xx codec
7 * (C) 2006-2009 VIA Technology, Inc.
8 * (C) 2006-2008 Takashi Iwai <tiwai@suse.de>
13 /* 2006-03-03 Lydia Wang Create the basic patch to support VT1708 codec */
14 /* 2006-03-14 Lydia Wang Modify hard code for some pin widget nid */
15 /* 2006-08-02 Lydia Wang Add support to VT1709 codec */
16 /* 2006-09-08 Lydia Wang Fix internal loopback recording source select bug */
17 /* 2007-09-12 Lydia Wang Add EAPD enable during driver initialization */
[all …]
H A Dpatch_hdmi.c1 // SPDX-License-Identifier: GPL-2.0-or-later
4 * patch_hdmi.c - routines for HDMI/DisplayPort codecs
6 * Copyright(c) 2008-2010 Intel Corporation. All rights reserved.
78 struct hda_codec *codec; member
82 struct hdmi_pcm *pcm; /* pointer to spec->pcm_rec[n] dynamically*/
83 int pcm_idx; /* which pcm is attached. -1 means no pcm is attached */
90 bool chmap_set; /* channel-map override by ALSA API? */
91 unsigned char chmap[8]; /* ALSA API channel-map */
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,
[all …]
H A Dpatch_ca0132.c1 // SPDX-License-Identifier: GPL-2.0-or-later
74 #define DESKTOP_EFX_FILE "ctefx-desktop.bin"
75 #define R3DI_EFX_FILE "ctefx-r3di.bin"
115 #define VNODES_COUNT (VNODE_END_NID - VNODE_START_NID)
126 #define OUT_EFFECTS_COUNT (OUT_EFFECT_END_NID - OUT_EFFECT_START_NID)
134 #define IN_EFFECTS_COUNT (IN_EFFECT_END_NID - IN_EFFECT_START_NID)
154 #define EFFECTS_COUNT (EFFECT_END_NID - EFFECT_START_NID)
163 * X-bass.
182 int params; /* number of default non-on/off params */
223 { .name = "X-Bass",
[all …]
H A Dhda_sysfs.c1 // SPDX-License-Identifier: GPL-2.0-only
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 sysfs_emit(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 sysfs_emit(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 sysfs_emit(buf, "0x%x\n", codec->field); \
[all …]
H A Dhda_local.h1 /* SPDX-License-Identifier: GPL-2.0-or-later */
3 * Universal Interface for Intel High Definition Audio Codec
15 * snd_hda_ctl_add() takes the lower-bit subdev value as a valid NID.
83 /* no digital beep - just the standard one */
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,
[all …]
H A Dpatch_cs8409.c1 // SPDX-License-Identifier: GPL-2.0-or-later
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()
37 if (spec->gen.dyn_adc_switch) { in cs8409_parse_auto_config()
40 for (i = 0; i < spec->gen.input_mux.num_items; i++) { in cs8409_parse_auto_config()
41 int idx = spec->gen.dyn_adc_idx[i]; 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
[all …]
H A Dpatch_conexant.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * HD audio interface patch for Conexant HDA audio codec
7 * Tobin Davis <tdavis@dsl-only.net>
63 spec->gen.beep_nid = nid; in set_beep_amp()
65 knew = snd_hda_gen_add_kctl(&spec->gen, NULL, in set_beep_amp()
68 return -ENOMEM; in set_beep_amp()
69 knew->private_value = beep_amp; in set_beep_amp()
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()
[all …]
H A Dhda_jack.h1 /* SPDX-License-Identifier: GPL-2.0-or-later */
3 * Jack-detection handling for HD-audio
35 /* jack-detection stuff */
36 unsigned int pin_sense; /* cached pin-sense value */
37 unsigned int jack_detect:1; /* capable of jack-detection? */
40 unsigned int block_report:1; /* in a transitional state - do not report to userspace */
55 snd_hda_jack_tbl_get_mst(struct hda_codec *codec, hda_nid_t nid, int dev_id);
58 * snd_hda_jack_tbl_get - query the jack-table entry for the given NID
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
[all …]
H A Dpatch_si3054.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Universal Interface for Intel High Definition Audio Codec
5 * HD audio interface patch for Silicon Labs 3054/5 modem codec
7 * Copyright (c) 2005 Sasha Khapyorsky <sashak@alsa-project.org>
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
[all …]
H A DMakefile1 # SPDX-License-Identifier: GPL-2.0
2 snd-hda-intel-objs := hda_intel.o
3 snd-hda-tegra-objs := hda_tegra.o
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
12 # for trace-points
13 CFLAGS_hda_controller.o := -I$(src)
[all …]
H A Dhda_proc.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Universal Interface for Intel High Definition Audio Codec
17 static int dump_coef = -1;
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)
38 if (wid_value == -1) in get_wid_type_name()
48 struct hda_codec *codec, hda_nid_t nid, in print_nid_array() argument
52 struct hda_nid_item *items = array->list, *item; in print_nid_array()
54 for (i = 0; i < array->used; i++) { in print_nid_array()
[all …]
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
2 menu "HD-Audio"
23 This option enables the HD-audio controller. Don't forget
24 to choose the appropriate codec options below.
27 will be called snd-hda-intel.
43 will be called snd-hda-tegra.
48 bool "Build hwdep interface for HD-audio driver"
51 Say Y here to build a hwdep interface for HD-audio driver.
52 This interface can be used for out-of-band communication
56 bool "Allow dynamic codec reconfiguration"
[all …]
/openbmc/linux/sound/pci/ali5451/
H A Dali5451.c1 // SPDX-License-Identifier: GPL-2.0-or-later
8 * --
11 * --
21 #include <linux/dma-mapping.h>
141 #define ALI_REG(codec, x) ((codec)->port + x) argument
180 struct snd_ali *codec; member
185 int count; /* runtime->period_size */
187 /* --- */
266 static inline unsigned int snd_ali_5451_peek(struct snd_ali *codec, in snd_ali_5451_peek() argument
269 return (unsigned int)inl(ALI_REG(codec, port)); in snd_ali_5451_peek()
[all …]
/openbmc/linux/sound/hda/
H A Dhdac_device.c1 // SPDX-License-Identifier: GPL-2.0-only
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()
49 dev->parent = bus->dev; in snd_hdac_device_init()
[all …]
H A Dhdac_regmap.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Regmap support for HD-audio verbs
9 * - Provided for not all verbs but only subset standard non-volatile verbs.
10 * - For reading, only AC_VERB_GET_* variants can be used.
11 * - For writing, mapped to the *corresponding* AC_VERB_SET_* variants,
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
[all …]
H A Dhdac_sysfs.c1 // SPDX-License-Identifier: GPL-2.0
3 * sysfs support for HD-audio core device
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,
98 struct device *dev = kobj_to_dev(kobj->parent->parent); in get_codec_nid()
102 ret = kstrtoint(kobj->name, 16, &nid); in get_codec_nid()
[all …]
/openbmc/linux/Documentation/devicetree/bindings/pinctrl/
H A Dcirrus,lochnagar.yaml1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
3 ---
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - patches@opensource.cirrus.com
14 Smart CODEC and Amp devices. It allows the connection of most Cirrus
15 Logic devices on mini-cards, as well as allowing connection of various
26 [2] Pinctrl: ../pinctrl/pinctrl-bindings.txt
29 [3] include/dt-bindings/pinctrl/lochnagar.h
37 - cirrus,lochnagar-pinctrl
39 gpio-controller: true
[all …]
/openbmc/linux/drivers/media/pci/zoran/
H A Dvideocodec.c1 // SPDX-License-Identifier: GPL-2.0-or-later
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
53 master->name, master->flags, master->magic); in videocodec_attach()
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()
[all …]
/openbmc/linux/include/sound/
H A Dhda_codec.h1 /* SPDX-License-Identifier: GPL-2.0-or-later */
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);
[all …]
/openbmc/linux/sound/soc/codecs/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
3 # modular, meaning we can't build the codec driver in with I2C support.
5 # setting - SPI can't be modular so that case doesn't need to be covered.
12 menu "CODEC drivers"
15 tristate "Build all ASoC CODEC drivers"
339 Normally ASoC codec drivers are only built if a machine driver which
401 tristate "Build generic ASoC AC97 CODEC driver"
438 tristate "Analog Devices ADAU1372 CODEC (I2C)"
444 tristate "Analog Devices ADAU1372 CODEC (SPI)"
455 tristate "Analog Devices ADAU1701 CODEC"
[all …]
H A Dhda.c1 // SPDX-License-Identifier: GPL-2.0
3 // Copyright(c) 2021-2022 Intel Corporation. All rights reserved.
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()
26 return -ENOMEM; in hda_codec_create_dais()
28 pcm = list_first_entry(&codec->pcm_list_head, struct hda_pcm, list); in hda_codec_create_dais()
34 dev_info(dev, "creating for %s %d\n", pcm->name, i); in hda_codec_create_dais()
36 drvs[i].name = pcm->name; in hda_codec_create_dais()
41 if (!pcm->stream[dir].substreams) { in hda_codec_create_dais()
42 dev_info(dev, "skipping playback dai for %s\n", pcm->name); in hda_codec_create_dais()
[all …]

12345678910>>...42