summaryrefslogtreecommitdiffstats
path: root/include/drm
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2019-04-23 20:12:34 -0400
committerDave Airlie <airlied@redhat.com>2019-04-23 20:12:50 -0400
commit8d8f6f704495b1135ef77b7860d833fda97ea841 (patch)
tree459c4abf0d5e908f8107caa0a9e174d274e62bb3 /include/drm
parentb1c4f7feada5a5cf4e13db1631fb4784b1ddcb31 (diff)
parentdebcd8f954be2b1f643e76b2400bc7c3d12b4594 (diff)
Merge tag 'drm-misc-next-2019-04-18' of git://anongit.freedesktop.org/drm/drm-misc into drm-next
drm-misc-next for v5.2: UAPI Changes: - Document which feature flags belong to which command in virtio_gpu.h - Make the FB_DAMAGE_CLIPS available for atomic userspace only, it's useless for legacy. Cross-subsystem Changes: - Add device tree bindings for lg,acx467akm-7 panel and ST-Ericsson Multi Channel Display Engine MCDE - Add parameters to the device tree bindings for tfp410 - iommu/io-pgtable: Add ARM Mali midgard MMU page table format - dma-buf: Only do a 64-bits seqno compare when driver explicitly asks for it, else wraparound. - Use the 64-bits compare for dma-fence-chains Core Changes: - Make the fb conversion functions use __iomem dst. - Rename drm_client_add to drm_client_register - Move intel_fb_initial_config to core. - Add a drm_gem_objects_lookup helper - Add drm_gem_fence_array helpers, and use it in lima. - Add drm_format_helper.c to kerneldoc. Driver Changes: - Add panfrost driver for mali midgard/bitfrost. - Converts bochs to use the simple display type. - Small fixes to sun4i, tinydrm, ti-fp410. - Fid aspeed's Kconfig options. - Make some symbols/functions static in lima, sun4i and meson. - Add a driver for the lg,acx467akm-7 panel. Signed-off-by: Dave Airlie <airlied@redhat.com> From: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/737ad994-213d-45b5-207a-b99d795acd21@linux.intel.com
Diffstat (limited to 'include/drm')
-rw-r--r--include/drm/drm_client.h2
-rw-r--r--include/drm/drm_fb_helper.h23
-rw-r--r--include/drm/drm_format_helper.h11
-rw-r--r--include/drm/drm_gem.h7
4 files changed, 14 insertions, 29 deletions
diff --git a/include/drm/drm_client.h b/include/drm/drm_client.h
index 8b552b1a6ce9..268b2cf0052a 100644
--- a/include/drm/drm_client.h
+++ b/include/drm/drm_client.h
@@ -90,7 +90,7 @@ struct drm_client_dev {
90int drm_client_init(struct drm_device *dev, struct drm_client_dev *client, 90int drm_client_init(struct drm_device *dev, struct drm_client_dev *client,
91 const char *name, const struct drm_client_funcs *funcs); 91 const char *name, const struct drm_client_funcs *funcs);
92void drm_client_release(struct drm_client_dev *client); 92void drm_client_release(struct drm_client_dev *client);
93void drm_client_add(struct drm_client_dev *client); 93void drm_client_register(struct drm_client_dev *client);
94 94
95void drm_client_dev_unregister(struct drm_device *dev); 95void drm_client_dev_unregister(struct drm_device *dev);
96void drm_client_dev_hotplug(struct drm_device *dev); 96void drm_client_dev_hotplug(struct drm_device *dev);
diff --git a/include/drm/drm_fb_helper.h b/include/drm/drm_fb_helper.h
index 17857e458ac3..40af2866c26a 100644
--- a/include/drm/drm_fb_helper.h
+++ b/include/drm/drm_fb_helper.h
@@ -102,29 +102,6 @@ struct drm_fb_helper_funcs {
102 */ 102 */
103 int (*fb_probe)(struct drm_fb_helper *helper, 103 int (*fb_probe)(struct drm_fb_helper *helper,
104 struct drm_fb_helper_surface_size *sizes); 104 struct drm_fb_helper_surface_size *sizes);
105
106 /**
107 * @initial_config:
108 *
109 * Driver callback to setup an initial fbdev display configuration.
110 * Drivers can use this callback to tell the fbdev emulation what the
111 * preferred initial configuration is. This is useful to implement
112 * smooth booting where the fbdev (and subsequently all userspace) never
113 * changes the mode, but always inherits the existing configuration.
114 *
115 * This callback is optional.
116 *
117 * RETURNS:
118 *
119 * The driver should return true if a suitable initial configuration has
120 * been filled out and false when the fbdev helper should fall back to
121 * the default probing logic.
122 */
123 bool (*initial_config)(struct drm_fb_helper *fb_helper,
124 struct drm_fb_helper_crtc **crtcs,
125 struct drm_display_mode **modes,
126 struct drm_fb_offset *offsets,
127 bool *enabled, int width, int height);
128}; 105};
129 106
130struct drm_fb_helper_connector { 107struct drm_fb_helper_connector {
diff --git a/include/drm/drm_format_helper.h b/include/drm/drm_format_helper.h
index 6f84380757ee..085d63faee12 100644
--- a/include/drm/drm_format_helper.h
+++ b/include/drm/drm_format_helper.h
@@ -15,17 +15,18 @@ struct drm_rect;
15 15
16void drm_fb_memcpy(void *dst, void *vaddr, struct drm_framebuffer *fb, 16void drm_fb_memcpy(void *dst, void *vaddr, struct drm_framebuffer *fb,
17 struct drm_rect *clip); 17 struct drm_rect *clip);
18void drm_fb_memcpy_dstclip(void *dst, void *vaddr, struct drm_framebuffer *fb, 18void drm_fb_memcpy_dstclip(void __iomem *dst, void *vaddr,
19 struct drm_framebuffer *fb,
19 struct drm_rect *clip); 20 struct drm_rect *clip);
20void drm_fb_swab16(u16 *dst, void *vaddr, struct drm_framebuffer *fb, 21void drm_fb_swab16(u16 *dst, void *vaddr, struct drm_framebuffer *fb,
21 struct drm_rect *clip); 22 struct drm_rect *clip);
22void drm_fb_xrgb8888_to_rgb565(void *dst, void *vaddr, 23void drm_fb_xrgb8888_to_rgb565(void *dst, void *vaddr,
23 struct drm_framebuffer *fb, 24 struct drm_framebuffer *fb,
24 struct drm_rect *clip, bool swap); 25 struct drm_rect *clip, bool swab);
25void drm_fb_xrgb8888_to_rgb565_dstclip(void *dst, unsigned int dst_pitch, 26void drm_fb_xrgb8888_to_rgb565_dstclip(void __iomem *dst, unsigned int dst_pitch,
26 void *vaddr, struct drm_framebuffer *fb, 27 void *vaddr, struct drm_framebuffer *fb,
27 struct drm_rect *clip, bool swap); 28 struct drm_rect *clip, bool swab);
28void drm_fb_xrgb8888_to_rgb888_dstclip(void *dst, unsigned int dst_pitch, 29void drm_fb_xrgb8888_to_rgb888_dstclip(void __iomem *dst, unsigned int dst_pitch,
29 void *vaddr, struct drm_framebuffer *fb, 30 void *vaddr, struct drm_framebuffer *fb,
30 struct drm_rect *clip); 31 struct drm_rect *clip);
31void drm_fb_xrgb8888_to_gray8(u8 *dst, void *vaddr, struct drm_framebuffer *fb, 32void drm_fb_xrgb8888_to_gray8(u8 *dst, void *vaddr, struct drm_framebuffer *fb,
diff --git a/include/drm/drm_gem.h b/include/drm/drm_gem.h
index 2955aaab3dca..5047c7ee25f5 100644
--- a/include/drm/drm_gem.h
+++ b/include/drm/drm_gem.h
@@ -381,6 +381,8 @@ struct page **drm_gem_get_pages(struct drm_gem_object *obj);
381void drm_gem_put_pages(struct drm_gem_object *obj, struct page **pages, 381void drm_gem_put_pages(struct drm_gem_object *obj, struct page **pages,
382 bool dirty, bool accessed); 382 bool dirty, bool accessed);
383 383
384int drm_gem_objects_lookup(struct drm_file *filp, void __user *bo_handles,
385 int count, struct drm_gem_object ***objs_out);
384struct drm_gem_object *drm_gem_object_lookup(struct drm_file *filp, u32 handle); 386struct drm_gem_object *drm_gem_object_lookup(struct drm_file *filp, u32 handle);
385long drm_gem_reservation_object_wait(struct drm_file *filep, u32 handle, 387long drm_gem_reservation_object_wait(struct drm_file *filep, u32 handle,
386 bool wait_all, unsigned long timeout); 388 bool wait_all, unsigned long timeout);
@@ -388,6 +390,11 @@ int drm_gem_lock_reservations(struct drm_gem_object **objs, int count,
388 struct ww_acquire_ctx *acquire_ctx); 390 struct ww_acquire_ctx *acquire_ctx);
389void drm_gem_unlock_reservations(struct drm_gem_object **objs, int count, 391void drm_gem_unlock_reservations(struct drm_gem_object **objs, int count,
390 struct ww_acquire_ctx *acquire_ctx); 392 struct ww_acquire_ctx *acquire_ctx);
393int drm_gem_fence_array_add(struct xarray *fence_array,
394 struct dma_fence *fence);
395int drm_gem_fence_array_add_implicit(struct xarray *fence_array,
396 struct drm_gem_object *obj,
397 bool write);
391int drm_gem_dumb_map_offset(struct drm_file *file, struct drm_device *dev, 398int drm_gem_dumb_map_offset(struct drm_file *file, struct drm_device *dev,
392 u32 handle, u64 *offset); 399 u32 handle, u64 *offset);
393int drm_gem_dumb_destroy(struct drm_file *file, 400int drm_gem_dumb_destroy(struct drm_file *file,