mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-13 04:48:21 -04:00
Merge branch 'topic/remove-fbcon-notifiers' into drm-misc-next
topic/remove-fbcon-notifiers: - 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 This is the pull request that was sent out, plus the compile fix for sh4 reported by kbuild. Acked-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
This commit is contained in:
@@ -168,9 +168,6 @@ extern void vc_SAK(struct work_struct *work);
|
||||
|
||||
#define CUR_DEFAULT CUR_UNDERLINE
|
||||
|
||||
static inline bool con_is_visible(const struct vc_data *vc)
|
||||
{
|
||||
return *vc->vc_display_fg == vc;
|
||||
}
|
||||
bool con_is_visible(const struct vc_data *vc);
|
||||
|
||||
#endif /* _LINUX_CONSOLE_STRUCT_H */
|
||||
|
||||
@@ -126,39 +126,15 @@ struct fb_cursor_user {
|
||||
|
||||
/* The resolution of the passed in fb_info about to change */
|
||||
#define FB_EVENT_MODE_CHANGE 0x01
|
||||
/* The display on this fb_info is being suspended, no access to the
|
||||
* framebuffer is allowed any more after that call returns
|
||||
*/
|
||||
#define FB_EVENT_SUSPEND 0x02
|
||||
/* The display on this fb_info was resumed, you can restore the display
|
||||
* if you own it
|
||||
*/
|
||||
#define FB_EVENT_RESUME 0x03
|
||||
/* An entry from the modelist was removed */
|
||||
#define FB_EVENT_MODE_DELETE 0x04
|
||||
/* A driver registered itself */
|
||||
|
||||
#ifdef CONFIG_GUMSTIX_AM200EPD
|
||||
/* only used by mach-pxa/am200epd.c */
|
||||
#define FB_EVENT_FB_REGISTERED 0x05
|
||||
/* A driver unregistered itself */
|
||||
#define FB_EVENT_FB_UNREGISTERED 0x06
|
||||
/* CONSOLE-SPECIFIC: get console to framebuffer mapping */
|
||||
#define FB_EVENT_GET_CONSOLE_MAP 0x07
|
||||
/* CONSOLE-SPECIFIC: set console to framebuffer mapping */
|
||||
#define FB_EVENT_SET_CONSOLE_MAP 0x08
|
||||
/* A hardware display blank change occurred */
|
||||
#endif
|
||||
|
||||
/* A display blank is requested */
|
||||
#define FB_EVENT_BLANK 0x09
|
||||
/* Private modelist is to be replaced */
|
||||
#define FB_EVENT_NEW_MODELIST 0x0A
|
||||
/* The resolution of the passed in fb_info about to change and
|
||||
all vc's should be changed */
|
||||
#define FB_EVENT_MODE_CHANGE_ALL 0x0B
|
||||
/* A software display blank change occurred */
|
||||
#define FB_EVENT_CONBLANK 0x0C
|
||||
/* Get drawing requirements */
|
||||
#define FB_EVENT_GET_REQ 0x0D
|
||||
/* Unbind from the console if possible */
|
||||
#define FB_EVENT_FB_UNBIND 0x0E
|
||||
/* CONSOLE-SPECIFIC: remap all consoles to new fb - for vga_switcheroo */
|
||||
#define FB_EVENT_REMAP_ALL_CONSOLE 0x0F
|
||||
/* A hardware display blank early change occurred */
|
||||
#define FB_EARLY_EVENT_BLANK 0x10
|
||||
/* 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,
|
||||
|
||||
/* drivers/video/fbmem.c */
|
||||
extern int register_framebuffer(struct fb_info *fb_info);
|
||||
extern int unregister_framebuffer(struct fb_info *fb_info);
|
||||
extern int unlink_framebuffer(struct fb_info *fb_info);
|
||||
extern void unregister_framebuffer(struct fb_info *fb_info);
|
||||
extern void unlink_framebuffer(struct fb_info *fb_info);
|
||||
extern int remove_conflicting_pci_framebuffers(struct pci_dev *pdev, int res_id,
|
||||
const char *name);
|
||||
extern int remove_conflicting_framebuffers(struct apertures_struct *a,
|
||||
@@ -660,7 +636,10 @@ extern struct class *fb_class;
|
||||
for (i = 0; i < FB_MAX; i++) \
|
||||
if (!registered_fb[i]) {} else
|
||||
|
||||
extern int lock_fb_info(struct fb_info *info);
|
||||
static inline void lock_fb_info(struct fb_info *info)
|
||||
{
|
||||
mutex_lock(&info->lock);
|
||||
}
|
||||
|
||||
static inline void unlock_fb_info(struct fb_info *info)
|
||||
{
|
||||
|
||||
@@ -4,9 +4,39 @@
|
||||
#ifdef CONFIG_FRAMEBUFFER_CONSOLE
|
||||
void __init fb_console_init(void);
|
||||
void __exit fb_console_exit(void);
|
||||
int fbcon_fb_registered(struct fb_info *info);
|
||||
void fbcon_fb_unregistered(struct fb_info *info);
|
||||
void fbcon_fb_unbind(struct fb_info *info);
|
||||
void fbcon_suspended(struct fb_info *info);
|
||||
void fbcon_resumed(struct fb_info *info);
|
||||
int fbcon_mode_deleted(struct fb_info *info,
|
||||
struct fb_videomode *mode);
|
||||
void fbcon_new_modelist(struct fb_info *info);
|
||||
void fbcon_get_requirement(struct fb_info *info,
|
||||
struct fb_blit_caps *caps);
|
||||
void fbcon_fb_blanked(struct fb_info *info, int blank);
|
||||
void fbcon_update_vcs(struct fb_info *info, bool all);
|
||||
void fbcon_remap_all(struct fb_info *info);
|
||||
int fbcon_set_con2fb_map_ioctl(void __user *argp);
|
||||
int fbcon_get_con2fb_map_ioctl(void __user *argp);
|
||||
#else
|
||||
static inline void fb_console_init(void) {}
|
||||
static inline void fb_console_exit(void) {}
|
||||
static inline int fbcon_fb_registered(struct fb_info *info) { return 0; }
|
||||
static inline void fbcon_fb_unregistered(struct fb_info *info) {}
|
||||
static inline void fbcon_fb_unbind(struct fb_info *info) {}
|
||||
static inline void fbcon_suspended(struct fb_info *info) {}
|
||||
static inline void fbcon_resumed(struct fb_info *info) {}
|
||||
static inline int fbcon_mode_deleted(struct fb_info *info,
|
||||
struct fb_videomode *mode) { return 0; }
|
||||
static inline void fbcon_new_modelist(struct fb_info *info) {}
|
||||
static inline void fbcon_get_requirement(struct fb_info *info,
|
||||
struct fb_blit_caps *caps) {}
|
||||
static inline void fbcon_fb_blanked(struct fb_info *info, int blank) {}
|
||||
static inline void fbcon_update_vcs(struct fb_info *info, bool all) {}
|
||||
static inline void fbcon_remap_all(struct fb_info *info) {}
|
||||
static inline int fbcon_set_con2fb_map_ioctl(void __user *argp) { return 0; }
|
||||
static inline int fbcon_get_con2fb_map_ioctl(void __user *argp) { return 0; }
|
||||
#endif
|
||||
|
||||
#endif /* _LINUX_FBCON_H */
|
||||
|
||||
Reference in New Issue
Block a user