ASoC: Updates for v6.14 This was quite a quiet release for what I imagine are holiday related reasons, the diffstat is dominated by some Cirrus Logic Kunit tests. There's the usual mix of small improvements and fixes, plus a few new drivers and features. The diffstat includes some DRM changes due to work on HDMI audio. - Allow clocking on each DAI in an audio graph card to be configured separately. - Improved power management for Renesas RZ-SSI. - KUnit testing for the Cirrus DSP framework. - Memory to meory operation support for Freescale/NXP platforms. - Support for pause operations in SOF. - Support for Allwinner suinv F1C100s, Awinc AW88083, Realtek ALC5682I-VE
Showing the changes to include/uapi (5 of 674 files). Show all
Unified · Split
| @@ -12,31 +12,33 @@ · 11 unmodified lines | |||
| 12 | /** | 12 | /** |
| 13 | * enum mptcp_event_type | 13 | * enum mptcp_event_type |
| 14 | * @MPTCP_EVENT_UNSPEC: unused event | 14 | * @MPTCP_EVENT_UNSPEC: unused event |
| 15 | * @MPTCP_EVENT_CREATED: token, family, saddr4 | saddr6, daddr4 | daddr6, | 15 | * @MPTCP_EVENT_CREATED: A new MPTCP connection has been created. It is the |
| 16 | * sport, dport A new MPTCP connection has been created. It is the good time | 16 | * good time to allocate memory and send ADD_ADDR if needed. Depending on the |
| 17 | * to allocate memory and send ADD_ADDR if needed. Depending on the | ||
| 18 | * traffic-patterns it can take a long time until the MPTCP_EVENT_ESTABLISHED | 17 | * traffic-patterns it can take a long time until the MPTCP_EVENT_ESTABLISHED |
| 19 | * is sent. | 18 | * is sent. Attributes: token, family, saddr4 | saddr6, daddr4 | daddr6, |
| 20 | * @MPTCP_EVENT_ESTABLISHED: token, family, saddr4 | saddr6, daddr4 | daddr6, | 19 | * sport, dport, server-side. |
| 21 | * sport, dport A MPTCP connection is established (can start new subflows). | 20 | * @MPTCP_EVENT_ESTABLISHED: A MPTCP connection is established (can start new |
| 22 | * @MPTCP_EVENT_CLOSED: token A MPTCP connection has stopped. | 21 | * subflows). Attributes: token, family, saddr4 | saddr6, daddr4 | daddr6, |
| 23 | * @MPTCP_EVENT_ANNOUNCED: token, rem_id, family, daddr4 | daddr6 [, dport] A | 22 | * sport, dport, server-side. |
| 24 | * new address has been announced by the peer. | 23 | * @MPTCP_EVENT_CLOSED: A MPTCP connection has stopped. Attribute: token. |
| 25 | * @MPTCP_EVENT_REMOVED: token, rem_id An address has been lost by the peer. | 24 | * @MPTCP_EVENT_ANNOUNCED: A new address has been announced by the peer. |
| 26 | * @MPTCP_EVENT_SUB_ESTABLISHED: token, family, loc_id, rem_id, saddr4 | | 25 | * Attributes: token, rem_id, family, daddr4 | daddr6 [, dport]. |
| 27 | * saddr6, daddr4 | daddr6, sport, dport, backup, if_idx [, error] A new | 26 | * @MPTCP_EVENT_REMOVED: An address has been lost by the peer. Attributes: |
| 28 | * subflow has been established. 'error' should not be set. | 27 | * token, rem_id. |
| 29 | * @MPTCP_EVENT_SUB_CLOSED: token, family, loc_id, rem_id, saddr4 | saddr6, | 28 | * @MPTCP_EVENT_SUB_ESTABLISHED: A new subflow has been established. 'error' |
| 30 | * daddr4 | daddr6, sport, dport, backup, if_idx [, error] A subflow has been | 29 | * should not be set. Attributes: token, family, loc_id, rem_id, saddr4 | |
| 31 | * closed. An error (copy of sk_err) could be set if an error has been | 30 | * saddr6, daddr4 | daddr6, sport, dport, backup, if_idx [, error]. |
| 32 | * detected for this subflow. | 31 | * @MPTCP_EVENT_SUB_CLOSED: A subflow has been closed. An error (copy of |
| 33 | * @MPTCP_EVENT_SUB_PRIORITY: token, family, loc_id, rem_id, saddr4 | saddr6, | 32 | * sk_err) could be set if an error has been detected for this subflow. |
| 34 | * daddr4 | daddr6, sport, dport, backup, if_idx [, error] The priority of a | 33 | * Attributes: token, family, loc_id, rem_id, saddr4 | saddr6, daddr4 | |
| 35 | * subflow has changed. 'error' should not be set. | 34 | * daddr6, sport, dport, backup, if_idx [, error]. |
| 36 | * @MPTCP_EVENT_LISTENER_CREATED: family, sport, saddr4 | saddr6 A new PM | 35 | * @MPTCP_EVENT_SUB_PRIORITY: The priority of a subflow has changed. 'error' |
| 37 | * listener is created. | 36 | * should not be set. Attributes: token, family, loc_id, rem_id, saddr4 | |
| 38 | * @MPTCP_EVENT_LISTENER_CLOSED: family, sport, saddr4 | saddr6 A PM listener | 37 | * saddr6, daddr4 | daddr6, sport, dport, backup, if_idx [, error]. |
| 39 | * is closed. | 38 | * @MPTCP_EVENT_LISTENER_CREATED: A new PM listener is created. Attributes: |
| 39 | * family, sport, saddr4 | saddr6. | ||
| 40 | * @MPTCP_EVENT_LISTENER_CLOSED: A PM listener is closed. Attributes: family, | ||
| 41 | * sport, saddr4 | saddr6. | ||
| 40 | */ | 42 | */ |
| 41 | enum mptcp_event_type { | 43 | enum mptcp_event_type { |
| 42 | MPTCP_EVENT_UNSPEC, | 44 | MPTCP_EVENT_UNSPEC, |
| @@ -8,6 +8,13 @@ · 7 unmodified lines | |||
| 8 | #define __always_inline inline | 8 | #define __always_inline inline |
| 9 | #endif | 9 | #endif |
| 10 | 10 | ||
| 11 | /* Not all C++ standards support type declarations inside an anonymous union */ | ||
| 12 | #ifndef __cplusplus | ||
| 13 | #define __struct_group_tag(TAG) TAG | ||
| 14 | #else | ||
| 15 | #define __struct_group_tag(TAG) | ||
| 16 | #endif | ||
| 17 | |||
| 11 | /** | 18 | /** |
| 12 | * __struct_group() - Create a mirrored named and anonyomous struct | 19 | * __struct_group() - Create a mirrored named and anonyomous struct |
| 13 | * | 20 | * |
| @@ -20,13 +27,13 @@ · 6 unmodified lines | |||
| 20 | * and size: one anonymous and one named. The former's members can be used | 27 | * and size: one anonymous and one named. The former's members can be used |
| 21 | * normally without sub-struct naming, and the latter can be used to | 28 | * normally without sub-struct naming, and the latter can be used to |
| 22 | * reason about the start, end, and size of the group of struct members. | 29 | * reason about the start, end, and size of the group of struct members. |
| 23 | * The named struct can also be explicitly tagged for layer reuse, as well | 30 | * The named struct can also be explicitly tagged for layer reuse (C only), |
| 24 | * as both having struct attributes appended. | 31 | * as well as both having struct attributes appended. |
| 25 | */ | 32 | */ |
| 26 | #define __struct_group(TAG, NAME, ATTRS, MEMBERS...) \ | 33 | #define __struct_group(TAG, NAME, ATTRS, MEMBERS...) \ |
| 27 | union { \ | 34 | union { \ |
| 28 | struct { MEMBERS } ATTRS; \ | 35 | struct { MEMBERS } ATTRS; \ |
| 29 | struct TAG { MEMBERS } ATTRS NAME; \ | 36 | struct __struct_group_tag(TAG) { MEMBERS } ATTRS NAME; \ |
| 30 | } ATTRS | 37 | } ATTRS |
| 31 | 38 | ||
| 32 | #ifdef __cplusplus | 39 | #ifdef __cplusplus |
| @@ -3,8 +3,8 @@ · 2 unmodified lines | |||
| 3 | #define _UAPI_LINUX_THERMAL_H | 3 | #define _UAPI_LINUX_THERMAL_H |
| 4 | 4 | ||
| 5 | #define THERMAL_NAME_LENGTH 20 | 5 | #define THERMAL_NAME_LENGTH 20 |
| 6 | #define THERMAL_THRESHOLD_WAY_UP BIT(0) | 6 | #define THERMAL_THRESHOLD_WAY_UP 0x1 |
| 7 | #define THERMAL_THRESHOLD_WAY_DOWN BIT(1) | 7 | #define THERMAL_THRESHOLD_WAY_DOWN 0x2 |
| 8 | 8 | ||
| 9 | enum thermal_device_mode { | 9 | enum thermal_device_mode { |
| 10 | THERMAL_DEVICE_DISABLED = 0, | 10 | THERMAL_DEVICE_DISABLED = 0, |
| @@ -334,6 +334,14 @@ union snd_codec_options { · 333 unmodified lines | |||
| 334 | struct snd_dec_wma wma_d; | 334 | struct snd_dec_wma wma_d; |
| 335 | struct snd_dec_alac alac_d; | 335 | struct snd_dec_alac alac_d; |
| 336 | struct snd_dec_ape ape_d; | 336 | struct snd_dec_ape ape_d; |
| 337 | struct { | ||
| 338 | __u32 out_sample_rate; | ||
| 339 | } src_d; | ||
| 340 | } __attribute__((packed, aligned(4))); | ||
| 341 | |||
| 342 | struct snd_codec_desc_src { | ||
| 343 | __u32 out_sample_rate_min; | ||
| 344 | __u32 out_sample_rate_max; | ||
| 337 | } __attribute__((packed, aligned(4))); | 345 | } __attribute__((packed, aligned(4))); |
| 338 | 346 | ||
| 339 | /** struct snd_codec_desc - description of codec capabilities | 347 | /** struct snd_codec_desc - description of codec capabilities |
| @@ -347,6 +355,9 @@ union snd_codec_options { · 7 unmodified lines | |||
| 347 | * @modes: Supported modes. See SND_AUDIOMODE defines | 355 | * @modes: Supported modes. See SND_AUDIOMODE defines |
| 348 | * @formats: Supported formats. See SND_AUDIOSTREAMFORMAT defines | 356 | * @formats: Supported formats. See SND_AUDIOSTREAMFORMAT defines |
| 349 | * @min_buffer: Minimum buffer size handled by codec implementation | 357 | * @min_buffer: Minimum buffer size handled by codec implementation |
| 358 | * @pcm_formats: Output (for decoders) or input (for encoders) | ||
| 359 | * PCM formats (required to accel mode, 0 for other modes) | ||
| 360 | * @u_space: union space (for codec dependent data) | ||
| 350 | * @reserved: reserved for future use | 361 | * @reserved: reserved for future use |
| 351 | * | 362 | * |
| 352 | * This structure provides a scalar value for profiles, modes and stream | 363 | * This structure provides a scalar value for profiles, modes and stream |
| @@ -370,7 +381,12 @@ struct snd_codec_desc { · 17 unmodified lines | |||
| 370 | __u32 modes; | 381 | __u32 modes; |
| 371 | __u32 formats; | 382 | __u32 formats; |
| 372 | __u32 min_buffer; | 383 | __u32 min_buffer; |
| 373 | __u32 reserved[15]; | 384 | __u32 pcm_formats; |
| 385 | union { | ||
| 386 | __u32 u_space[6]; | ||
| 387 | struct snd_codec_desc_src src; | ||
| 388 | } __attribute__((packed, aligned(4))); | ||
| 389 | __u32 reserved[8]; | ||
| 374 | } __attribute__((packed, aligned(4))); | 390 | } __attribute__((packed, aligned(4))); |
| 375 | 391 | ||
| 376 | /** struct snd_codec | 392 | /** struct snd_codec |
| @@ -395,6 +411,8 @@ struct snd_codec_desc { · 18 unmodified lines | |||
| 395 | * @align: Block alignment in bytes of an audio sample. | 411 | * @align: Block alignment in bytes of an audio sample. |
| 396 | * Only required for PCM or IEC formats. | 412 | * Only required for PCM or IEC formats. |
| 397 | * @options: encoder-specific settings | 413 | * @options: encoder-specific settings |
| 414 | * @pcm_format: Output (for decoders) or input (for encoders) | ||
| 415 | * PCM formats (required to accel mode, 0 for other modes) | ||
| 398 | * @reserved: reserved for future use | 416 | * @reserved: reserved for future use |
| 399 | */ | 417 | */ |
| 400 | 418 | ||
| @@ -411,7 +429,8 @@ struct snd_codec { · 10 unmodified lines | |||
| 411 | __u32 format; | 429 | __u32 format; |
| 412 | __u32 align; | 430 | __u32 align; |
| 413 | union snd_codec_options options; | 431 | union snd_codec_options options; |
| 414 | __u32 reserved[3]; | 432 | __u32 pcm_format; |
| 433 | __u32 reserved[2]; | ||
| 415 | } __attribute__((packed, aligned(4))); | 434 | } __attribute__((packed, aligned(4))); |
| 416 | 435 | ||
| 417 | #endif | 436 | #endif |
| @@ -153,6 +153,8 @@ · 152 unmodified lines | |||
| 153 | /* Stream */ | 153 | /* Stream */ |
| 154 | #define SOF_TKN_STREAM_PLAYBACK_COMPATIBLE_D0I3 1200 | 154 | #define SOF_TKN_STREAM_PLAYBACK_COMPATIBLE_D0I3 1200 |
| 155 | #define SOF_TKN_STREAM_CAPTURE_COMPATIBLE_D0I3 1201 | 155 | #define SOF_TKN_STREAM_CAPTURE_COMPATIBLE_D0I3 1201 |
| 156 | #define SOF_TKN_STREAM_PLAYBACK_PAUSE_SUPPORTED 1202 | ||
| 157 | #define SOF_TKN_STREAM_CAPTURE_PAUSE_SUPPORTED 1203 | ||
| 156 | 158 | ||
| 157 | /* Led control for mute switches */ | 159 | /* Led control for mute switches */ |
| 158 | #define SOF_TKN_MUTE_LED_USE 1300 | 160 | #define SOF_TKN_MUTE_LED_USE 1300 |