History

Merge remote-tracking branches 'asoc/fix/cs4265', 'asoc/fix/intel' and 'asoc/fix/topology' into asoc-linus

Mark Brown committed 11 years ago

Commit d00a9e04 parents 78be55a bffc449 45f503d c7bcf875 files · +76 −34Browse files

Showing the changes to include/uapi (1 of 5 files). Show all

Unified · Split

include/uapi/sound/asoc.h+24−11
@@ -77,7 +77,7 @@ · 76 unmodified lines
77#define SND_SOC_TPLG_NUM_TEXTS 1677#define SND_SOC_TPLG_NUM_TEXTS 16
78 78
79/* ABI version */79/* ABI version */
80#define SND_SOC_TPLG_ABI_VERSION 0x280#define SND_SOC_TPLG_ABI_VERSION 0x3
81 81
82/* Max size of TLV data */82/* Max size of TLV data */
83#define SND_SOC_TPLG_TLV_SIZE 3283#define SND_SOC_TPLG_TLV_SIZE 32
@@ -97,7 +97,8 @@ · 13 unmodified lines
97#define SND_SOC_TPLG_TYPE_PCM 797#define SND_SOC_TPLG_TYPE_PCM 7
98#define SND_SOC_TPLG_TYPE_MANIFEST 898#define SND_SOC_TPLG_TYPE_MANIFEST 8
99#define SND_SOC_TPLG_TYPE_CODEC_LINK 999#define SND_SOC_TPLG_TYPE_CODEC_LINK 9
100#define SND_SOC_TPLG_TYPE_MAX SND_SOC_TPLG_TYPE_CODEC_LINK100#define SND_SOC_TPLG_TYPE_PDATA 10
101#define SND_SOC_TPLG_TYPE_MAX SND_SOC_TPLG_TYPE_PDATA
101 102
102/* vendor block IDs - please add new vendor types to end */103/* vendor block IDs - please add new vendor types to end */
103#define SND_SOC_TPLG_TYPE_VENDOR_FW 1000104#define SND_SOC_TPLG_TYPE_VENDOR_FW 1000
@@ -137,11 +138,19 @@ struct snd_soc_tplg_private { · 33 unmodified lines
137/*138/*
138 * Kcontrol TLV data.139 * Kcontrol TLV data.
139 */140 */
141struct snd_soc_tplg_tlv_dbscale {
142 __le32 min;
143 __le32 step;
144 __le32 mute;
145} __attribute__((packed));
146
140struct snd_soc_tplg_ctl_tlv {147struct snd_soc_tplg_ctl_tlv {
141 __le32 size; /* in bytes aligned to 4 */148 __le32 size; /* in bytes of this structure */
142 __le32 numid; /* control element numeric identification */149 __le32 type; /* SNDRV_CTL_TLVT_*, type of TLV */
143 __le32 count; /* number of elem in data array */150 union {
144 __le32 data[SND_SOC_TPLG_TLV_SIZE];151 __le32 data[SND_SOC_TPLG_TLV_SIZE];
152 struct snd_soc_tplg_tlv_dbscale scale;
153 };
145} __attribute__((packed));154} __attribute__((packed));
146 155
147/*156/*
@@ -155,9 +164,11 @@ struct snd_soc_tplg_channel { · 7 unmodified lines
155} __attribute__((packed));164} __attribute__((packed));
156 165
157/*166/*
158 * Kcontrol Operations IDs167 * Genericl Operations IDs, for binding Kcontrol or Bytes ext ops
168 * Kcontrol ops need get/put/info.
169 * Bytes ext ops need get/put.
159 */170 */
160struct snd_soc_tplg_kcontrol_ops_id {171struct snd_soc_tplg_io_ops {
161 __le32 get;172 __le32 get;
162 __le32 put;173 __le32 put;
163 __le32 info;174 __le32 info;
@@ -171,8 +182,8 @@ struct snd_soc_tplg_ctl_hdr { · 7 unmodified lines
171 __le32 type;182 __le32 type;
172 char name[SNDRV_CTL_ELEM_ID_NAME_MAXLEN];183 char name[SNDRV_CTL_ELEM_ID_NAME_MAXLEN];
173 __le32 access;184 __le32 access;
174 struct snd_soc_tplg_kcontrol_ops_id ops;185 struct snd_soc_tplg_io_ops ops;
175 __le32 tlv_size; /* non zero means control has TLV data */186 struct snd_soc_tplg_ctl_tlv tlv;
176} __attribute__((packed));187} __attribute__((packed));
177 188
178/*189/*
@@ -238,6 +249,7 @@ struct snd_soc_tplg_manifest { · 59 unmodified lines
238 __le32 graph_elems; /* number of graph elements */249 __le32 graph_elems; /* number of graph elements */
239 __le32 dai_elems; /* number of DAI elements */250 __le32 dai_elems; /* number of DAI elements */
240 __le32 dai_link_elems; /* number of DAI link elements */251 __le32 dai_link_elems; /* number of DAI link elements */
252 struct snd_soc_tplg_private priv;
241} __attribute__((packed));253} __attribute__((packed));
242 254
243/*255/*
@@ -259,7 +271,6 @@ struct snd_soc_tplg_mixer_control { · 15 unmodified lines
259 __le32 invert;271 __le32 invert;
260 __le32 num_channels;272 __le32 num_channels;
261 struct snd_soc_tplg_channel channel[SND_SOC_TPLG_MAX_CHAN];273 struct snd_soc_tplg_channel channel[SND_SOC_TPLG_MAX_CHAN];
262 struct snd_soc_tplg_ctl_tlv tlv;
263 struct snd_soc_tplg_private priv;274 struct snd_soc_tplg_private priv;
264} __attribute__((packed));275} __attribute__((packed));
265 276
@@ -303,6 +314,7 @@ struct snd_soc_tplg_bytes_control { · 37 unmodified lines
303 __le32 mask;314 __le32 mask;
304 __le32 base;315 __le32 base;
305 __le32 num_regs;316 __le32 num_regs;
317 struct snd_soc_tplg_io_ops ext_ops;
306 struct snd_soc_tplg_private priv;318 struct snd_soc_tplg_private priv;
307} __attribute__((packed));319} __attribute__((packed));
308 320
@@ -347,6 +359,7 @@ struct snd_soc_tplg_dapm_widget { · 38 unmodified lines
347 __le32 reg; /* negative reg = no direct dapm */359 __le32 reg; /* negative reg = no direct dapm */
348 __le32 shift; /* bits to shift */360 __le32 shift; /* bits to shift */
349 __le32 mask; /* non-shifted mask */361 __le32 mask; /* non-shifted mask */
362 __le32 subseq; /* sort within widget type */
350 __u32 invert; /* invert the power bit */363 __u32 invert; /* invert the power bit */
351 __u32 ignore_suspend; /* kept enabled over suspend */364 __u32 ignore_suspend; /* kept enabled over suspend */
352 __u16 event_flags;365 __u16 event_flags;