History

Merge tag 'drm-misc-next-2019-06-20' of git://anongit.freedesktop.org/drm/drm-misc into drm-next

drm-misc-next for v5.3: UAPI Changes: - Give each dma-buf their own inode, add DMA_BUF_SET_NAME ioctl and a show_fdinfo handler. Cross-subsystem Changes: - Pull in the topic/remove-fbcon-notifiers branch: * remove fbdev notifier usage for fbcon, as prep work to clean up the fbcon locking * assorted locking checks in vt/console code * assorted notifier and cleanups in fbdev and backlight code Core Changes: - Make drm_debugfs_create_files() never fail. - add debug print to update_vblank_count. - Add DP_DPCD_QUIRK_NO_SINK_COUNT quirk. - Add todo item for drm_gem_objects. - Unexport drm_gem_(un)pin/v(un)map. - Document struct drm_cmdline_mode. - Rewrite the command handler for mode names, and add support to specify rotation, reflection and overscan. With a new selftest! :) - Fixes to drm/client for improving rotation support, and fixing variable scope. - Small fixes to self refresh helper. Driver Changes: - Add rockchip RK3328 support. - Assorted driver fixes to rockchip, vc4, rcar-du, vkms. - Expose panfrost performance counters through unstable ioctl's, hidden behind a module parameter. - Enumerate CRC sources list in vkms. - Add a basic kms driver for the Ingenic JZ47xx SoC, which will be expanded soon with more advanced features. - Suspend/resume fix for stm. Signed-off-by: Dave Airlie <airlied@redhat.com>

Dave Airlie committed 7 years ago

Commit 39a207d2 parents 031e610 836334f82 files · +3551 −1030Browse files

Showing the changes to include/linux (4 of 82 files). Show all

Unified · Split

4 files
  1. include/linux/console_struct.h +1 −4
  2. include/linux/dma-buf.h +4 −1
  3. include/linux/fb.h +12 −33
  4. include/linux/fbcon.h +30 −0
include/linux/console_struct.h+1−4
@@ -168,9 +168,6 @@ extern void vc_SAK(struct work_struct *work); · 167 unmodified lines
168168
169169 #define CUR_DEFAULT CUR_UNDERLINE
170170
171−static inline bool con_is_visible(const struct vc_data *vc)
172−{
173− return *vc->vc_display_fg == vc;
174−}
171+bool con_is_visible(const struct vc_data *vc);
175172
176173 #endif /* _LINUX_CONSOLE_STRUCT_H */
include/linux/dma-buf.h+4−1
@@ -280,10 +280,12 @@ struct dma_buf_ops { · 279 unmodified lines
280280 * @file: file pointer used for sharing buffers across, and for refcounting.
281281 * @attachments: list of dma_buf_attachment that denotes all devices attached.
282282 * @ops: dma_buf_ops associated with this buffer object.
283− * @lock: used internally to serialize list manipulation, attach/detach and vmap/unmap
283+ * @lock: used internally to serialize list manipulation, attach/detach and
284+ * vmap/unmap, and accesses to name
284285 * @vmapping_counter: used internally to refcnt the vmaps
285286 * @vmap_ptr: the current vmap ptr if vmapping_counter > 0
286287 * @exp_name: name of the exporter; useful for debugging.
288+ * @name: userspace-provided name; useful for accounting and debugging.
287289 * @owner: pointer to exporter module; used for refcounting when exporter is a
288290 * kernel module.
289291 * @list_node: node for dma_buf accounting and debugging.
@@ -311,6 +313,7 @@ struct dma_buf { · 21 unmodified lines
311313 unsigned vmapping_counter;
312314 void *vmap_ptr;
313315 const char *exp_name;
316+ const char *name;
314317 struct module *owner;
315318 struct list_head list_node;
316319 void *priv;
include/linux/fb.h+12−33
@@ -126,39 +126,15 @@ struct fb_cursor_user { · 125 unmodified lines
126126
127127 /* The resolution of the passed in fb_info about to change */
128128 #define FB_EVENT_MODE_CHANGE 0x01
129−/* The display on this fb_info is being suspended, no access to the
130− * framebuffer is allowed any more after that call returns
131− */
132−#define FB_EVENT_SUSPEND 0x02
133−/* The display on this fb_info was resumed, you can restore the display
134− * if you own it
135− */
136−#define FB_EVENT_RESUME 0x03
137−/* An entry from the modelist was removed */
138−#define FB_EVENT_MODE_DELETE 0x04
139−/* A driver registered itself */
129+
130+#ifdef CONFIG_GUMSTIX_AM200EPD
131+/* only used by mach-pxa/am200epd.c */
140132 #define FB_EVENT_FB_REGISTERED 0x05
141−/* A driver unregistered itself */
142133 #define FB_EVENT_FB_UNREGISTERED 0x06
143−/* CONSOLE-SPECIFIC: get console to framebuffer mapping */
144−#define FB_EVENT_GET_CONSOLE_MAP 0x07
145−/* CONSOLE-SPECIFIC: set console to framebuffer mapping */
146−#define FB_EVENT_SET_CONSOLE_MAP 0x08
147−/* A hardware display blank change occurred */
134+#endif
135+
136+/* A display blank is requested */
148137 #define FB_EVENT_BLANK 0x09
149−/* Private modelist is to be replaced */
150−#define FB_EVENT_NEW_MODELIST 0x0A
151−/* The resolution of the passed in fb_info about to change and
152− all vc's should be changed */
153−#define FB_EVENT_MODE_CHANGE_ALL 0x0B
154−/* A software display blank change occurred */
155−#define FB_EVENT_CONBLANK 0x0C
156−/* Get drawing requirements */
157−#define FB_EVENT_GET_REQ 0x0D
158−/* Unbind from the console if possible */
159−#define FB_EVENT_FB_UNBIND 0x0E
160−/* CONSOLE-SPECIFIC: remap all consoles to new fb - for vga_switcheroo */
161−#define FB_EVENT_REMAP_ALL_CONSOLE 0x0F
162138 /* A hardware display blank early change occurred */
163139 #define FB_EARLY_EVENT_BLANK 0x10
164140 /* A hardware display blank revert early change occurred */
@@ -633,8 +609,8 @@ extern ssize_t fb_sys_write(struct fb_info *info, const char __user *buf, · 468 unmodified lines
633609
634610 /* drivers/video/fbmem.c */
635611 extern int register_framebuffer(struct fb_info *fb_info);
636−extern int unregister_framebuffer(struct fb_info *fb_info);
637−extern int unlink_framebuffer(struct fb_info *fb_info);
612+extern void unregister_framebuffer(struct fb_info *fb_info);
613+extern void unlink_framebuffer(struct fb_info *fb_info);
638614 extern int remove_conflicting_pci_framebuffers(struct pci_dev *pdev, int res_id,
639615 const char *name);
640616 extern int remove_conflicting_framebuffers(struct apertures_struct *a,
@@ -660,7 +636,10 @@ extern struct class *fb_class; · 19 unmodified lines
660636 for (i = 0; i < FB_MAX; i++) \
661637 if (!registered_fb[i]) {} else
662638
663−extern int lock_fb_info(struct fb_info *info);
639+static inline void lock_fb_info(struct fb_info *info)
640+{
641+ mutex_lock(&info->lock);
642+}
664643
665644 static inline void unlock_fb_info(struct fb_info *info)
666645 {
include/linux/fbcon.h+30−0
@@ -4,9 +4,39 @@ · 3 unmodified lines
44 #ifdef CONFIG_FRAMEBUFFER_CONSOLE
55 void __init fb_console_init(void);
66 void __exit fb_console_exit(void);
7+int fbcon_fb_registered(struct fb_info *info);
8+void fbcon_fb_unregistered(struct fb_info *info);
9+void fbcon_fb_unbind(struct fb_info *info);
10+void fbcon_suspended(struct fb_info *info);
11+void fbcon_resumed(struct fb_info *info);
12+int fbcon_mode_deleted(struct fb_info *info,
13+ struct fb_videomode *mode);
14+void fbcon_new_modelist(struct fb_info *info);
15+void fbcon_get_requirement(struct fb_info *info,
16+ struct fb_blit_caps *caps);
17+void fbcon_fb_blanked(struct fb_info *info, int blank);
18+void fbcon_update_vcs(struct fb_info *info, bool all);
19+void fbcon_remap_all(struct fb_info *info);
20+int fbcon_set_con2fb_map_ioctl(void __user *argp);
21+int fbcon_get_con2fb_map_ioctl(void __user *argp);
722 #else
823 static inline void fb_console_init(void) {}
924 static inline void fb_console_exit(void) {}
25+static inline int fbcon_fb_registered(struct fb_info *info) { return 0; }
26+static inline void fbcon_fb_unregistered(struct fb_info *info) {}
27+static inline void fbcon_fb_unbind(struct fb_info *info) {}
28+static inline void fbcon_suspended(struct fb_info *info) {}
29+static inline void fbcon_resumed(struct fb_info *info) {}
30+static inline int fbcon_mode_deleted(struct fb_info *info,
31+ struct fb_videomode *mode) { return 0; }
32+static inline void fbcon_new_modelist(struct fb_info *info) {}
33+static inline void fbcon_get_requirement(struct fb_info *info,
34+ struct fb_blit_caps *caps) {}
35+static inline void fbcon_fb_blanked(struct fb_info *info, int blank) {}
36+static inline void fbcon_update_vcs(struct fb_info *info, bool all) {}
37+static inline void fbcon_remap_all(struct fb_info *info) {}
38+static inline int fbcon_set_con2fb_map_ioctl(void __user *argp) { return 0; }
39+static inline int fbcon_get_con2fb_map_ioctl(void __user *argp) { return 0; }
1040 #endif
1141
1242 #endif /* _LINUX_FBCON_H */

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t