Date: Thu, 2 Jun 2005 17:10:12 +0200 From: Antoine Brodin <antoine.brodin@laposte.net> To: Antoine Brodin <antoine.brodin@laposte.net> Cc: delphij@freebsd.org, current@freebsd.org Subject: Re: Recent vesa changes Message-ID: <20050602171012.61b4568e.antoine.brodin@laposte.net> In-Reply-To: <20050602134523.7adcf516.antoine.brodin@laposte.net> References: <20050602134523.7adcf516.antoine.brodin@laposte.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Antoine Brodin <antoine.brodin@laposte.net> wrote: > Hi, > > The recent vesa changes cause a problem on my laptop. > During startup, when ispcvt is called by syscons_precmd > (in /etc/rc.d/syscons), it clears my screen and the screen keeps > cleared. > > I investigated a bit, and chmod'ing -x ispcvt solves the problem. > > Vidcontrol -i mode shows that mode 369 is supported so I think that > there is perhaps an ioctl collision between > . this mode: _IO('V', 369 - 256) > . and VGAPCVTID: _IOWR('V',113, struct pcvtid) A quick workaround is attached %%% Index: scvesactl.c =================================================================== RCS file: /home/ncvs/src/sys/dev/syscons/scvesactl.c,v retrieving revision 1.21 diff -u -p -r1.21 scvesactl.c --- scvesactl.c 29 May 2005 08:43:43 -0000 1.21 +++ scvesactl.c 2 Jun 2005 14:56:09 -0000 @@ -115,7 +115,9 @@ vesa_ioctl(struct cdev *dev, u_long cmd, mode = (cmd & 0xff) + M_VESA_BASE; - if ((mode > M_VESA_FULL_1280) && + /* Avoid collisions with pcvt. */ + if (((cmd & IOC_DIRMASK) == IOC_VOID) && + (mode > M_VESA_FULL_1280) && (mode < M_VESA_MODE_MAX)) return sc_set_graphics_mode(scp, tp, mode); } %%%
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050602171012.61b4568e.antoine.brodin>