igfx: perserve frame start delay "magic" bits 27:28 in pipe conf register
it turns out, the "magic" bits 27:28 are the frame start delay setting that need to be preserved.
This commit is contained in:
parent
79ff9d28bd
commit
8d8935618c
|
@ -592,8 +592,11 @@ initdatalinkmn(Trans *t, int freq, int lsclk, int lanes, int tu, int bpp)
|
|||
static void
|
||||
inittrans(Trans *t, Mode *m)
|
||||
{
|
||||
/* clear all but 27:28 frame start delay (initialized by bios) */
|
||||
t->conf.v &= 3<<27;
|
||||
|
||||
/* tans/pipe enable */
|
||||
t->conf.v = 1<<31;
|
||||
t->conf.v |= 1<<31;
|
||||
|
||||
/* trans/pipe timing */
|
||||
t->ht.v = (m->ht - 1)<<16 | (m->x - 1);
|
||||
|
@ -752,14 +755,6 @@ init(Vga* vga, Ctlr* ctlr)
|
|||
|
||||
initpipe(p, m);
|
||||
|
||||
/*
|
||||
* undocumented magic that makes the flickering
|
||||
* top bar go away on x230 on lcd. found by
|
||||
* comparing registers set by vesa bios.
|
||||
*/
|
||||
if(igfx->type == TypeIVB && islvds)
|
||||
p->conf.v |= 3<<27;
|
||||
|
||||
ctlr->flag |= Finit;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue