59 NOT_SET =
static_cast<uint32_t
>(-1),
291 struct virtio_snd_ctl_iec958 {
329#define ASSERT_VALID_MSG_TYPE(T, size) \
330 static_assert(sizeof(T) == (size), #T " has the wrong size")
342#undef ASSERT_VALID_MSG_TYPE
Definition: alloc_driver.h:20
AudioChannelMap
Definition: shm_layout.h:116
@ VIRTIO_SND_CHMAP_BRC
Definition: shm_layout.h:153
@ VIRTIO_SND_CHMAP_TFC
Definition: shm_layout.h:141
@ VIRTIO_SND_CHMAP_RL
Definition: shm_layout.h:122
@ VIRTIO_SND_CHMAP_TSL
Definition: shm_layout.h:147
@ VIRTIO_SND_CHMAP_FRC
Definition: shm_layout.h:130
@ VIRTIO_SND_CHMAP_TFL
Definition: shm_layout.h:139
@ VIRTIO_SND_CHMAP_FLH
Definition: shm_layout.h:135
@ VIRTIO_SND_CHMAP_FCH
Definition: shm_layout.h:136
@ VIRTIO_SND_CHMAP_FRW
Definition: shm_layout.h:134
@ VIRTIO_SND_CHMAP_LLFE
Definition: shm_layout.h:149
@ VIRTIO_SND_CHMAP_TRL
Definition: shm_layout.h:142
@ VIRTIO_SND_CHMAP_FR
Definition: shm_layout.h:121
@ VIRTIO_SND_CHMAP_FLC
Definition: shm_layout.h:129
@ VIRTIO_SND_CHMAP_FC
Definition: shm_layout.h:124
@ VIRTIO_SND_CHMAP_BLC
Definition: shm_layout.h:152
@ VIRTIO_SND_CHMAP_FL
Definition: shm_layout.h:120
@ VIRTIO_SND_CHMAP_RRC
Definition: shm_layout.h:132
@ VIRTIO_SND_CHMAP_FRH
Definition: shm_layout.h:137
@ VIRTIO_SND_CHMAP_TC
Definition: shm_layout.h:138
@ VIRTIO_SND_CHMAP_RLC
Definition: shm_layout.h:131
@ VIRTIO_SND_CHMAP_TFR
Definition: shm_layout.h:140
@ VIRTIO_SND_CHMAP_MONO
Definition: shm_layout.h:119
@ VIRTIO_SND_CHMAP_RC
Definition: shm_layout.h:128
@ VIRTIO_SND_CHMAP_BC
Definition: shm_layout.h:151
@ VIRTIO_SND_CHMAP_NONE
Definition: shm_layout.h:117
@ VIRTIO_SND_CHMAP_LFE
Definition: shm_layout.h:125
@ VIRTIO_SND_CHMAP_TRC
Definition: shm_layout.h:144
@ VIRTIO_SND_CHMAP_TFRC
Definition: shm_layout.h:146
@ VIRTIO_SND_CHMAP_TRR
Definition: shm_layout.h:143
@ VIRTIO_SND_CHMAP_SL
Definition: shm_layout.h:126
@ VIRTIO_SND_CHMAP_SR
Definition: shm_layout.h:127
@ VIRTIO_SND_CHMAP_RR
Definition: shm_layout.h:123
@ VIRTIO_SND_CHMAP_FLW
Definition: shm_layout.h:133
@ VIRTIO_SND_CHMAP_NA
Definition: shm_layout.h:118
@ VIRTIO_SND_CHMAP_TFLC
Definition: shm_layout.h:145
@ VIRTIO_SND_CHMAP_TSR
Definition: shm_layout.h:148
@ VIRTIO_SND_CHMAP_RLFE
Definition: shm_layout.h:150
AudioCommandType
Definition: shm_layout.h:25
@ VIRTIO_SND_R_CTL_TLV_WRITE
@ VIRTIO_SND_R_CTL_ENUM_ITEMS
@ VIRTIO_SND_R_CTL_TLV_READ
@ VIRTIO_SND_R_CTL_TLV_COMMAND
@ VIRTIO_SND_R_PCM_SET_PARAMS
@ VIRTIO_SND_R_JACK_REMAP
@ VIRTIO_SND_R_PCM_RELEASE
@ VIRTIO_SND_R_CHMAP_INFO
@ VIRTIO_SND_R_PCM_PREPARE
AudioStreamFormat
Definition: shm_layout.h:67
@ VIRTIO_SND_PCM_FMT_S24_3
@ VIRTIO_SND_PCM_FMT_S18_3
@ VIRTIO_SND_PCM_FMT_MU_LAW
@ VIRTIO_SND_PCM_FMT_FLOAT
@ VIRTIO_SND_PCM_FMT_FLOAT64
@ VIRTIO_SND_PCM_FMT_A_LAW
@ VIRTIO_SND_PCM_FMT_U18_3
@ VIRTIO_SND_PCM_FMT_DSD_U16
@ VIRTIO_SND_PCM_FMT_DSD_U32
@ VIRTIO_SND_PCM_FMT_IEC958_SUBFRAME
@ VIRTIO_SND_PCM_FMT_IMA_ADPCM
@ VIRTIO_SND_PCM_FMT_U24_3
@ VIRTIO_SND_PCM_FMT_DSD_U8
@ VIRTIO_SND_PCM_FMT_S20_3
@ VIRTIO_SND_PCM_FMT_U20_3
constexpr uint32_t VIOS_VERSION
Definition: shm_layout.h:306
constexpr uint8_t VIRTIO_SND_CHMAP_MAX_SIZE
Definition: shm_layout.h:184
AudioJackFeatures
Definition: shm_layout.h:172
@ VIRTIO_SND_JACK_F_REMAP
Definition: shm_layout.h:172
AudioControlAccess
Definition: shm_layout.h:245
@ VIRTIO_SND_CTL_ACCESS_VOLATILE
Definition: shm_layout.h:248
@ VIRTIO_SND_CTL_ACCESS_INACTIVE
Definition: shm_layout.h:249
@ VIRTIO_SND_CTL_ACCESS_TLV_COMMAND
Definition: shm_layout.h:252
@ VIRTIO_SND_CTL_ACCESS_TLV_WRITE
Definition: shm_layout.h:251
@ VIRTIO_SND_CTL_ACCESS_WRITE
Definition: shm_layout.h:247
@ VIRTIO_SND_CTL_ACCESS_TLV_READ
Definition: shm_layout.h:250
@ VIRTIO_SND_CTL_ACCESS_READ
Definition: shm_layout.h:246
AudioControlType
Definition: shm_layout.h:236
@ VIRTIO_SND_CTL_TYPE_INTEGER64
@ VIRTIO_SND_CTL_TYPE_BYTES
@ VIRTIO_SND_CTL_TYPE_IEC958
@ VIRTIO_SND_CTL_TYPE_BOOLEAN
@ VIRTIO_SND_CTL_TYPE_INTEGER
@ VIRTIO_SND_CTL_TYPE_ENUMERATED
AudioControlRole
Definition: shm_layout.h:229
@ VIRTIO_SND_CTL_ROLE_GAIN
@ VIRTIO_SND_CTL_ROLE_UNDEFINED
@ VIRTIO_SND_CTL_ROLE_MUTE
@ VIRTIO_SND_CTL_ROLE_VOLUME
AudioStreamRate
Definition: shm_layout.h:98
@ VIRTIO_SND_PCM_RATE_88200
Definition: shm_layout.h:108
@ VIRTIO_SND_PCM_RATE_44100
Definition: shm_layout.h:105
@ VIRTIO_SND_PCM_RATE_11025
Definition: shm_layout.h:101
@ VIRTIO_SND_PCM_RATE_64000
Definition: shm_layout.h:107
@ VIRTIO_SND_PCM_RATE_192000
Definition: shm_layout.h:111
@ VIRTIO_SND_PCM_RATE_96000
Definition: shm_layout.h:109
@ VIRTIO_SND_PCM_RATE_22050
Definition: shm_layout.h:103
@ VIRTIO_SND_PCM_RATE_32000
Definition: shm_layout.h:104
@ VIRTIO_SND_PCM_RATE_176400
Definition: shm_layout.h:110
@ VIRTIO_SND_PCM_RATE_16000
Definition: shm_layout.h:102
@ VIRTIO_SND_PCM_RATE_8000
Definition: shm_layout.h:100
@ VIRTIO_SND_PCM_RATE_48000
Definition: shm_layout.h:106
@ VIRTIO_SND_PCM_RATE_5512
Definition: shm_layout.h:99
@ VIRTIO_SND_PCM_RATE_384000
Definition: shm_layout.h:112
AudioStatus
Definition: shm_layout.h:51
AudioStreamDirection
Definition: shm_layout.h:62
ASSERT_VALID_MSG_TYPE(virtio_snd_query_info, 16)
Definition: shm_layout.h:322
uint32_t consumed_length
Definition: shm_layout.h:325
virtio_snd_pcm_status status
Definition: shm_layout.h:323
uint32_t buffer_offset
Definition: shm_layout.h:324
Definition: shm_layout.h:316
uint32_t buffer_len
Definition: shm_layout.h:319
virtio_snd_pcm_xfer io_xfer
Definition: shm_layout.h:317
uint32_t buffer_offset
Definition: shm_layout.h:318
Definition: shm_layout.h:308
uint32_t version
Definition: shm_layout.h:309
uint32_t jacks
Definition: shm_layout.h:310
uint32_t controls
Definition: shm_layout.h:313
uint32_t streams
Definition: shm_layout.h:311
uint32_t chmaps
Definition: shm_layout.h:312
Definition: shm_layout.h:185
uint8_t direction
Definition: shm_layout.h:187
uint8_t channels
Definition: shm_layout.h:188
struct virtio_snd_info hdr
Definition: shm_layout.h:186
uint8_t positions[VIRTIO_SND_CHMAP_MAX_SIZE]
Definition: shm_layout.h:189
Definition: shm_layout.h:300
Le16 control_id
Definition: shm_layout.h:302
Le16 mask
Definition: shm_layout.h:303
struct virtio_snd_hdr hdr
Definition: shm_layout.h:301
Definition: shm_layout.h:280
struct virtio_snd_hdr hdr
Definition: shm_layout.h:281
Le32 control_id
Definition: shm_layout.h:282
Definition: shm_layout.h:255
struct virtio_snd_info hdr
Definition: shm_layout.h:256
uint8_t name[44]
Definition: shm_layout.h:262
struct cuttlefish::virtio_snd_ctl_info::@20::@22 integer64
Le32 min
Definition: shm_layout.h:265
Le32 items
Definition: shm_layout.h:275
Le32 index
Definition: shm_layout.h:261
Le32 max
Definition: shm_layout.h:266
Le64 max
Definition: shm_layout.h:271
Le32 step
Definition: shm_layout.h:267
Le32 access
Definition: shm_layout.h:259
Le32 count
Definition: shm_layout.h:260
Le32 type
Definition: shm_layout.h:258
struct cuttlefish::virtio_snd_ctl_info::@20::@21 integer
Le32 role
Definition: shm_layout.h:257
Le64 step
Definition: shm_layout.h:272
union cuttlefish::virtio_snd_ctl_info::@20 value
Le64 min
Definition: shm_layout.h:270
struct cuttlefish::virtio_snd_ctl_info::@20::@23 enumerated
Definition: shm_layout.h:285
uint8_t dig_subframe[4]
Definition: shm_layout.h:295
uint8_t subcode[147]
Definition: shm_layout.h:293
union cuttlefish::virtio_snd_ctl_value::@24 value
uint8_t status[24]
Definition: shm_layout.h:292
Le32 enumerated[128]
Definition: shm_layout.h:289
uint8_t bytes[512]
Definition: shm_layout.h:290
Le32 integer[128]
Definition: shm_layout.h:287
uint8_t pad
Definition: shm_layout.h:294
Le64 integer64[64]
Definition: shm_layout.h:288
struct cuttlefish::virtio_snd_ctl_value::@24::virtio_snd_ctl_iec958 iec958
Definition: shm_layout.h:156
Le32 code
Definition: shm_layout.h:157
Definition: shm_layout.h:167
Le32 hda_fn_nid
Definition: shm_layout.h:168
Definition: shm_layout.h:174
struct virtio_snd_info hdr
Definition: shm_layout.h:175
Le32 features
Definition: shm_layout.h:176
uint8_t padding[7]
Definition: shm_layout.h:181
uint8_t connected
Definition: shm_layout.h:179
Le32 hda_reg_caps
Definition: shm_layout.h:178
Le32 hda_reg_defconf
Definition: shm_layout.h:177
Definition: shm_layout.h:204
Le32 stream_id
Definition: shm_layout.h:206
struct virtio_snd_hdr hdr
Definition: shm_layout.h:205
Definition: shm_layout.h:192
Le32 features
Definition: shm_layout.h:194
Le64 formats
Definition: shm_layout.h:195
uint8_t channels_min
Definition: shm_layout.h:198
struct virtio_snd_info hdr
Definition: shm_layout.h:193
Le64 rates
Definition: shm_layout.h:196
uint8_t channels_max
Definition: shm_layout.h:199
uint8_t padding[5]
Definition: shm_layout.h:201
uint8_t direction
Definition: shm_layout.h:197
Definition: shm_layout.h:209
Le32 buffer_bytes
Definition: shm_layout.h:211
uint8_t format
Definition: shm_layout.h:215
Le32 features
Definition: shm_layout.h:213
uint8_t rate
Definition: shm_layout.h:216
uint8_t padding
Definition: shm_layout.h:217
uint8_t channels
Definition: shm_layout.h:214
Le32 period_bytes
Definition: shm_layout.h:212
struct virtio_snd_pcm_hdr hdr
Definition: shm_layout.h:210
Definition: shm_layout.h:224
Le32 status
Definition: shm_layout.h:225
Le32 latency_bytes
Definition: shm_layout.h:226
Definition: shm_layout.h:220
Le32 stream_id
Definition: shm_layout.h:221
Definition: shm_layout.h:160
Le32 start_id
Definition: shm_layout.h:162
Le32 count
Definition: shm_layout.h:163
struct virtio_snd_hdr hdr
Definition: shm_layout.h:161
Le32 size
Definition: shm_layout.h:164