History

Merge tag 'sound-6.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound

Pull sound updates from Takashi Iwai: "This was a relatively calm development cycle. Most of changes are rather small device-specific fixes and enhancements. The only significant changes in ALSA core are code refactoring with the recent cleanup infrastructure, which should bring no functionality changes. Some highlights below: Core: - Lots of cleanups in ALSA core code with automatic kfree cleanup and locking guard macros - New ALSA core kunit test ASoC: - SoundWire support for AMD ACP 6.3 systems - Support for reporting version information for AVS firmware - Support DSPless mode for Intel Soundwire systems - Support for configuring CS35L56 amplifiers using EFI calibration data - Log which component is being operated on as part of power management trace events. - Support for Microchip SAM9x7, NXP i.MX95 and Qualcomm WCD939x HD- and USB-audio: - More Cirrus HD-audio codec support - TAS2781 HD-audio codec fixes - Scarlett2 mixer fixes Others: - Enhancement of virtio driver for audio control supports - Cleanups of legacy PM code with new macros - Firewire sound updates" * tag 'sound-6.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (307 commits) ALSA: usb-audio: Stop parsing channels bits when all channels are found. ALSA: hda/tas2781: remove unnecessary runtime_pm calls ALSA: hda/realtek - ALC236 fix volume mute & mic mute LED on some HP models ALSA: aaci: Delete unused variable in aaci_do_suspend ALSA: scarlett2: Fix Scarlett 4th Gen input gain range again ALSA: scarlett2: Fix Scarlett 4th Gen input gain range ALSA: scarlett2: Fix Scarlett 4th Gen autogain status values ALSA: scarlett2: Fix Scarlett 4th Gen 4i4 low-voltage detection ALSA: hda/tas2781: restore power state after system_resume ALSA: hda/tas2781: do not call pm_runtime_force_* in system_resume/suspend ALSA: hda/tas2781: do not reset cur_* values in runtime_suspend ALSA: hda/tas2781: add lock to system_suspend ALSA: hda/tas2781: use dev_dbg in system_resume ALSA: hda/realtek: fix ALC285 issues on HP Envy x360 laptops platform/x86: serial-multi-instantiate: Add support for CS35L54 and CS35L57 ALSA: hda: cs35l56: Add support for CS35L54 and CS35L57 ASoC: cs35l56: Add support for CS35L54 and CS35L57 ASoC: Intel: catpt: Carefully use PCI bitwise constants ALSA: hda: hda_component: Include sound/hda_codec.h ALSA: hda: hda_component: Add missing #include guards ...

Linus Torvalds committed 2 years ago

Commit fe46a7d2 parents 705c1da a39d51f344 files · +16592 −5305Browse files

Showing the changes to include/uapi (3 of 344 files). Show all

Unified · Split

3 files
  1. include/uapi/linux/virtio_snd.h +154 −0
  2. include/uapi/sound/intel/avs/tokens.h +9 −0
  3. include/uapi/sound/sof/tokens.h +4 −0
include/uapi/linux/virtio_snd.h+154−0
@@ -7,6 +7,14 @@ · 6 unmodified lines
7 7
8#include <linux/virtio_types.h>8#include <linux/virtio_types.h>
9 9
10/*******************************************************************************
11 * FEATURE BITS
12 */
13enum {
14 /* device supports control elements */
15 VIRTIO_SND_F_CTLS = 0
16};
17
10/*******************************************************************************18/*******************************************************************************
11 * CONFIGURATION SPACE19 * CONFIGURATION SPACE
12 */20 */
@@ -17,6 +25,8 @@ struct virtio_snd_config { · 4 unmodified lines
17 __le32 streams;25 __le32 streams;
18 /* # of available channel maps */26 /* # of available channel maps */
19 __le32 chmaps;27 __le32 chmaps;
28 /* # of available control elements */
29 __le32 controls;
20};30};
21 31
22enum {32enum {
@@ -55,6 +65,15 @@ enum { · 32 unmodified lines
55 /* channel map control request types */65 /* channel map control request types */
56 VIRTIO_SND_R_CHMAP_INFO = 0x0200,66 VIRTIO_SND_R_CHMAP_INFO = 0x0200,
57 67
68 /* control element request types */
69 VIRTIO_SND_R_CTL_INFO = 0x0300,
70 VIRTIO_SND_R_CTL_ENUM_ITEMS,
71 VIRTIO_SND_R_CTL_READ,
72 VIRTIO_SND_R_CTL_WRITE,
73 VIRTIO_SND_R_CTL_TLV_READ,
74 VIRTIO_SND_R_CTL_TLV_WRITE,
75 VIRTIO_SND_R_CTL_TLV_COMMAND,
76
58 /* jack event types */77 /* jack event types */
59 VIRTIO_SND_EVT_JACK_CONNECTED = 0x1000,78 VIRTIO_SND_EVT_JACK_CONNECTED = 0x1000,
60 VIRTIO_SND_EVT_JACK_DISCONNECTED,79 VIRTIO_SND_EVT_JACK_DISCONNECTED,
@@ -63,6 +82,9 @@ enum { · 2 unmodified lines
63 VIRTIO_SND_EVT_PCM_PERIOD_ELAPSED = 0x1100,82 VIRTIO_SND_EVT_PCM_PERIOD_ELAPSED = 0x1100,
64 VIRTIO_SND_EVT_PCM_XRUN,83 VIRTIO_SND_EVT_PCM_XRUN,
65 84
85 /* control element event types */
86 VIRTIO_SND_EVT_CTL_NOTIFY = 0x1200,
87
66 /* common status codes */88 /* common status codes */
67 VIRTIO_SND_S_OK = 0x8000,89 VIRTIO_SND_S_OK = 0x8000,
68 VIRTIO_SND_S_BAD_MSG,90 VIRTIO_SND_S_BAD_MSG,
@@ -331,4 +353,136 @@ struct virtio_snd_chmap_info { · 262 unmodified lines
331 __u8 positions[VIRTIO_SND_CHMAP_MAX_SIZE];353 __u8 positions[VIRTIO_SND_CHMAP_MAX_SIZE];
332};354};
333 355
356/*******************************************************************************
357 * CONTROL ELEMENTS MESSAGES
358 */
359struct virtio_snd_ctl_hdr {
360 /* VIRTIO_SND_R_CTL_XXX */
361 struct virtio_snd_hdr hdr;
362 /* 0 ... virtio_snd_config::controls - 1 */
363 __le32 control_id;
364};
365
366/* supported roles for control elements */
367enum {
368 VIRTIO_SND_CTL_ROLE_UNDEFINED = 0,
369 VIRTIO_SND_CTL_ROLE_VOLUME,
370 VIRTIO_SND_CTL_ROLE_MUTE,
371 VIRTIO_SND_CTL_ROLE_GAIN
372};
373
374/* supported value types for control elements */
375enum {
376 VIRTIO_SND_CTL_TYPE_BOOLEAN = 0,
377 VIRTIO_SND_CTL_TYPE_INTEGER,
378 VIRTIO_SND_CTL_TYPE_INTEGER64,
379 VIRTIO_SND_CTL_TYPE_ENUMERATED,
380 VIRTIO_SND_CTL_TYPE_BYTES,
381 VIRTIO_SND_CTL_TYPE_IEC958
382};
383
384/* supported access rights for control elements */
385enum {
386 VIRTIO_SND_CTL_ACCESS_READ = 0,
387 VIRTIO_SND_CTL_ACCESS_WRITE,
388 VIRTIO_SND_CTL_ACCESS_VOLATILE,
389 VIRTIO_SND_CTL_ACCESS_INACTIVE,
390 VIRTIO_SND_CTL_ACCESS_TLV_READ,
391 VIRTIO_SND_CTL_ACCESS_TLV_WRITE,
392 VIRTIO_SND_CTL_ACCESS_TLV_COMMAND
393};
394
395struct virtio_snd_ctl_info {
396 /* common header */
397 struct virtio_snd_info hdr;
398 /* element role (VIRTIO_SND_CTL_ROLE_XXX) */
399 __le32 role;
400 /* element value type (VIRTIO_SND_CTL_TYPE_XXX) */
401 __le32 type;
402 /* element access right bit map (1 << VIRTIO_SND_CTL_ACCESS_XXX) */
403 __le32 access;
404 /* # of members in the element value */
405 __le32 count;
406 /* index for an element with a non-unique name */
407 __le32 index;
408 /* name identifier string for the element */
409 __u8 name[44];
410 /* additional information about the element's value */
411 union {
412 /* VIRTIO_SND_CTL_TYPE_INTEGER */
413 struct {
414 /* minimum supported value */
415 __le32 min;
416 /* maximum supported value */
417 __le32 max;
418 /* fixed step size for value (0 = variable size) */
419 __le32 step;
420 } integer;
421 /* VIRTIO_SND_CTL_TYPE_INTEGER64 */
422 struct {
423 /* minimum supported value */
424 __le64 min;
425 /* maximum supported value */
426 __le64 max;
427 /* fixed step size for value (0 = variable size) */
428 __le64 step;
429 } integer64;
430 /* VIRTIO_SND_CTL_TYPE_ENUMERATED */
431 struct {
432 /* # of options supported for value */
433 __le32 items;
434 } enumerated;
435 } value;
436};
437
438struct virtio_snd_ctl_enum_item {
439 /* option name */
440 __u8 item[64];
441};
442
443struct virtio_snd_ctl_iec958 {
444 /* AES/IEC958 channel status bits */
445 __u8 status[24];
446 /* AES/IEC958 subcode bits */
447 __u8 subcode[147];
448 /* nothing */
449 __u8 pad;
450 /* AES/IEC958 subframe bits */
451 __u8 dig_subframe[4];
452};
453
454struct virtio_snd_ctl_value {
455 union {
456 /* VIRTIO_SND_CTL_TYPE_BOOLEAN|INTEGER value */
457 __le32 integer[128];
458 /* VIRTIO_SND_CTL_TYPE_INTEGER64 value */
459 __le64 integer64[64];
460 /* VIRTIO_SND_CTL_TYPE_ENUMERATED value (option indexes) */
461 __le32 enumerated[128];
462 /* VIRTIO_SND_CTL_TYPE_BYTES value */
463 __u8 bytes[512];
464 /* VIRTIO_SND_CTL_TYPE_IEC958 value */
465 struct virtio_snd_ctl_iec958 iec958;
466 } value;
467};
468
469/* supported event reason types */
470enum {
471 /* element's value has changed */
472 VIRTIO_SND_CTL_EVT_MASK_VALUE = 0,
473 /* element's information has changed */
474 VIRTIO_SND_CTL_EVT_MASK_INFO,
475 /* element's metadata has changed */
476 VIRTIO_SND_CTL_EVT_MASK_TLV
477};
478
479struct virtio_snd_ctl_event {
480 /* VIRTIO_SND_EVT_CTL_NOTIFY */
481 struct virtio_snd_hdr hdr;
482 /* 0 ... virtio_snd_config::controls - 1 */
483 __le16 control_id;
484 /* event reason bit map (1 << VIRTIO_SND_CTL_EVT_MASK_XXX) */
485 __le16 mask;
486};
487
334#endif /* VIRTIO_SND_IF_H */488#endif /* VIRTIO_SND_IF_H */
include/uapi/sound/intel/avs/tokens.h+9−0
@@ -19,6 +19,8 @@ enum avs_tplg_token { · 18 unmodified lines
19 AVS_TKN_MANIFEST_NUM_MODCFGS_EXT_U32 = 6,19 AVS_TKN_MANIFEST_NUM_MODCFGS_EXT_U32 = 6,
20 AVS_TKN_MANIFEST_NUM_PPLCFGS_U32 = 7,20 AVS_TKN_MANIFEST_NUM_PPLCFGS_U32 = 7,
21 AVS_TKN_MANIFEST_NUM_BINDINGS_U32 = 8,21 AVS_TKN_MANIFEST_NUM_BINDINGS_U32 = 8,
22 AVS_TKN_MANIFEST_NUM_CONDPATH_TMPLS_U32 = 9,
23 AVS_TKN_MANIFEST_NUM_INIT_CONFIGS_U32 = 10,
22 24
23 /* struct avs_tplg_library */25 /* struct avs_tplg_library */
24 AVS_TKN_LIBRARY_ID_U32 = 101,26 AVS_TKN_LIBRARY_ID_U32 = 101,
@@ -109,6 +111,8 @@ enum avs_tplg_token { · 84 unmodified lines
109 AVS_TKN_MOD_PROC_DOMAIN_U8 = 1705,111 AVS_TKN_MOD_PROC_DOMAIN_U8 = 1705,
110 AVS_TKN_MOD_MODCFG_EXT_ID_U32 = 1706,112 AVS_TKN_MOD_MODCFG_EXT_ID_U32 = 1706,
111 AVS_TKN_MOD_KCONTROL_ID_U32 = 1707,113 AVS_TKN_MOD_KCONTROL_ID_U32 = 1707,
114 AVS_TKN_MOD_INIT_CONFIG_NUM_IDS_U32 = 1708,
115 AVS_TKN_MOD_INIT_CONFIG_ID_U32 = 1709,
112 116
113 /* struct avs_tplg_path_template */117 /* struct avs_tplg_path_template */
114 AVS_TKN_PATH_TMPL_ID_U32 = 1801,118 AVS_TKN_PATH_TMPL_ID_U32 = 1801,
@@ -125,6 +129,11 @@ enum avs_tplg_token { · 10 unmodified lines
125 129
126 /* struct avs_tplg_kcontrol */130 /* struct avs_tplg_kcontrol */
127 AVS_TKN_KCONTROL_ID_U32 = 2301,131 AVS_TKN_KCONTROL_ID_U32 = 2301,
132
133 /* struct avs_tplg_init_config */
134 AVS_TKN_INIT_CONFIG_ID_U32 = 2401,
135 AVS_TKN_INIT_CONFIG_PARAM_U8 = 2402,
136 AVS_TKN_INIT_CONFIG_LENGTH_U32 = 2403,
128};137};
129 138
130#endif139#endif
include/uapi/sound/sof/tokens.h+4−0
@@ -218,4 +218,8 @@ · 217 unmodified lines
218#define SOF_TKN_IMX_MICFIL_RATE 2000218#define SOF_TKN_IMX_MICFIL_RATE 2000
219#define SOF_TKN_IMX_MICFIL_CH 2001219#define SOF_TKN_IMX_MICFIL_CH 2001
220 220
221/* ACP SDW */
222#define SOF_TKN_AMD_ACP_SDW_RATE 2100
223#define SOF_TKN_AMD_ACP_SDW_CH 2101
224
221#endif225#endif

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t