fbcon: allow fbcon to use the primary display driver
Allow fbcon to select the primary display adapter using the fb_is_primary_device() arch-specific helper. If a a primary adapter is detected, fbcon will unbind the old adapter from the VT layer, then rebind using the new adapter. This requires that bind_/unbind_con_driver() be made public. Because this feature may produce unexpected behavior (from the user's POV), this must be explicitly enabled in Kconfig. [akpm@linux-foundation.org: export unbind_con_driver] Signed-off-by: Antonino Daplas <adaplas@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
committed by
Linus Torvalds
parent
317b3c2167
commit
623e71b035
@@ -2869,8 +2869,7 @@ int __init vty_init(void)
|
||||
|
||||
static struct class *vtconsole_class;
|
||||
|
||||
static int bind_con_driver(const struct consw *csw, int first, int last,
|
||||
int deflt)
|
||||
int bind_con_driver(const struct consw *csw, int first, int last, int deflt)
|
||||
{
|
||||
struct module *owner = csw->owner;
|
||||
const char *desc = NULL;
|
||||
@@ -2969,6 +2968,7 @@ err:
|
||||
module_put(owner);
|
||||
return retval;
|
||||
};
|
||||
EXPORT_SYMBOL(bind_con_driver);
|
||||
|
||||
#ifdef CONFIG_VT_HW_CONSOLE_BINDING
|
||||
static int con_is_graphics(const struct consw *csw, int first, int last)
|
||||
@@ -2987,8 +2987,7 @@ static int con_is_graphics(const struct consw *csw, int first, int last)
|
||||
return retval;
|
||||
}
|
||||
|
||||
static int unbind_con_driver(const struct consw *csw, int first, int last,
|
||||
int deflt)
|
||||
int unbind_con_driver(const struct consw *csw, int first, int last, int deflt)
|
||||
{
|
||||
struct module *owner = csw->owner;
|
||||
const struct consw *defcsw = NULL;
|
||||
@@ -3073,6 +3072,7 @@ err:
|
||||
return retval;
|
||||
|
||||
}
|
||||
EXPORT_SYMBOL(unbind_con_driver);
|
||||
|
||||
static int vt_bind(struct con_driver *con)
|
||||
{
|
||||
|
Reference in New Issue
Block a user