Re: [Qemu-devel] QEMU + -std-vga + XFree86

2007-03-26 Thread Kyle Hubert

On 3/25/07, Christian MICHON [EMAIL PROTECTED] wrote:

On 3/26/07, Kyle Hubert [EMAIL PROTECTED] wrote:
 Hi, I'm working with QEMU on an XFree86 machine. I was desirous of
 having 1600x1200 working in the virtual machine, so I looked at using
 the -std-vga option with the vesa X driver.

 While initializing X, I get the following:

 (...)

could you send your xf86config file ?
does it work in cirrus mode ?


It does work in cirrus mode for 1024x768. I was under the impression
that it was all the cirrus driver would support. However, the std-vga
mode supports vga 799 and 798 in the console. (1600x1200:24bpp and
1600x1200:16bpp respectively)

The X driver seem forever confused saying there is no available video memory.

Thanks a lot for the help.

-Kyle





# XF86Config-4 (XFree86 X Window System server configuration file)
#
# This file was generated by dexconf, the Debian X Configuration tool, using
# values from the debconf database.
#
# Edit this file with caution, and see the XF86Config-4 manual page.
# (Type man XF86Config-4 at the shell prompt.)
#
# This file is automatically updated on xserver-xfree86 package upgrades *only*
# if it has not been modified since the last upgrade of the xserver-xfree86
# package.
#
# If you have edited this file but would like it to be automatically updated
# again, run the following commands as root:
#
#   cp /etc/X11/XF86Config-4 /etc/X11/XF86Config-4.custom
#   md5sum /etc/X11/XF86Config-4 /var/lib/xfree86/XF86Config-4.md5sum
#   dpkg-reconfigure xserver-xfree86

Section Files
   FontPathunix/:7100# local font server
   # if the local font server has problems, we can fall back on these
   FontPath/usr/lib/X11/fonts/misc
   FontPath/usr/lib/X11/fonts/cyrillic
   FontPath/usr/lib/X11/fonts/100dpi/:unscaled
   FontPath/usr/lib/X11/fonts/75dpi/:unscaled
   FontPath/usr/lib/X11/fonts/Type1
   FontPath/usr/lib/X11/fonts/CID
   FontPath/usr/lib/X11/fonts/Speedo
   FontPath/usr/lib/X11/fonts/100dpi
   FontPath/usr/lib/X11/fonts/75dpi
EndSection

Section Module
   LoadGLcore
   Loadbitmap
   Loaddbe
   Loadddc
   Loaddri
   Loadextmod
   Loadfreetype
   Loadglx
   Loadint10
   Loadrecord
   Loadspeedo
   Loadtype1
   Loadvbe
EndSection

Section InputDevice
   Identifier  Generic Keyboard
   Driver  keyboard
   Option  CoreKeyboard
   Option  XkbRules  xfree86
   Option  XkbModel  pc104
   Option  XkbLayout us
EndSection

Section InputDevice
   Identifier  Configured Mouse
   Driver  mouse
   Option  CorePointer
   Option  Device/dev/input/mice
   Option  Protocol  ImPS/2
   Option  Emulate3Buttons   true
   Option  ZAxisMapping  4 5
EndSection

Section Device
   Identifier  Cirrus Logic GD 5446
   Driver  cirrus
#vesaDriver   vesa
#vesaVideoRam8192
EndSection

Section Monitor
   Identifier  Generic Monitor
   HorizSync   28-51
   VertRefresh 43-60
   Option  DPMS
EndSection

Section Screen
   Identifier  Default Screen
   Device  Cirrus Logic GD 5446
   Monitor Generic Monitor
   DefaultDepth16
   SubSection Display
   Depth   1
   Modes   1600x1200 1280x1024 1024x768
800x600 640x480
   EndSubSection
   SubSection Display
   Depth   4
   Modes   1600x1200 1280x1024 1024x768
800x600 640x480
   EndSubSection
   SubSection Display
   Depth   8
   Modes   1600x1200 1280x1024 1024x768
800x600 640x480
   EndSubSection
   SubSection Display
   Depth   15
   Modes   1600x1200 1280x1024 1024x768
800x600 640x480
   EndSubSection
   SubSection Display
   Depth   16
   Modes   1600x1200 1280x1024 1024x768
800x600 640x480
   EndSubSection
   SubSection Display
   Depth   24
   Modes   1600x1200 1280x1024 1024x768
800x600 640x480
   EndSubSection
EndSection

Section ServerLayout
   Identifier  Default Layout
   Screen  Default Screen
   InputDevice Generic Keyboard
   InputDevice Configured Mouse
EndSection

Section DRI
   Mode0666
EndSection




Re: [Qemu-devel] QEMU + -std-vga + XFree86

2007-03-26 Thread Kyle Hubert

It does work in cirrus mode for 1024x768. I was under the impression
that it was all the cirrus driver would support. However, the std-vga
mode supports vga 799 and 798 in the console. (1600x1200:24bpp and
1600x1200:16bpp respectively)


Here is the output from dmesg showing the console working:

vesafb: abort, cannot reserve video memory at 0xe000
vesafb: framebuffer at 0xe000, mapped to 0xff011000, size 8192k
vesafb: mode is 1600x1200x24, linelength=4800, pages=0
vesafb: scrolling: redraw
vesafb: directcolor: size=0:8:8:8, shift=0:16:8:0
mtrr: your processor doesn't support write-combining
fb0: VESA VGA frame buffer device
Console: switching to colour frame buffer device 200x75

-Kyle




Re: [Qemu-devel] QEMU + -std-vga + XFree86

2007-03-26 Thread Christian MICHON

On 3/26/07, Kyle Hubert [EMAIL PROTECTED] wrote:

It does work in cirrus mode for 1024x768. I was under the impression
that it was all the cirrus driver would support. However, the std-vga
mode supports vga 799 and 798 in the console. (1600x1200:24bpp and
1600x1200:16bpp respectively)

The X driver seem forever confused saying there is no available video memory.

Thanks a lot for the help.



no obvious problem in the xf86config file.
when all fails, use the framebuffer :) and Xfbdev (fbdev driver instead
of vesa)

you might need a patch called vesafb-tng to reach such size.
I haven't tried successfully though. Appending the proper
parameters -append video=vesafb:[EMAIL PROTECTED], I
basically reach at most 1280x1024.

--
Christian




Re: [Qemu-devel] QEMU + -std-vga + XFree86

2007-03-26 Thread Kyle Hubert

no obvious problem in the xf86config file.
when all fails, use the framebuffer :) and Xfbdev (fbdev driver instead
of vesa)


The framebuffer seems to miss every other vertical scan line. I'm not
sure if I make sense, but the video wraps around the screen onto
itself vertically. Thus rendering half of it on top (with vertical
black lines every other pixel)


you might need a patch called vesafb-tng to reach such size.
I haven't tried successfully though. Appending the proper
parameters -append video=vesafb:[EMAIL PROTECTED], I
basically reach at most 1280x1024.


I tried using the newer video appendage and it didn't seem to work. I
had to use the older vga=. I believe you are talking about the kernel
boot param, yes?



How about this for more information. The XFree86 VBE extension does
the following code:

   pInt-ax = 0x4F00;
   pInt-es = SEG_ADDR(RealOff);
   pInt-di = SEG_OFF(RealOff);
   pInt-num = 0x10;

   xf86ExecX86int10(pInt);

Resulting in:

   TotalMem = B_O16(vbe-TotalMem);
   /* Some BIOS'es are off by one */
   TotalMem += TotalMem  1U;

   xf86DrvMsgVerb(screen, X_INFO, 3, VESA VBE Total Mem: %li kB\n,
  TotalMem * 64);

Which is annoying it ignores the X config's manual VideoRam in the
device section.

Perhaps the vgabios doesn't correctly implement this interrupt?

Looking in the 0.6a release of vgabios, you see in vbe.c:

   // VBE Total Memory (in 64b blocks)
   vbe_info_block.TotalMemory = VBE_TOTAL_VIDEO_MEMORY_DIV_64K;

So, it's intended to return correctly. Yet the XFree86 driver reports
a zero return.

Perhaps the vgabios.bin coming with QEMU is incorrect? I don't see
anything in vgabios.diff which suggests this code was changed.

-Kyle




Re: [Qemu-devel] QEMU + -std-vga + XFree86

2007-03-26 Thread Christian MICHON

On 3/26/07, Kyle Hubert [EMAIL PROTECTED] wrote:

I tried using the newer video appendage and it didn't seem to work. I
had to use the older vga=. I believe you are talking about the kernel
boot param, yes?


yes. normally the vesafb-tng is supposed to address missing functions
or resolutions of the current vesa present in the kernel.
The cool feature is to be able to swap resolutions without rebooting,
plus being able to get higher refresh rates than 60hz.


How about this for more information. The XFree86 VBE extension does
the following code:

(...)

for the rest of your email, that part is too obscure to me (I never went
inside the bios itself: I'm doing more OS assembly and kernel compiling
than doing active development of qemu).

good luck!

--
Christian




[Qemu-devel] QEMU + -std-vga + XFree86

2007-03-25 Thread Kyle Hubert

Hi, I'm working with QEMU on an XFree86 machine. I was desirous of
having 1600x1200 working in the virtual machine, so I looked at using
the -std-vga option with the vesa X driver.

While initializing X, I get the following:

(II) VESA(0): Primary V_BIOS segment is: 0xc000
(II) VESA(0): VESA BIOS detected
(II) VESA(0): VESA VBE Version 0.0
(II) VESA(0): VESA VBE Total Mem: 0 kB
(II) VESA(0): VESA VBE OEM: ^A

The log continues on to say:

(II) VESA(0): Total Memory: 0 64KB banks (0kB)
(II) VESA(0): Generic Monitor: Using hsync range of 28.00-51.00 kHz
(II) VESA(0): Generic Monitor: Using vrefresh range of 43.00-60.00 Hz
(II) VESA(0): Not using mode 1600x1200 (no mode of this name)
(II) VESA(0): Not using mode 1280x1024 (no mode of this name)
(II) VESA(0): Not using mode 1024x768 (no mode of this name)
(II) VESA(0): Not using mode 800x600 (no mode of this name)
(II) VESA(0): Not using built-in mode 640x480 (insufficient memory
given virtual size)

I'm not positive this is my problem, but it looks like it isn't
reporting the vram size correctly, does this sound correct?

Thanks for the time.

-Kyle




Re: [Qemu-devel] QEMU + -std-vga + XFree86

2007-03-25 Thread Anthony Liguori

Kyle Hubert wrote:

Hi, I'm working with QEMU on an XFree86 machine. I was desirous of
having 1600x1200 working in the virtual machine, so I looked at using
the -std-vga option with the vesa X driver.


You probably have to increase your hsync and vrefresh ranges.

Regards,

Anthony Liguori


While initializing X, I get the following:

(II) VESA(0): Primary V_BIOS segment is: 0xc000
(II) VESA(0): VESA BIOS detected
(II) VESA(0): VESA VBE Version 0.0
(II) VESA(0): VESA VBE Total Mem: 0 kB
(II) VESA(0): VESA VBE OEM: ^A

The log continues on to say:

(II) VESA(0): Total Memory: 0 64KB banks (0kB)
(II) VESA(0): Generic Monitor: Using hsync range of 28.00-51.00 kHz
(II) VESA(0): Generic Monitor: Using vrefresh range of 43.00-60.00 Hz
(II) VESA(0): Not using mode 1600x1200 (no mode of this name)
(II) VESA(0): Not using mode 1280x1024 (no mode of this name)
(II) VESA(0): Not using mode 1024x768 (no mode of this name)
(II) VESA(0): Not using mode 800x600 (no mode of this name)
(II) VESA(0): Not using built-in mode 640x480 (insufficient memory
given virtual size)

I'm not positive this is my problem, but it looks like it isn't
reporting the vram size correctly, does this sound correct?

Thanks for the time.

-Kyle









Re: [Qemu-devel] QEMU + -std-vga + XFree86

2007-03-25 Thread Ben Taylor

 Anthony Liguori [EMAIL PROTECTED] wrote: 
 Kyle Hubert wrote:
  Hi, I'm working with QEMU on an XFree86 machine. I was desirous of
  having 1600x1200 working in the virtual machine, so I looked at using
  the -std-vga option with the vesa X driver.
 
 You probably have to increase your hsync and vrefresh ranges.

yeah, except for the 640x480 reports not enough memory

 
 Regards,
 
 Anthony Liguori
 
  While initializing X, I get the following:
 
  (II) VESA(0): Primary V_BIOS segment is: 0xc000
  (II) VESA(0): VESA BIOS detected
  (II) VESA(0): VESA VBE Version 0.0
  (II) VESA(0): VESA VBE Total Mem: 0 kB
  (II) VESA(0): VESA VBE OEM: ^A
 
  The log continues on to say:
 
  (II) VESA(0): Total Memory: 0 64KB banks (0kB)
  (II) VESA(0): Generic Monitor: Using hsync range of 28.00-51.00 kHz
  (II) VESA(0): Generic Monitor: Using vrefresh range of 43.00-60.00 Hz
  (II) VESA(0): Not using mode 1600x1200 (no mode of this name)
  (II) VESA(0): Not using mode 1280x1024 (no mode of this name)
  (II) VESA(0): Not using mode 1024x768 (no mode of this name)
  (II) VESA(0): Not using mode 800x600 (no mode of this name)
  (II) VESA(0): Not using built-in mode 640x480 (insufficient memory
  given virtual size)
 
  I'm not positive this is my problem, but it looks like it isn't
  reporting the vram size correctly, does this sound correct?
 
  Thanks for the time.
 
  -Kyle
 
 
 
 
 
 





Re: [Qemu-devel] QEMU + -std-vga + XFree86

2007-03-25 Thread Christian MICHON

On 3/26/07, Kyle Hubert [EMAIL PROTECTED] wrote:

Hi, I'm working with QEMU on an XFree86 machine. I was desirous of
having 1600x1200 working in the virtual machine, so I looked at using
the -std-vga option with the vesa X driver.

While initializing X, I get the following:

(...)


could you send your xf86config file ?
does it work in cirrus mode ?

--
Christian