History

Merge tag 'v4.2-rc7' into drm-next

Linux 4.2-rc7 Backmerge master for i915 fixes

Dave Airlie committed 11 years ago

Commit 4eebf602 parents 8f9cb50 2c6625c825 files · +9343 −5246Browse files

Showing the changes to include/uapi (8 of 825 files). Show all

Unified · Split

8 files
  1. include/uapi/drm/amdgpu_drm.h +3 −1
  2. include/uapi/drm/i915_drm.h +8 −0
  3. include/uapi/drm/radeon_drm.h +1 −1
  4. include/uapi/linux/pci_regs.h +1 −0
  5. include/uapi/linux/virtio_net.h +16 −0
  6. include/uapi/linux/virtio_pci.h +6 −0
  7. include/uapi/linux/virtio_ring.h +4 −1
  8. include/uapi/sound/asoc.h +26 −13
include/uapi/drm/amdgpu_drm.h+3−1
@@ -32,7 +32,7 @@ · 31 unmodified lines
3232 #ifndef __AMDGPU_DRM_H__
3333 #define __AMDGPU_DRM_H__
3434
35−#include <drm/drm.h>
35+#include "drm.h"
3636
3737 #define DRM_AMDGPU_GEM_CREATE 0x00
3838 #define DRM_AMDGPU_GEM_MMAP 0x01
@@ -614,6 +614,8 @@ struct drm_amdgpu_info_device { · 575 unmodified lines
614614 uint32_t vram_type;
615615 /** video memory bit width*/
616616 uint32_t vram_bit_width;
617+ /* vce harvesting instance */
618+ uint32_t vce_harvest_config;
617619 };
618620
619621 struct drm_amdgpu_info_hw_ip {
include/uapi/drm/i915_drm.h+8−0
@@ -1081,6 +1081,14 @@ struct drm_i915_reg_read { · 1080 unmodified lines
10811081 __u64 offset;
10821082 __u64 val; /* Return value */
10831083 };
1084+/* Known registers:
1085+ *
1086+ * Render engine timestamp - 0x2358 + 64bit - gen7+
1087+ * - Note this register returns an invalid value if using the default
1088+ * single instruction 8byte read, in order to workaround that use
1089+ * offset (0x2538 | 1) instead.
1090+ *
1091+ */
10841092
10851093 struct drm_i915_reset_stats {
10861094 __u32 ctx_id;
include/uapi/drm/radeon_drm.h+1−1
@@ -33,7 +33,7 @@ · 32 unmodified lines
3333 #ifndef __RADEON_DRM_H__
3434 #define __RADEON_DRM_H__
3535
36−#include <drm/drm.h>
36+#include "drm.h"
3737
3838 /* WARNING: If you change any of these defines, make sure to change the
3939 * defines in the X server file (radeon_sarea.h)
include/uapi/linux/pci_regs.h+1−0
@@ -319,6 +319,7 @@ · 318 unmodified lines
319319 #define PCI_MSIX_PBA 8 /* Pending Bit Array offset */
320320 #define PCI_MSIX_PBA_BIR 0x00000007 /* BAR index */
321321 #define PCI_MSIX_PBA_OFFSET 0xfffffff8 /* Offset into specified BAR */
322+#define PCI_MSIX_FLAGS_BIRMASK PCI_MSIX_PBA_BIR /* deprecated */
322323 #define PCI_CAP_MSIX_SIZEOF 12 /* size of MSIX registers */
323324
324325 /* MSI-X Table entry format */
include/uapi/linux/virtio_net.h+16−0
@@ -34,6 +34,7 @@ · 33 unmodified lines
3434 /* The feature bitmap for virtio net */
3535 #define VIRTIO_NET_F_CSUM 0 /* Host handles pkts w/ partial csum */
3636 #define VIRTIO_NET_F_GUEST_CSUM 1 /* Guest handles pkts w/ partial csum */
37+#define VIRTIO_NET_F_CTRL_GUEST_OFFLOADS 2 /* Dynamic offload configuration. */
3738 #define VIRTIO_NET_F_MAC 5 /* Host has given MAC address. */
3839 #define VIRTIO_NET_F_GUEST_TSO4 7 /* Guest can handle TSOv4 in. */
3940 #define VIRTIO_NET_F_GUEST_TSO6 8 /* Guest can handle TSOv6 in. */
@@ -226,4 +227,19 @@ struct virtio_net_ctrl_mq { · 186 unmodified lines
226227 #define VIRTIO_NET_CTRL_MQ_VQ_PAIRS_MIN 1
227228 #define VIRTIO_NET_CTRL_MQ_VQ_PAIRS_MAX 0x8000
228229
230+/*
231+ * Control network offloads
232+ *
233+ * Reconfigures the network offloads that Guest can handle.
234+ *
235+ * Available with the VIRTIO_NET_F_CTRL_GUEST_OFFLOADS feature bit.
236+ *
237+ * Command data format matches the feature bit mask exactly.
238+ *
239+ * See VIRTIO_NET_F_GUEST_* for the list of offloads
240+ * that can be enabled/disabled.
241+ */
242+#define VIRTIO_NET_CTRL_GUEST_OFFLOADS 5
243+#define VIRTIO_NET_CTRL_GUEST_OFFLOADS_SET 0
244+
229245 #endif /* _LINUX_VIRTIO_NET_H */
include/uapi/linux/virtio_pci.h+6−0
@@ -157,6 +157,12 @@ struct virtio_pci_common_cfg { · 156 unmodified lines
157157 __le32 queue_used_hi; /* read-write */
158158 };
159159
160+/* Fields in VIRTIO_PCI_CAP_PCI_CFG: */
161+struct virtio_pci_cfg_cap {
162+ struct virtio_pci_cap cap;
163+ __u8 pci_cfg_data[4]; /* Data for BAR access. */
164+};
165+
160166 /* Macro versions of offsets for the Old Timers! */
161167 #define VIRTIO_PCI_CAP_VNDR 0
162168 #define VIRTIO_PCI_CAP_NEXT 1
include/uapi/linux/virtio_ring.h+4−1
@@ -31,6 +31,9 @@ · 30 unmodified lines
3131 * SUCH DAMAGE.
3232 *
3333 * Copyright Rusty Russell IBM Corporation 2007. */
34+#ifndef __KERNEL__
35+#include <stdint.h>
36+#endif
3437 #include <linux/types.h>
3538 #include <linux/virtio_types.h>
3639
@@ -143,7 +146,7 @@ static inline void vring_init(struct vring *vr, unsigned int num, void *p, · 106 unmodified lines
143146 vr->num = num;
144147 vr->desc = p;
145148 vr->avail = p + num*sizeof(struct vring_desc);
146− vr->used = (void *)(((unsigned long)&vr->avail->ring[num] + sizeof(__virtio16)
149+ vr->used = (void *)(((uintptr_t)&vr->avail->ring[num] + sizeof(__virtio16)
147150 + align-1) & ~(align - 1));
148151 }
149152
include/uapi/sound/asoc.h+26−13
@@ -77,7 +77,7 @@ · 76 unmodified lines
7777 #define SND_SOC_TPLG_NUM_TEXTS 16
7878
7979 /* ABI version */
80−#define SND_SOC_TPLG_ABI_VERSION 0x2
80+#define SND_SOC_TPLG_ABI_VERSION 0x3
8181
8282 /* Max size of TLV data */
8383 #define SND_SOC_TPLG_TLV_SIZE 32
@@ -97,7 +97,8 @@ · 13 unmodified lines
9797 #define SND_SOC_TPLG_TYPE_PCM 7
9898 #define SND_SOC_TPLG_TYPE_MANIFEST 8
9999 #define SND_SOC_TPLG_TYPE_CODEC_LINK 9
100−#define SND_SOC_TPLG_TYPE_MAX SND_SOC_TPLG_TYPE_CODEC_LINK
100+#define SND_SOC_TPLG_TYPE_PDATA 10
101+#define SND_SOC_TPLG_TYPE_MAX SND_SOC_TPLG_TYPE_PDATA
101102
102103 /* vendor block IDs - please add new vendor types to end */
103104 #define SND_SOC_TPLG_TYPE_VENDOR_FW 1000
@@ -110,7 +111,7 @@ · 6 unmodified lines
110111
111112 /*
112113 * Block Header.
113− * This header preceeds all object and object arrays below.
114+ * This header precedes all object and object arrays below.
114115 */
115116 struct snd_soc_tplg_hdr {
116117 __le32 magic; /* magic number */
@@ -137,11 +138,19 @@ struct snd_soc_tplg_private { · 20 unmodified lines
137138 /*
138139 * Kcontrol TLV data.
139140 */
141+struct snd_soc_tplg_tlv_dbscale {
142+ __le32 min;
143+ __le32 step;
144+ __le32 mute;
145+} __attribute__((packed));
146+
140147 struct snd_soc_tplg_ctl_tlv {
141− __le32 size; /* in bytes aligned to 4 */
142− __le32 numid; /* control element numeric identification */
143− __le32 count; /* number of elem in data array */
144− __le32 data[SND_SOC_TPLG_TLV_SIZE];
148+ __le32 size; /* in bytes of this structure */
149+ __le32 type; /* SNDRV_CTL_TLVT_*, type of TLV */
150+ union {
151+ __le32 data[SND_SOC_TPLG_TLV_SIZE];
152+ struct snd_soc_tplg_tlv_dbscale scale;
153+ };
145154 } __attribute__((packed));
146155
147156 /*
@@ -155,9 +164,11 @@ struct snd_soc_tplg_channel { · 7 unmodified lines
155164 } __attribute__((packed));
156165
157166 /*
158− * Kcontrol Operations IDs
167+ * Genericl Operations IDs, for binding Kcontrol or Bytes ext ops
168+ * Kcontrol ops need get/put/info.
169+ * Bytes ext ops need get/put.
159170 */
160−struct snd_soc_tplg_kcontrol_ops_id {
171+struct snd_soc_tplg_io_ops {
161172 __le32 get;
162173 __le32 put;
163174 __le32 info;
@@ -171,8 +182,8 @@ struct snd_soc_tplg_ctl_hdr { · 7 unmodified lines
171182 __le32 type;
172183 char name[SNDRV_CTL_ELEM_ID_NAME_MAXLEN];
173184 __le32 access;
174− struct snd_soc_tplg_kcontrol_ops_id ops;
175− __le32 tlv_size; /* non zero means control has TLV data */
185+ struct snd_soc_tplg_io_ops ops;
186+ struct snd_soc_tplg_ctl_tlv tlv;
176187 } __attribute__((packed));
177188
178189 /*
@@ -222,7 +233,7 @@ struct snd_soc_tplg_stream_config { · 43 unmodified lines
222233 /*
223234 * Manifest. List totals for each payload type. Not used in parsing, but will
224235 * be passed to the component driver before any other objects in order for any
225− * global componnent resource allocations.
236+ * global component resource allocations.
226237 *
227238 * File block representation for manifest :-
228239 * +-----------------------------------+----+
@@ -238,6 +249,7 @@ struct snd_soc_tplg_manifest { · 9 unmodified lines
238249 __le32 graph_elems; /* number of graph elements */
239250 __le32 dai_elems; /* number of DAI elements */
240251 __le32 dai_link_elems; /* number of DAI link elements */
252+ struct snd_soc_tplg_private priv;
241253 } __attribute__((packed));
242254
243255 /*
@@ -259,7 +271,6 @@ struct snd_soc_tplg_mixer_control { · 15 unmodified lines
259271 __le32 invert;
260272 __le32 num_channels;
261273 struct snd_soc_tplg_channel channel[SND_SOC_TPLG_MAX_CHAN];
262− struct snd_soc_tplg_ctl_tlv tlv;
263274 struct snd_soc_tplg_private priv;
264275 } __attribute__((packed));
265276
@@ -303,6 +314,7 @@ struct snd_soc_tplg_bytes_control { · 37 unmodified lines
303314 __le32 mask;
304315 __le32 base;
305316 __le32 num_regs;
317+ struct snd_soc_tplg_io_ops ext_ops;
306318 struct snd_soc_tplg_private priv;
307319 } __attribute__((packed));
308320
@@ -347,6 +359,7 @@ struct snd_soc_tplg_dapm_widget { · 38 unmodified lines
347359 __le32 reg; /* negative reg = no direct dapm */
348360 __le32 shift; /* bits to shift */
349361 __le32 mask; /* non-shifted mask */
362+ __le32 subseq; /* sort within widget type */
350363 __u32 invert; /* invert the power bit */
351364 __u32 ignore_suspend; /* kept enabled over suspend */
352365 __u16 event_flags;