diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-06-12 14:32:30 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-06-12 14:32:30 -0400 |
commit | 682b7c1c8ea8885aa681ddf530d6cf2ad4f2dc15 (patch) | |
tree | 882003bb4fc56af816246168f8c85d6dde8c6ed9 /include/uapi | |
parent | 16b9057804c02e2d351e9c8f606e909b43cbd9e7 (diff) | |
parent | bc1dfff04a5d4064ba0db1fab13f84ab4f333d2b (diff) |
Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux
Pull drm updates from Dave Airlie:
"This is the main drm merge window pull request, changes all over the
place, mostly normal levels of churn.
Highlights:
Core drm:
More cleanups, fix race on connector/encoder naming, docs updates,
object locking rework in prep for atomic modeset
i915:
mipi DSI support, valleyview power fixes, cursor size fixes,
execlist refactoring, vblank improvements, userptr support, OOM
handling improvements
radeon:
GPUVM tuning and large page size support, gart fixes, deep color
HDMI support, HDMI audio cleanups
nouveau:
- displayport rework should fix lots of issues
- initial gk20a support
- gk110b support
- gk208 fixes
exynos:
probe order fixes, HDMI changes, IPP consolidation
msm:
debugfs updates, misc fixes
ast:
ast2400 support, sync with UMS driver
tegra:
cleanups, hdmi + hw cursor for Tegra 124.
panel:
fixes existing panels add some new ones.
ipuv3:
moved from staging to drivers/gpu"
* 'drm-next' of git://people.freedesktop.org/~airlied/linux: (761 commits)
drm/nouveau/disp/dp: fix tmds passthrough on dp connector
drm/nouveau/dp: probe dpcd to determine connectedness
drm/nv50-: trigger update after all connectors disabled
drm/nv50-: prepare for attaching a SOR to multiple heads
drm/gf119-/disp: fix debug output on update failure
drm/nouveau/disp/dp: make use of postcursor when its available
drm/g94-/disp/dp: take max pullup value across all lanes
drm/nouveau/bios/dp: parse lane postcursor data
drm/nouveau/dp: fix support for dpms
drm/nouveau: register a drm_dp_aux channel for each dp connector
drm/g94-/disp: add method to power-off dp lanes
drm/nouveau/disp/dp: maintain link in response to hpd signal
drm/g94-/disp: bash and wait for something after changing lane power regs
drm/nouveau/disp/dp: split link config/power into two steps
drm/nv50/disp: train PIOR-attached DP from second supervisor
drm/nouveau/disp/dp: make use of existing output data for link training
drm/gf119/disp: start removing direct vbios parsing from supervisor
drm/nv50/disp: start removing direct vbios parsing from supervisor
drm/nouveau/disp/dp: maintain receiver caps in response to hpd signal
drm/nouveau/disp/dp: create subclass for dp outputs
...
Diffstat (limited to 'include/uapi')
-rw-r--r-- | include/uapi/drm/drm_mode.h | 16 | ||||
-rw-r--r-- | include/uapi/drm/i915_drm.h | 17 | ||||
-rw-r--r-- | include/uapi/drm/radeon_drm.h | 2 |
3 files changed, 34 insertions, 1 deletions
diff --git a/include/uapi/drm/drm_mode.h b/include/uapi/drm/drm_mode.h index f104c2603ebe..def54f9e07ca 100644 --- a/include/uapi/drm/drm_mode.h +++ b/include/uapi/drm/drm_mode.h | |||
@@ -181,6 +181,7 @@ struct drm_mode_get_plane_res { | |||
181 | #define DRM_MODE_ENCODER_TVDAC 4 | 181 | #define DRM_MODE_ENCODER_TVDAC 4 |
182 | #define DRM_MODE_ENCODER_VIRTUAL 5 | 182 | #define DRM_MODE_ENCODER_VIRTUAL 5 |
183 | #define DRM_MODE_ENCODER_DSI 6 | 183 | #define DRM_MODE_ENCODER_DSI 6 |
184 | #define DRM_MODE_ENCODER_DPMST 7 | ||
184 | 185 | ||
185 | struct drm_mode_get_encoder { | 186 | struct drm_mode_get_encoder { |
186 | __u32 encoder_id; | 187 | __u32 encoder_id; |
@@ -251,6 +252,21 @@ struct drm_mode_get_connector { | |||
251 | #define DRM_MODE_PROP_BLOB (1<<4) | 252 | #define DRM_MODE_PROP_BLOB (1<<4) |
252 | #define DRM_MODE_PROP_BITMASK (1<<5) /* bitmask of enumerated types */ | 253 | #define DRM_MODE_PROP_BITMASK (1<<5) /* bitmask of enumerated types */ |
253 | 254 | ||
255 | /* non-extended types: legacy bitmask, one bit per type: */ | ||
256 | #define DRM_MODE_PROP_LEGACY_TYPE ( \ | ||
257 | DRM_MODE_PROP_RANGE | \ | ||
258 | DRM_MODE_PROP_ENUM | \ | ||
259 | DRM_MODE_PROP_BLOB | \ | ||
260 | DRM_MODE_PROP_BITMASK) | ||
261 | |||
262 | /* extended-types: rather than continue to consume a bit per type, | ||
263 | * grab a chunk of the bits to use as integer type id. | ||
264 | */ | ||
265 | #define DRM_MODE_PROP_EXTENDED_TYPE 0x0000ffc0 | ||
266 | #define DRM_MODE_PROP_TYPE(n) ((n) << 6) | ||
267 | #define DRM_MODE_PROP_OBJECT DRM_MODE_PROP_TYPE(1) | ||
268 | #define DRM_MODE_PROP_SIGNED_RANGE DRM_MODE_PROP_TYPE(2) | ||
269 | |||
254 | struct drm_mode_property_enum { | 270 | struct drm_mode_property_enum { |
255 | __u64 value; | 271 | __u64 value; |
256 | char name[DRM_PROP_NAME_LEN]; | 272 | char name[DRM_PROP_NAME_LEN]; |
diff --git a/include/uapi/drm/i915_drm.h b/include/uapi/drm/i915_drm.h index 126bfaa8bb6b..ff57f07c3249 100644 --- a/include/uapi/drm/i915_drm.h +++ b/include/uapi/drm/i915_drm.h | |||
@@ -223,6 +223,7 @@ typedef struct _drm_i915_sarea { | |||
223 | #define DRM_I915_GEM_GET_CACHING 0x30 | 223 | #define DRM_I915_GEM_GET_CACHING 0x30 |
224 | #define DRM_I915_REG_READ 0x31 | 224 | #define DRM_I915_REG_READ 0x31 |
225 | #define DRM_I915_GET_RESET_STATS 0x32 | 225 | #define DRM_I915_GET_RESET_STATS 0x32 |
226 | #define DRM_I915_GEM_USERPTR 0x33 | ||
226 | 227 | ||
227 | #define DRM_IOCTL_I915_INIT DRM_IOW( DRM_COMMAND_BASE + DRM_I915_INIT, drm_i915_init_t) | 228 | #define DRM_IOCTL_I915_INIT DRM_IOW( DRM_COMMAND_BASE + DRM_I915_INIT, drm_i915_init_t) |
228 | #define DRM_IOCTL_I915_FLUSH DRM_IO ( DRM_COMMAND_BASE + DRM_I915_FLUSH) | 229 | #define DRM_IOCTL_I915_FLUSH DRM_IO ( DRM_COMMAND_BASE + DRM_I915_FLUSH) |
@@ -273,6 +274,7 @@ typedef struct _drm_i915_sarea { | |||
273 | #define DRM_IOCTL_I915_GEM_CONTEXT_DESTROY DRM_IOW (DRM_COMMAND_BASE + DRM_I915_GEM_CONTEXT_DESTROY, struct drm_i915_gem_context_destroy) | 274 | #define DRM_IOCTL_I915_GEM_CONTEXT_DESTROY DRM_IOW (DRM_COMMAND_BASE + DRM_I915_GEM_CONTEXT_DESTROY, struct drm_i915_gem_context_destroy) |
274 | #define DRM_IOCTL_I915_REG_READ DRM_IOWR (DRM_COMMAND_BASE + DRM_I915_REG_READ, struct drm_i915_reg_read) | 275 | #define DRM_IOCTL_I915_REG_READ DRM_IOWR (DRM_COMMAND_BASE + DRM_I915_REG_READ, struct drm_i915_reg_read) |
275 | #define DRM_IOCTL_I915_GET_RESET_STATS DRM_IOWR (DRM_COMMAND_BASE + DRM_I915_GET_RESET_STATS, struct drm_i915_reset_stats) | 276 | #define DRM_IOCTL_I915_GET_RESET_STATS DRM_IOWR (DRM_COMMAND_BASE + DRM_I915_GET_RESET_STATS, struct drm_i915_reset_stats) |
277 | #define DRM_IOCTL_I915_GEM_USERPTR DRM_IOWR (DRM_COMMAND_BASE + DRM_I915_GEM_USERPTR, struct drm_i915_gem_userptr) | ||
276 | 278 | ||
277 | /* Allow drivers to submit batchbuffers directly to hardware, relying | 279 | /* Allow drivers to submit batchbuffers directly to hardware, relying |
278 | * on the security mechanisms provided by hardware. | 280 | * on the security mechanisms provided by hardware. |
@@ -337,6 +339,7 @@ typedef struct drm_i915_irq_wait { | |||
337 | #define I915_PARAM_HAS_EXEC_NO_RELOC 25 | 339 | #define I915_PARAM_HAS_EXEC_NO_RELOC 25 |
338 | #define I915_PARAM_HAS_EXEC_HANDLE_LUT 26 | 340 | #define I915_PARAM_HAS_EXEC_HANDLE_LUT 26 |
339 | #define I915_PARAM_HAS_WT 27 | 341 | #define I915_PARAM_HAS_WT 27 |
342 | #define I915_PARAM_CMD_PARSER_VERSION 28 | ||
340 | 343 | ||
341 | typedef struct drm_i915_getparam { | 344 | typedef struct drm_i915_getparam { |
342 | int param; | 345 | int param; |
@@ -1049,4 +1052,18 @@ struct drm_i915_reset_stats { | |||
1049 | __u32 pad; | 1052 | __u32 pad; |
1050 | }; | 1053 | }; |
1051 | 1054 | ||
1055 | struct drm_i915_gem_userptr { | ||
1056 | __u64 user_ptr; | ||
1057 | __u64 user_size; | ||
1058 | __u32 flags; | ||
1059 | #define I915_USERPTR_READ_ONLY 0x1 | ||
1060 | #define I915_USERPTR_UNSYNCHRONIZED 0x80000000 | ||
1061 | /** | ||
1062 | * Returned handle for the object. | ||
1063 | * | ||
1064 | * Object handles are nonzero. | ||
1065 | */ | ||
1066 | __u32 handle; | ||
1067 | }; | ||
1068 | |||
1052 | #endif /* _UAPI_I915_DRM_H_ */ | 1069 | #endif /* _UAPI_I915_DRM_H_ */ |
diff --git a/include/uapi/drm/radeon_drm.h b/include/uapi/drm/radeon_drm.h index aefa2f6afa3b..1cc0b610f162 100644 --- a/include/uapi/drm/radeon_drm.h +++ b/include/uapi/drm/radeon_drm.h | |||
@@ -1007,7 +1007,7 @@ struct drm_radeon_cs { | |||
1007 | #define RADEON_INFO_NUM_BYTES_MOVED 0x1d | 1007 | #define RADEON_INFO_NUM_BYTES_MOVED 0x1d |
1008 | #define RADEON_INFO_VRAM_USAGE 0x1e | 1008 | #define RADEON_INFO_VRAM_USAGE 0x1e |
1009 | #define RADEON_INFO_GTT_USAGE 0x1f | 1009 | #define RADEON_INFO_GTT_USAGE 0x1f |
1010 | 1010 | #define RADEON_INFO_ACTIVE_CU_COUNT 0x20 | |
1011 | 1011 | ||
1012 | struct drm_radeon_info { | 1012 | struct drm_radeon_info { |
1013 | uint32_t request; | 1013 | uint32_t request; |