Switch vga drivers to use names and new vt(4) driver probe method.

Sponsored by:	The FreeBSD Foundation
This commit is contained in:
Aleksandr Rybalko 2014-05-05 22:12:46 +00:00
parent 5a0e08fb31
commit f3d2e242ec

View File

@ -71,6 +71,7 @@ struct vga_softc {
#define VT_VGA_HEIGHT 480
#define VT_VGA_MEMSIZE (VT_VGA_WIDTH * VT_VGA_HEIGHT / 8)
static vd_probe_t vga_probe;
static vd_init_t vga_init;
static vd_blank_t vga_blank;
static vd_bitbltchr_t vga_bitbltchr;
@ -81,6 +82,8 @@ static vd_putchar_t vga_putchar;
static vd_postswitch_t vga_postswitch;
static const struct vt_driver vt_vga_driver = {
.vd_name = "vga",
.vd_probe = vga_probe,
.vd_init = vga_init,
.vd_blank = vga_blank,
.vd_bitbltchr = vga_bitbltchr,
@ -97,8 +100,7 @@ static const struct vt_driver vt_vga_driver = {
* buffer is always big enough to support both.
*/
static struct vga_softc vga_conssoftc;
VT_CONSDEV_DECLARE(vt_vga_driver, MAX(80, PIXEL_WIDTH(VT_VGA_WIDTH)),
MAX(25, PIXEL_HEIGHT(VT_VGA_HEIGHT)), &vga_conssoftc);
VT_DRIVER_DECLARE(vt_vga, vt_vga_driver);
static inline void
vga_setcolor(struct vt_device *vd, term_color_t color)
@ -630,11 +632,23 @@ vga_initialize(struct vt_device *vd, int textmode)
}
}
static int
vga_probe(struct vt_device *vd)
{
return (CN_INTERNAL);
}
static int
vga_init(struct vt_device *vd)
{
struct vga_softc *sc = vd->vd_softc;
int textmode = 0;
struct vga_softc *sc;
int textmode;
if (vd->vd_softc == NULL)
vd->vd_softc = (void *)&vga_conssoftc;
sc = vd->vd_softc;
textmode = 0;
#if defined(__amd64__) || defined(__i386__)
sc->vga_fb_tag = X86_BUS_SPACE_MEM;