qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] seavgabios resolutions, win8
@ 2013-11-29 14:58 Michael Tokarev
  2013-11-29 15:23 ` Gerd Hoffmann
  2013-11-29 18:57 ` [Qemu-devel] " Kevin O'Connor
  0 siblings, 2 replies; 7+ messages in thread
From: Michael Tokarev @ 2013-11-29 14:58 UTC (permalink / raw)
  To: Gerd Hoffmann, Qemu Development List, seabios

I tried switching from plex/bochs vgabios to seavgabios,
and made this switch for qemu-1.7 package in debian, at
least to see how it goes.

And almost immediately got a complain that with new qemu
(which uses seavgabios not vgabios), windows VMs don't
support 1920x1080 resolutions anymore.

Almost immediately we cooked a patch which restored the
mode(s) in question, here it is:

--- a/vgasrc/bochsvga.c
+++ b/vgasrc/bochsvga.c
@@ -89,6 +89,9 @@
     { 0x18a, { MM_DIRECT, 2560, 1600, 16, 8, 16, SEG_GRAPH } },
     { 0x18b, { MM_DIRECT, 2560, 1600, 24, 8, 16, SEG_GRAPH } },
     { 0x18c, { MM_DIRECT, 2560, 1600, 32, 8, 16, SEG_GRAPH } },
+    { 0x18d, { MM_DIRECT, 1920, 1080, 16, 8, 16, SEG_GRAPH } },
+    { 0x18e, { MM_DIRECT, 1920, 1080, 24, 8, 16, SEG_GRAPH } },
+    { 0x18f, { MM_DIRECT, 1920, 1080, 32, 8, 16, SEG_GRAPH } },
 };

 static int is_bochsvga_mode(struct vgamode_s *vmode_g)

Should something like this be applied?

Of the same theme, there's a wishlist bugreport against vgabios in
Debian, to add a few more resolutions, http://bugs.debian.org/669114 --
it adds 2048x1536 resolution, which is also missing in seavgabios.

Also, vgabios 0.7 provided a few more resolutions, like 1280x768 and
1280x720.

I'm not sure I understand how list of modes is maintained/used in
seavgabios.  The above patch at least allows one of the very common
modes to be selected in windows clients.


And while at it, there's another bugreport against vgabios package in
Debian, see http://bugs.debian.org/685097 .  It looks like windows8
isn't happy with vgabios-provided modes and does not let to change
resolution at all, sticking at 1024x768.  That bugreport points to
a patchset, http://lists.xen.org/archives/html/xen-devel/2012-05/msg00260.html
(this is just one patch from it), which has been applied to xen copy
of vgabios to solve exactly this issue with win8, and reportedly it
works there.  It looks like something similar should be done in
seavgabios too, since with it, win8 guest is also stuck at the same
resolution.

Thanks,

/mjt

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] seavgabios resolutions, win8
  2013-11-29 14:58 [Qemu-devel] seavgabios resolutions, win8 Michael Tokarev
@ 2013-11-29 15:23 ` Gerd Hoffmann
  2013-11-29 15:59   ` Michael Tokarev
  2013-11-29 18:57 ` [Qemu-devel] " Kevin O'Connor
  1 sibling, 1 reply; 7+ messages in thread
From: Gerd Hoffmann @ 2013-11-29 15:23 UTC (permalink / raw)
  To: Michael Tokarev; +Cc: seabios, Qemu Development List

  Hi,

> +    { 0x18d, { MM_DIRECT, 1920, 1080, 16, 8, 16, SEG_GRAPH } },
> +    { 0x18e, { MM_DIRECT, 1920, 1080, 24, 8, 16, SEG_GRAPH } },
> +    { 0x18f, { MM_DIRECT, 1920, 1080, 32, 8, 16, SEG_GRAPH } },

> I'm not sure I understand how list of modes is maintained/used in
> seavgabios.  The above patch at least allows one of the very common
> modes to be selected in windows clients.

Just get-send-email a proper patch to the seabios list.

> And while at it, there's another bugreport against vgabios package in
> Debian, see http://bugs.debian.org/685097 .  It looks like windows8
> isn't happy with vgabios-provided modes and does not let to change
> resolution at all, sticking at 1024x768.  That bugreport points to
> a patchset, http://lists.xen.org/archives/html/xen-devel/2012-05/msg00260.html
> (this is just one patch from it), which has been applied to xen copy
> of vgabios to solve exactly this issue with win8, and reportedly it
> works there.  It looks like something similar should be done in
> seavgabios too, since with it, win8 guest is also stuck at the same
> resolution.

Hmm, last time I tried resolution switching in win8 worked just fine
with seavgabios.  Can you double-check?

cheers,
  Gerd

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] seavgabios resolutions, win8
  2013-11-29 15:23 ` Gerd Hoffmann
@ 2013-11-29 15:59   ` Michael Tokarev
  2013-11-29 16:17     ` Michael Tokarev
  2013-11-29 18:48     ` [Qemu-devel] [SeaBIOS] " Kevin O'Connor
  0 siblings, 2 replies; 7+ messages in thread
From: Michael Tokarev @ 2013-11-29 15:59 UTC (permalink / raw)
  To: Gerd Hoffmann; +Cc: seabios, Qemu Development List

29.11.2013 19:23, Gerd Hoffmann wrote:
>   Hi,
> 
>> +    { 0x18d, { MM_DIRECT, 1920, 1080, 16, 8, 16, SEG_GRAPH } },
>> +    { 0x18e, { MM_DIRECT, 1920, 1080, 24, 8, 16, SEG_GRAPH } },
>> +    { 0x18f, { MM_DIRECT, 1920, 1080, 32, 8, 16, SEG_GRAPH } },
> 
>> I'm not sure I understand how list of modes is maintained/used in
>> seavgabios.  The above patch at least allows one of the very common
>> modes to be selected in windows clients.
> 
> Just get-send-email a proper patch to the seabios list.

It isn't about patch submission.  It is about _writing_ the patch, --
I mentioned that there are a few other modes which are requested by
users, and also - which I didn't mention - I don't know which mode
identifiers to use, -- does it matter which IDs to use?  In the above
example, added modes are 0x18[def], does it matter?

>> And while at it, there's another bugreport against vgabios package in
>> Debian, see http://bugs.debian.org/685097 .  It looks like windows8
>> isn't happy with vgabios-provided modes and does not let to change
>> resolution at all, sticking at 1024x768.  That bugreport points to
>> a patchset, http://lists.xen.org/archives/html/xen-devel/2012-05/msg00260.html
>> (this is just one patch from it), which has been applied to xen copy
>> of vgabios to solve exactly this issue with win8, and reportedly it
>> works there.  It looks like something similar should be done in
>> seavgabios too, since with it, win8 guest is also stuck at the same
>> resolution.
> 
> Hmm, last time I tried resolution switching in win8 worked just fine
> with seavgabios.  Can you double-check?

I just installed a fresh win8 VM, and it is indeed stuck with 1024x768,
with the "screen resolution" combo-box grayed out in the appropriate
control panel screen, -- there's no way to choose any other resolution.

However I'm not sure whenever this is because of some (vga)bios issue
or because of the lack of my windows8 activation (I activated it in
qemu-1.1 and it works fine there, but it immediately becomes "not
activated" with any later version of qemu, despite the usage of
-M pc-1.1) -- reportedly, win8 has some restrictions in display area
when not activated, but I don't know details.  I'd expect it to block
the "themes/personalization" part, not screen resolution part...

I'll try to get hold of win8.1, maybe there things are a bit different...

Thanks,

/mjt

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] seavgabios resolutions, win8
  2013-11-29 15:59   ` Michael Tokarev
@ 2013-11-29 16:17     ` Michael Tokarev
  2013-11-29 18:48     ` [Qemu-devel] [SeaBIOS] " Kevin O'Connor
  1 sibling, 0 replies; 7+ messages in thread
From: Michael Tokarev @ 2013-11-29 16:17 UTC (permalink / raw)
  To: Gerd Hoffmann; +Cc: seabios, Qemu Development List

29.11.2013 19:59, Michael Tokarev wrote:
[]
>>> And while at it, there's another bugreport against vgabios package in
>>> Debian, see http://bugs.debian.org/685097 .  It looks like windows8
>>> isn't happy with vgabios-provided modes and does not let to change
>>> resolution at all, sticking at 1024x768.  That bugreport points to
>>> a patchset, http://lists.xen.org/archives/html/xen-devel/2012-05/msg00260.html
>>> (this is just one patch from it), which has been applied to xen copy
>>> of vgabios to solve exactly this issue with win8, and reportedly it
>>> works there.  It looks like something similar should be done in
>>> seavgabios too, since with it, win8 guest is also stuck at the same
>>> resolution.
>>
>> Hmm, last time I tried resolution switching in win8 worked just fine
>> with seavgabios.  Can you double-check?
> 
> I just installed a fresh win8 VM, and it is indeed stuck with 1024x768,
> with the "screen resolution" combo-box grayed out in the appropriate
> control panel screen, -- there's no way to choose any other resolution.

It was a false alarm really.  I'm sorry for this.

After numerous experiments with different vga bioses, I had a leftover
file named vgabios-stdvga.bin in the current directory.  It was some
version of plex/bochs vgabios.  And that one didn't work.  When I actually
removed it and tried with seavgabios, it worked correctly and it lets me
to change resolutions.

It doesn't have 1920x1024 resolution still, but it is a significantly
better behavour.

So the win8 part of my question goes away :)

Thanks,

/mjt

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] [SeaBIOS] seavgabios resolutions, win8
  2013-11-29 15:59   ` Michael Tokarev
  2013-11-29 16:17     ` Michael Tokarev
@ 2013-11-29 18:48     ` Kevin O'Connor
  1 sibling, 0 replies; 7+ messages in thread
From: Kevin O'Connor @ 2013-11-29 18:48 UTC (permalink / raw)
  To: Michael Tokarev; +Cc: seabios, Gerd Hoffmann, Qemu Development List

On Fri, Nov 29, 2013 at 07:59:25PM +0400, Michael Tokarev wrote:
> 29.11.2013 19:23, Gerd Hoffmann wrote:
> >   Hi,
> > 
> >> +    { 0x18d, { MM_DIRECT, 1920, 1080, 16, 8, 16, SEG_GRAPH } },
> >> +    { 0x18e, { MM_DIRECT, 1920, 1080, 24, 8, 16, SEG_GRAPH } },
> >> +    { 0x18f, { MM_DIRECT, 1920, 1080, 32, 8, 16, SEG_GRAPH } },
> > 
> >> I'm not sure I understand how list of modes is maintained/used in
> >> seavgabios.  The above patch at least allows one of the very common
> >> modes to be selected in windows clients.
> > 
> > Just get-send-email a proper patch to the seabios list.
> 
> It isn't about patch submission.  It is about _writing_ the patch, --
> I mentioned that there are a few other modes which are requested by
> users, and also - which I didn't mention - I don't know which mode
> identifiers to use, -- does it matter which IDs to use?  In the above
> example, added modes are 0x18[def], does it matter?

SeaVGABIOS started as a port of the "lgpl vgabios" code from
assembler/bcc to gcc.  What likely happened is that patches were made
to the original "lgpl vgabios" code after the port started.  So, we
just need to patch SeaVGABIOS with whatever has been recently added to
"lgpl vgabios".

The choice of mode ids, generally speaking, doesn't matter.  It's good
form to match the ids chosen in "lgpl vgabios" though.

-Kevin

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] seavgabios resolutions, win8
  2013-11-29 14:58 [Qemu-devel] seavgabios resolutions, win8 Michael Tokarev
  2013-11-29 15:23 ` Gerd Hoffmann
@ 2013-11-29 18:57 ` Kevin O'Connor
  2013-11-29 19:05   ` Michael Tokarev
  1 sibling, 1 reply; 7+ messages in thread
From: Kevin O'Connor @ 2013-11-29 18:57 UTC (permalink / raw)
  To: Michael Tokarev; +Cc: seabios, Gerd Hoffmann, Qemu Development List

On Fri, Nov 29, 2013 at 06:58:59PM +0400, Michael Tokarev wrote:
> I tried switching from plex/bochs vgabios to seavgabios,
> and made this switch for qemu-1.7 package in debian, at
> least to see how it goes.
> 
> And almost immediately got a complain that with new qemu
> (which uses seavgabios not vgabios), windows VMs don't
> support 1920x1080 resolutions anymore.

Where do you get your "lgpl vgabios" from?  The standard QEMU repo (
git://git.qemu.org/vgabios.git ) doesn't have these modes either.

> And while at it, there's another bugreport against vgabios package in
> Debian, see http://bugs.debian.org/685097 .  It looks like windows8
> isn't happy with vgabios-provided modes and does not let to change
> resolution at all, sticking at 1024x768.  That bugreport points to
> a patchset, http://lists.xen.org/archives/html/xen-devel/2012-05/msg00260.html

The logic in the patch in the link above is already in SeaVGABIOS.

-Kevin

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] seavgabios resolutions, win8
  2013-11-29 18:57 ` [Qemu-devel] " Kevin O'Connor
@ 2013-11-29 19:05   ` Michael Tokarev
  0 siblings, 0 replies; 7+ messages in thread
From: Michael Tokarev @ 2013-11-29 19:05 UTC (permalink / raw)
  To: Kevin O'Connor; +Cc: seabios, Gerd Hoffmann, Qemu Development List

29.11.2013 22:57, Kevin O'Connor wrote:
> On Fri, Nov 29, 2013 at 06:58:59PM +0400, Michael Tokarev wrote:
>> I tried switching from plex/bochs vgabios to seavgabios,
>> and made this switch for qemu-1.7 package in debian, at
>> least to see how it goes.
>>
>> And almost immediately got a complain that with new qemu
>> (which uses seavgabios not vgabios), windows VMs don't
>> support 1920x1080 resolutions anymore.
> 
> Where do you get your "lgpl vgabios" from?  The standard QEMU repo (
> git://git.qemu.org/vgabios.git ) doesn't have these modes either.

http://cvs.savannah.gnu.org/viewvc/vgabios/vbetables-gen.c?revision=1.6&root=vgabios&view=markup

It is the "upstream" vgabios repository (v. 0.7a).  Modes 0x19[012].

qemu version is based on upstream version 0.6c.

The original complain comes from one of debian users, and in debian
we always used upstream version.

The patch which added some of these modes:

http://cvs.savannah.gnu.org/viewvc/vgabios/vbetables-gen.c?root=vgabios&r1=1.5&r2=1.6

I'm preparing a patch to add remaining bits from there.

Thanks,

/mjt

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2013-11-29 19:05 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-11-29 14:58 [Qemu-devel] seavgabios resolutions, win8 Michael Tokarev
2013-11-29 15:23 ` Gerd Hoffmann
2013-11-29 15:59   ` Michael Tokarev
2013-11-29 16:17     ` Michael Tokarev
2013-11-29 18:48     ` [Qemu-devel] [SeaBIOS] " Kevin O'Connor
2013-11-29 18:57 ` [Qemu-devel] " Kevin O'Connor
2013-11-29 19:05   ` Michael Tokarev

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).