diff options
author | Ed Maste <emaste@FreeBSD.org> | 2014-07-02 13:24:21 +0000 |
---|---|---|
committer | Ed Maste <emaste@FreeBSD.org> | 2014-07-02 13:24:21 +0000 |
commit | 018147eef98b09a05f37f2746f653a458c6c223c (patch) | |
tree | 9d29c4db53b73ea523b6c246c6e969f9e69ac429 /sys/kern/kern_cons.c | |
parent | d398c8634a4c67a4ef891f62c3ad92c81021b109 (diff) | |
download | src-018147eef98b09a05f37f2746f653a458c6c223c.tar.gz src-018147eef98b09a05f37f2746f653a458c6c223c.zip |
Prefer vt(4) for UEFI boot
The UEFI framebuffer driver vt_efifb requires vt(4), so add a mechanism
for the startup routine to set the preferred console. This change is
ugly because console init happens very early in the boot, making a
cleaner interface difficult. This change is intended only to facilitate
the sc(4) / vt(4) transition, and can be reverted once vt(4) is the
default.
Notes
Notes:
svn path=/head/; revision=268158
Diffstat (limited to 'sys/kern/kern_cons.c')
-rw-r--r-- | sys/kern/kern_cons.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/sys/kern/kern_cons.c b/sys/kern/kern_cons.c index 1d5ac0e38a69..6545bc9ccd2b 100644 --- a/sys/kern/kern_cons.c +++ b/sys/kern/kern_cons.c @@ -652,6 +652,7 @@ sysbeep(int pitch __unused, int period __unused) /* * Temporary support for sc(4) to vt(4) transition. */ +static unsigned vty_prefer; static char vty_name[16]; SYSCTL_STRING(_kern, OID_AUTO, vty, CTLFLAG_RDTUN | CTLFLAG_NOFETCH, vty_name, 0, "Console vty driver"); @@ -676,6 +677,10 @@ vty_enabled(unsigned vty) break; } #endif + if (vty_prefer != 0) { + vty_selected = vty_prefer; + break; + } #if defined(DEV_SC) vty_selected = VTY_SC; #elif defined(DEV_VT) @@ -691,3 +696,16 @@ vty_enabled(unsigned vty) return ((vty_selected & vty) != 0); } +void +vty_set_preferred(unsigned vty) +{ + + vty_prefer = vty; +#if !defined(DEV_SC) + vty_prefer &= ~DEV_SC; +#endif +#if !defined(DEV_VT) + vty_prefer &= ~DEV_VT; +#endif +} + |