| /linux/sound/hda/common/ |
| H A D | jack.c | 3 * Jack-detection handling for HD-audio 13 #include <sound/jack.h> 20 * is_jack_detectable - Check whether the given pin is jack-detectable 24 * Check whether the given pin is capable to report the jack detection. 25 * The jack detection might not work by various reasons, e.g. the jack 71 * snd_hda_jack_tbl_get_mst - query the jack-table entry for the given NID in snd_hda_jack_tbl_get_mst() 79 struct hda_jack_tbl *jack = codec->jacktbl.list; in snd_hda_jack_tbl_get_mst() 82 if (!nid || !jack) in snd_hda_jack_tbl_get_mst() 84 for (i = 0; i < codec->jacktbl.used; i++, jack 73 struct hda_jack_tbl *jack = codec->jacktbl.list; snd_hda_jack_tbl_get_mst() local 95 struct hda_jack_tbl *jack = codec->jacktbl.list; snd_hda_jack_tbl_get_from_tag() local 110 struct hda_jack_tbl *jack = codec->jacktbl.list; any_jack_tbl_get_from_nid() local 130 struct hda_jack_tbl *jack = snd_hda_jack_tbl_new() local 163 struct hda_jack_tbl *jack = codec->jacktbl.list; snd_hda_jack_tbl_disconnect() local 174 struct hda_jack_tbl *jack = codec->jacktbl.list; snd_hda_jack_tbl_clear() local 196 jack_detect_update(struct hda_codec * codec,struct hda_jack_tbl * jack) jack_detect_update() argument 235 struct hda_jack_tbl *jack = codec->jacktbl.list; snd_hda_jack_set_dirty_all() local 255 struct hda_jack_tbl *jack = snd_hda_jack_pin_sense() local 277 struct hda_jack_tbl *jack = snd_hda_jack_detect_state_mst() local 290 find_callback_from_list(struct hda_jack_tbl * jack,hda_jack_callback_fn func) find_callback_from_list() argument 321 struct hda_jack_tbl *jack; snd_hda_jack_detect_enable_callback_mst() local 446 struct hda_jack_tbl *jack = snd_hda_jack_tbl_get(codec, jack_nid); snd_hda_jack_set_button_state() local 471 struct hda_jack_tbl *jack; snd_hda_jack_report_sync() local 521 hda_free_jack_priv(struct snd_jack * jack) hda_free_jack_priv() argument 545 struct hda_jack_tbl *jack; snd_hda_jack_add_kctl_mst() local 685 call_jack_callback(struct hda_codec * codec,unsigned int res,struct hda_jack_tbl * jack) call_jack_callback() argument 752 struct hda_jack_tbl *jack = codec->jacktbl.list; snd_hda_jack_poll_all() local [all...] |
| H A D | hda_jack.h | 3 * Jack-detection handling for HD-audio 12 #include <sound/jack.h> 26 struct hda_jack_tbl *jack; /* associated jack entry */ member 35 /* jack-detection stuff */ 37 unsigned int jack_detect:1; /* capable of jack-detection? */ 41 hda_nid_t gating_jack; /* valid when gating jack plugged */ 42 hda_nid_t gated_jack; /* gated is dependent on this jack */ 43 hda_nid_t key_report_jack; /* key reports to this jack */ 46 struct snd_jack *jack; member [all...] |
| /linux/sound/soc/ |
| H A D | soc-jack.c | 3 // soc-jack.c -- ALSA SoC jack handling 9 #include <sound/jack.h> 20 * snd_soc_jack_report - Report the current status for a jack 22 * @jack: the jack 33 void snd_soc_jack_report(struct snd_soc_jack *jack, int status, int mask) in snd_soc_jack_report() argument 39 if (!jack || !jack->jack) in snd_soc_jack_report() 89 snd_soc_jack_add_zones(struct snd_soc_jack * jack,int count,struct snd_soc_jack_zone * zones) snd_soc_jack_add_zones() argument 112 snd_soc_jack_get_type(struct snd_soc_jack * jack,int micbias_voltage) snd_soc_jack_get_type() argument 136 snd_soc_jack_add_pins(struct snd_soc_jack * jack,int count,struct snd_soc_jack_pin * pins) snd_soc_jack_add_pins() argument 180 snd_soc_jack_notifier_register(struct snd_soc_jack * jack,struct notifier_block * nb) snd_soc_jack_notifier_register() argument 195 snd_soc_jack_notifier_unregister(struct snd_soc_jack * jack,struct notifier_block * nb) snd_soc_jack_notifier_unregister() argument 205 struct snd_soc_jack *jack; global() member 212 struct snd_soc_jack *jack = gpio->jack; snd_soc_jack_gpio_detect() local 278 jack_free_gpios(struct snd_soc_jack * jack,int count,struct snd_soc_jack_gpio * gpios) jack_free_gpios() argument 310 snd_soc_jack_add_gpios(struct snd_soc_jack * jack,int count,struct snd_soc_jack_gpio * gpios) snd_soc_jack_add_gpios() argument 411 snd_soc_jack_add_gpiods(struct device * gpiod_dev,struct snd_soc_jack * jack,int count,struct snd_soc_jack_gpio * gpios) snd_soc_jack_add_gpiods() argument 432 snd_soc_jack_free_gpios(struct snd_soc_jack * jack,int count,struct snd_soc_jack_gpio * gpios) snd_soc_jack_free_gpios() argument [all...] |
| /linux/sound/core/ |
| H A D | jack.c | 3 * Jack abstraction layer 14 #include <sound/jack.h> 20 struct list_head list; /* list of controls belong to the same jack */ 22 struct snd_jack *jack; /* pointer to struct snd_jack */ member 41 static void snd_jack_remove_debugfs(struct snd_jack *jack); 45 struct snd_jack *jack = device->device_data; in snd_jack_dev_disconnect() local 47 snd_jack_remove_debugfs(jack); in snd_jack_dev_disconnect() 50 guard(mutex)(&jack->input_dev_lock); in snd_jack_dev_disconnect() 51 if (!jack->input_dev) in snd_jack_dev_disconnect() 56 if (jack in snd_jack_dev_disconnect() 67 struct snd_jack *jack = device->device_data; snd_jack_dev_free() local 90 struct snd_jack *jack = device->device_data; snd_jack_dev_register() local 131 struct snd_jack *jack; snd_jack_inject_report() local 346 snd_jack_debugfs_add_inject_node(struct snd_jack * jack,struct snd_jack_kctl * jack_kctl) snd_jack_debugfs_add_inject_node() argument 390 snd_jack_remove_debugfs(struct snd_jack * jack) snd_jack_remove_debugfs() argument 400 snd_jack_debugfs_add_inject_node(struct snd_jack * jack,struct snd_jack_kctl * jack_kctl) snd_jack_debugfs_add_inject_node() argument 406 snd_jack_remove_debugfs(struct snd_jack * jack) snd_jack_remove_debugfs() argument 422 snd_jack_kctl_add(struct snd_jack * jack,struct snd_jack_kctl * jack_kctl) snd_jack_kctl_add() argument 471 snd_jack_add_new_kctl(struct snd_jack * jack,const char * name,int mask) snd_jack_add_new_kctl() argument 502 struct snd_jack *jack; snd_jack_new() local 604 snd_jack_set_key(struct snd_jack * jack,enum snd_jack_types type,int keytype) snd_jack_set_key() argument 629 snd_jack_report(struct snd_jack * jack,int status) snd_jack_report() argument [all...] |
| /linux/Documentation/sound/soc/ |
| H A D | jack.rst | 2 ASoC jack detection 6 the kernel side of which can be seen in include/sound/jack.h. ASoC 9 - It allows more than one jack detection method to work together on one 10 user visible jack. In embedded systems it is common for multiple 11 to be present on a single jack but handled by separate bits of 15 automatically based on the detected jack status (eg, turning off the 19 together: the jack itself represented by a struct snd_soc_jack, sets of 21 code providing jack reporting mechanisms. 23 For example, a system may have a stereo headset jack with two reporting 27 headphone when the headphone jack status changes. [all …]
|
| /linux/Documentation/sound/designs/ |
| H A D | jack-controls.rst | 2 ALSA Jack Controls 5 Why we need Jack kcontrols 13 The old ALSA jack code only created input devices for each registered 14 jack. These jack input devices are not readable by userspace devices 17 The new jack code creates embedded jack kcontrols for each jack that 21 intelligently based on jack insertion or removal events. 23 Jack Kcontrol Internals 26 Each jack will have a kcontrol list, so that we can create a kcontrol 27 and attach it to the jack, at jack creation stage. We can also add a 28 kcontrol to an existing jack, at anytime when required. [all …]
|
| H A D | jack-injection.rst | 2 ALSA Jack Software Injection 5 Simple Introduction On Jack Injection 8 Here jack injection means users could inject plugin or plugout events 14 jack or to some audio jacks, we don't need to physically access the 15 machine and plug/unplug physical devices to the audio jack. 17 In this design, an audio jack doesn't equal to a physical audio jack. 18 Sometimes a physical audio jack contains multi functions, and the 20 ``snd_jack`` represents a physical audio jack and the ``jack_kctl`` 21 represents a function, for example a physical jack has two functions: 23 for this jack. The jack injection is implemented based on the [all …]
|
| /linux/include/sound/ |
| H A D | soc-jack.h | 3 * soc-jack.h 12 * struct snd_soc_jack_pin - Describes a pin to update based on jack detection 15 * @mask: bits to check for in reported jack status 27 * struct snd_soc_jack_zone - Describes voltage zones of jack detection 31 * @jack_type: type of jack that is expected for this voltage 32 * @debounce_time: debounce_time for jack, codec driver should wait for this 45 * struct snd_soc_jack_gpio - Describes a gpio pin for jack detection 52 * @report: value to report when jack detected 70 struct snd_soc_jack *jack; member 82 struct snd_jack *jack; member [all …]
|
| H A D | sdca_jack.h | 18 * struct jack_state - Jack state structure to keep data between interrupts 19 * @kctl: Pointer to the ALSA control attached to this jack 20 * @jack: Pointer to the ASoC jack struct for this jack 21 * @mask: Possible reported jack status bits for this jack 25 struct snd_soc_jack *jack; member 35 int sdca_jack_set_jack(struct sdca_interrupt_info *info, struct snd_soc_jack *jack);
|
| /linux/sound/soc/sdw_utils/ |
| H A D | soc_sdw_cs42l42.c | 18 #include <sound/jack.h> 22 /* HP jack connectors - unknown if we have jack detection */ 46 struct snd_soc_jack *jack; in asoc_sdw_cs42l42_rtd_init() 64 ret = snd_soc_card_jack_new_pins(rtd->card, "Headset Jack", in asoc_sdw_cs42l42_rtd_init() 72 dev_err(rtd->card->dev, "Headset Jack creation failed: %d\n", in asoc_sdw_cs42l42_rtd_init() 77 jack = &ctx->sdw_headset; in asoc_sdw_cs42l42_rtd_init() 79 snd_jack_set_key(jack->jack, SND_JACK_BTN_0, KEY_PLAYPAUSE); in asoc_sdw_cs42l42_rtd_init() 80 snd_jack_set_key(jack in asoc_sdw_cs42l42_rtd_init() 45 struct snd_soc_jack *jack; asoc_sdw_cs42l42_rtd_init() local [all...] |
| H A D | soc_sdw_rt700.c | 17 #include <sound/jack.h> 44 struct snd_soc_jack *jack; in asoc_sdw_rt700_rtd_init() 62 ret = snd_soc_card_jack_new_pins(rtd->card, "Headset Jack", in asoc_sdw_rt700_rtd_init() 70 dev_err(rtd->card->dev, "Headset Jack creation failed: %d\n", in asoc_sdw_rt700_rtd_init() 75 jack = &ctx->sdw_headset; in asoc_sdw_rt700_rtd_init() 77 snd_jack_set_key(jack->jack, SND_JACK_BTN_0, KEY_PLAYPAUSE); in asoc_sdw_rt700_rtd_init() 78 snd_jack_set_key(jack->jack, SND_JACK_BTN_1, KEY_VOICECOMMAND); in asoc_sdw_rt700_rtd_init() 79 snd_jack_set_key(jack in asoc_sdw_rt700_rtd_init() 43 struct snd_soc_jack *jack; asoc_sdw_rt700_rtd_init() local [all...] |
| H A D | soc_sdw_rt5682.c | 19 #include <sound/jack.h> 46 struct snd_soc_jack *jack; in asoc_sdw_rt5682_rtd_init() 64 ret = snd_soc_card_jack_new_pins(rtd->card, "Headset Jack", in asoc_sdw_rt5682_rtd_init() 72 dev_err(rtd->card->dev, "Headset Jack creation failed: %d\n", in asoc_sdw_rt5682_rtd_init() 77 jack = &ctx->sdw_headset; in asoc_sdw_rt5682_rtd_init() 79 snd_jack_set_key(jack->jack, SND_JACK_BTN_0, KEY_PLAYPAUSE); in asoc_sdw_rt5682_rtd_init() 80 snd_jack_set_key(jack->jack, SND_JACK_BTN_1, KEY_VOICECOMMAND); in asoc_sdw_rt5682_rtd_init() 81 snd_jack_set_key(jack in asoc_sdw_rt5682_rtd_init() 45 struct snd_soc_jack *jack; asoc_sdw_rt5682_rtd_init() local [all...] |
| H A D | soc_sdw_rt711.c | 19 #include <sound/jack.h> 70 struct snd_soc_jack *jack; in asoc_sdw_rt711_rtd_init() 88 ret = snd_soc_card_jack_new_pins(rtd->card, "Headset Jack", in asoc_sdw_rt711_rtd_init() 96 dev_err(rtd->card->dev, "Headset Jack creation failed: %d\n", in asoc_sdw_rt711_rtd_init() 101 jack = &ctx->sdw_headset; in asoc_sdw_rt711_rtd_init() 103 snd_jack_set_key(jack->jack, SND_JACK_BTN_0, KEY_PLAYPAUSE); in asoc_sdw_rt711_rtd_init() 104 snd_jack_set_key(jack->jack, SND_JACK_BTN_1, KEY_VOICECOMMAND); in asoc_sdw_rt711_rtd_init() 105 snd_jack_set_key(jack in asoc_sdw_rt711_rtd_init() 69 struct snd_soc_jack *jack; asoc_sdw_rt711_rtd_init() local [all...] |
| H A D | soc_sdw_rt_sdca_jack_common.c | 19 #include <sound/jack.h> 99 struct snd_soc_jack *jack; in asoc_sdw_rt_sdca_jack_rtd_init() 142 dev_err(card->dev, "rt sdca jack map addition failed: %d\n", ret); in asoc_sdw_rt_sdca_jack_rtd_init() 146 ret = snd_soc_card_jack_new_pins(rtd->card, "Headset Jack", in asoc_sdw_rt_sdca_jack_rtd_init() 154 dev_err(rtd->card->dev, "Headset Jack creation failed: %d\n", in asoc_sdw_rt_sdca_jack_rtd_init() 159 jack = &ctx->sdw_headset; in asoc_sdw_rt_sdca_jack_rtd_init() 161 snd_jack_set_key(jack->jack, SND_JACK_BTN_0, KEY_PLAYPAUSE); in asoc_sdw_rt_sdca_jack_rtd_init() 162 snd_jack_set_key(jack->jack, SND_JACK_BTN_ in asoc_sdw_rt_sdca_jack_rtd_init() 98 struct snd_soc_jack *jack; asoc_sdw_rt_sdca_jack_rtd_init() local [all...] |
| H A D | soc_sdw_cs42l43.c | 13 #include <sound/jack.h> 59 struct snd_soc_jack *jack = &ctx->sdw_headset; in asoc_sdw_cs42l43_hs_rtd_init() local 76 ret = snd_soc_card_jack_new_pins(card, "Jack", in asoc_sdw_cs42l43_hs_rtd_init() 81 jack, soc_jack_pins, in asoc_sdw_cs42l43_hs_rtd_init() 84 dev_err(card->dev, "Failed to create jack: %d\n", ret); in asoc_sdw_cs42l43_hs_rtd_init() 88 snd_jack_set_key(jack->jack, SND_JACK_BTN_0, KEY_PLAYPAUSE); in asoc_sdw_cs42l43_hs_rtd_init() 89 snd_jack_set_key(jack->jack, SND_JACK_BTN_1, KEY_VOICECOMMAND); in asoc_sdw_cs42l43_hs_rtd_init() 90 snd_jack_set_key(jack->jack, SND_JACK_BTN_2, KEY_VOLUMEUP); in asoc_sdw_cs42l43_hs_rtd_init() 91 snd_jack_set_key(jack->jack, SND_JACK_BTN_3, KEY_VOLUMEDOWN); in asoc_sdw_cs42l43_hs_rtd_init() 93 ret = snd_soc_component_set_jack(component, jack, NULL); in asoc_sdw_cs42l43_hs_rtd_init() [all …]
|
| /linux/sound/virtio/ |
| H A D | virtio_jack.c | 7 #include <sound/jack.h> 23 * struct virtio_jack - VirtIO jack. 24 * @jack: Kernel jack control. 26 * @features: Jack virtio feature bit map (1 << VIRTIO_SND_JACK_F_XXX). 29 * @connected: Current jack connection status. 30 * @type: Kernel jack type (SND_JACK_XXX). 33 struct snd_jack *jack; member 43 * virtsnd_jack_get_label() - Get the name string for the jack. 44 * @vjack: VirtIO jack. 46 * Returns the jack name based on the default pin configuration value (see HDA [all …]
|
| /linux/Documentation/sound/hd-audio/ |
| H A D | models.rst | 8 3-jack in back and a headphone out 10 3-jack in back, a HP out and a SPDIF out 12 5-jack in back, 2-jack in front 14 5-jack in back, 2-jack in front, a SPDIF out 16 6-jack in back, 2-jack in front 18 6-jack with a SPDIF out 20 6-jack with headphone jack detection 31 Quirk for FSC S7020 with jack modes and HP mic support 76 Indicates a combined headset (headphone+mic) jack 88 Headset jack, which can also be used as mic-in [all …]
|
| H A D | controls.rst | 16 jack-retasking of multi-I/O jacks. 25 automatically when a jack is plugged. 29 speaker-only is chosen, plugging into a headphone or a line-out jack 31 selected, plugging to a headphone jack mutes both speakers and 55 Mic Jack Mode, Line Jack Mode, etc 56 These enum controls the direction and the bias of the input jack 57 pins. Depending on the jack type, it can set as "Mic In" and "Line 59 when the pin is a multi-I/O jack for surround channels. 87 This control determines whether the dynamic power-control per jack 89 (D0/D3) are changed dynamically depending on the jack plugging [all …]
|
| /linux/sound/soc/qcom/ |
| H A D | sc7280.c | 13 #include <sound/jack.h> 40 static void sc7280_jack_free(struct snd_jack *jack) in sc7280_jack_free() argument 42 struct snd_soc_component *component = jack->private_data; in sc7280_jack_free() 49 .pin = "Headphone Jack", 65 struct snd_jack *jack; in sc7280_headset_init() local 69 rval = snd_soc_card_jack_new_pins(card, "Headset Jack", in sc7280_headset_init() 80 dev_err(card->dev, "Unable to add Headset Jack\n"); in sc7280_headset_init() 84 jack = pdata->hs_jack.jack; in sc7280_headset_init() 86 snd_jack_set_key(jack, SND_JACK_BTN_0, KEY_PLAYPAUSE); in sc7280_headset_init() 87 snd_jack_set_key(jack, SND_JACK_BTN_1, KEY_VOICECOMMAND); in sc7280_headset_init() [all …]
|
| H A D | apq8016_sbc.c | 15 #include <sound/jack.h> 29 struct snd_soc_jack jack; member 50 .pin = "Mic Jack", 54 .pin = "Headphone Jack", 103 struct snd_jack *jack; in apq8016_dai_init() local 105 rval = snd_soc_card_jack_new_pins(card, "Headset Jack", in apq8016_dai_init() 111 &pdata->jack, in apq8016_dai_init() 116 dev_err(card->dev, "Unable to add Headphone Jack\n"); in apq8016_dai_init() 120 jack = pdata->jack.jack; in apq8016_dai_init() 122 snd_jack_set_key(jack, SND_JACK_BTN_0, KEY_PLAYPAUSE); in apq8016_dai_init() [all …]
|
| /linux/sound/soc/intel/boards/ |
| H A D | sof_cs42l42.c | 15 #include <sound/jack.h> 28 .pin = "Headphone Jack", 44 struct snd_soc_jack *jack = &ctx->headset_jack; in sof_cs42l42_init() local 51 ret = snd_soc_card_jack_new_pins(rtd->card, "Headset Jack", in sof_cs42l42_init() 55 jack, in sof_cs42l42_init() 59 dev_err(rtd->dev, "Headset Jack creation failed: %d\n", ret); in sof_cs42l42_init() 63 snd_jack_set_key(jack->jack, SND_JACK_BTN_0, KEY_PLAYPAUSE); in sof_cs42l42_init() 64 snd_jack_set_key(jack->jack, SND_JACK_BTN_1, KEY_VOLUMEUP); in sof_cs42l42_init() 65 snd_jack_set_key(jack->jack, SND_JACK_BTN_2, KEY_VOLUMEDOWN); in sof_cs42l42_init() 66 snd_jack_set_key(jack->jack, SND_JACK_BTN_3, KEY_VOICECOMMAND); in sof_cs42l42_init() [all …]
|
| H A D | sof_nau8825.c | 15 #include <sound/jack.h> 32 .pin = "Headphone Jack", 45 struct snd_soc_jack *jack = &ctx->headset_jack; in sof_nau8825_codec_init() local 52 ret = snd_soc_card_jack_new_pins(rtd->card, "Headset Jack", in sof_nau8825_codec_init() 56 jack, in sof_nau8825_codec_init() 60 dev_err(rtd->dev, "Headset Jack creation failed: %d\n", ret); in sof_nau8825_codec_init() 64 snd_jack_set_key(jack->jack, SND_JACK_BTN_0, KEY_PLAYPAUSE); in sof_nau8825_codec_init() 65 snd_jack_set_key(jack->jack, SND_JACK_BTN_ in sof_nau8825_codec_init() [all...] |
| /linux/arch/arm/boot/dts/nxp/imx/ |
| H A D | imx6qdl-kontron-samx6i-ads2.dtsi | 21 "Headphone", "Headphone Jack", 22 "Line", "Line Out Jack", 23 "Microphone", "Microphone Jack", 24 "Line", "Line In Jack"; 26 "Line Out Jack", "LINEOUTR", 27 "Line Out Jack", "LINEOUTL", 28 "Headphone Jack", "HPOUTR", 29 "Headphone Jack", "HPOUTL", 30 "IN1L", "Line In Jack", 31 "IN1R", "Line In Jack", [all …]
|
| /linux/arch/arm64/boot/dts/freescale/ |
| H A D | fsl-ls1028a-kontron-sl28-var3-ads2.dts | 39 "Headphone", "Headphone Jack", 40 "Line", "Line Out Jack", 41 "Microphone", "Microphone Jack", 42 "Line", "Line In Jack"; 44 "Line Out Jack", "LINEOUTR", 45 "Line Out Jack", "LINEOUTL", 46 "Headphone Jack", "HPOUTR", 47 "Headphone Jack", "HPOUTL", 48 "IN1L", "Line In Jack", 49 "IN1R", "Line In Jack", [all …]
|
| /linux/Documentation/devicetree/bindings/sound/ |
| H A D | realtek,rt5640.yaml | 96 realtek,jack-detect-source: 97 description: The Jack Detect source. 100 - 0 # Jack Detect function is not used 101 - 1 # Use GPIO1 for jack-detect 102 - 2 # Use JD1_IN4P for jack-detect 103 - 3 # Use JD2_IN4N for jack-detect 104 - 4 # Use GPIO2 for jack-detect 105 - 5 # Use GPIO3 for jack-detect 106 - 6 # Use GPIO4 for jack-detect 107 - 7 # Use HDA header for jack-detect [all …]
|