Announcement

Collapse
No announcement yet.

I wanted to try the new vmwgfx stuff, but...

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • ChrisXY
    started a topic I wanted to try the new vmwgfx stuff, but...

    I wanted to try the new vmwgfx stuff, but...

    So today I wanted to see how the vmwgfx graphics stuff was doing. Naturally I compiled libdrm with the --enable-vmwgfx-experimental-api and mesa with the svga state tracker.
    Unfortunately with the stable xf86-video-vmwgfx only the fallback on the vmwgfx legacy driver works and that doesn't have any 3d...

    So I tried to compile xf86-video-vmwgfx-git...
    First thing I noticed that I need to do this:
    Code:
    --- a/vmwgfx/vmwgfx_driver.c
    +++ b/vmwgfx/vmwgfx_driver.c
    @@ -76,7 +76,7 @@ typedef uint16_t uint16;
     
     typedef int8_t int8;
     typedef uint8_t uint8;
    -#include "./src/svga_reg.h"
    +#include "../src/svga_reg.h"
     
     #define XA_VERSION_MINOR_REQUIRED 6
     #define DRM_VERSION_MAJOR_REQUIRED 2
    This code with the missing dot was commited on Jun 16... Has nobody compiled that driver with the X.org state tracker since June??

    But this would be too easy to fix, the makefile also needs to be broken!
    Code:
    make[1]: *** No rule to make target `../../xf86-video-vmware-git/saa/libsaa.la', needed by `libvmwgfx.la'.  Stop.
    So my question: Is vmwgfx to be supposed to be actually kind of usable or is this quest ultimatively useless at this time?

  • dafttitan
    replied
    I went trough all the steps again and it now show:

    Code:
    OpenGL render string: Gallium 0.4 on SVGA3D;build: RELEASE
    I think it is better I am going to emerge gnome3 and see how it goes..

    Leave a comment:


  • dafttitan
    replied
    Code:
    LIBGL_DEBUG=verbose glxinfo | grep render
    libGL: OpenDriver: trying /usr/lib64/dri/tls/vmwgfr_dri.so
    libGL: OpenDriver: trying /usr/lib64/dri/vmwgfr_dri.so
    vmwgfx drm version failure.
    vmwgfx drm version version is 2.3.0  and this driver can only work with version 1.0.x trough 1.x.x.
    libGl error: failed to create dri screen
    ...
    direct rending: Yes
    OpenGL render string: Gallium 0.4 llvmpipe
    looks bad :/

    Leave a comment:


  • ChrisXY
    replied
    Originally posted by dafttitan View Post
    I am just a bit scared by glxinfo showing

    OpenGL render string: Gallium 0.4 on llvmpipe

    Shouldn't it be "Gallium 0.4 on SVGA3D"?
    No, but something similar. llvmpipe is not good.
    Code:
    LIBGL_DEBUG=verbose glxinfo | grep render
    ?

    Leave a comment:


  • dafttitan
    replied
    I activated 3d in vm properties, and I think it looks good now thanks

    from xorg log:
    Code:
    [   160.941] (II) vmware(0): [DRI2]   DRI driver: vmwgfx
    [   160.941] (--) vmware(0): Render acceleration is enabled.
    [   160.941] (==) vmware(0): Rendercheck mode is disabled.
    [   160.941] (--) vmware(0): Direct rendering (3D) is enabled.
    [   160.941] (==) vmware(0): Direct presents are disabled.
    [   160.941] (==) vmware(0): Hardware only presents are disabled.
    [   160.941] (==) vmware(0): Backing store disabled
    [   160.941] (==) vmware(0): Silken mouse enabled
    [   160.942] (II) vmware(0): RandR 1.2 enabled, ignore the following RandR disabled message.
    [   160.944] (==) vmware(0): DPMS enabled
    [   162.172] (II) vmware(0): Setting screen physical size to 338 x 203
    I am just a bit scared by glxinfo showing

    OpenGL render string: Gallium 0.4 on llvmpipe

    Shouldn't it be "Gallium 0.4 on SVGA3D"?
    Last edited by dafttitan; 01-24-2012, 11:53 AM.

    Leave a comment:


  • dafttitan
    replied
    Thank you, I activated 3d in vm properties and it looks good now

    Code:
    [   160.941] (II) vmware(0): [DRI2] Setup complete
    [   160.941] (II) vmware(0): [DRI2]   DRI driver: vmwgfx
    [   160.941] (--) vmware(0): Render acceleration is enabled.
    [   160.941] (==) vmware(0): Rendercheck mode is disabled.
    [   160.941] (--) vmware(0): Direct rendering (3D) is enabled.
    [   160.941] (==) vmware(0): Direct presents are disabled.
    [   160.941] (==) vmware(0): Hardware only presents are disabled.
    [   160.941] (==) vmware(0): Backing store disabled
    [   160.941] (==) vmware(0): Silken mouse enabled
    [   160.942] (II) vmware(0): RandR 1.2 enabled, ignore the following RandR disabled message.
    [   160.944] (==) vmware(0): DPMS enabled

    Leave a comment:


  • dafttitan
    replied
    Thanks.
    I activated 3D in the VM settings and I think it looks not bad in the Xorg log =)
    Let's install gnome3 and see how it goes..

    Code:
    [   697.843] (II) vmware(0): Initialized VMWARE_CTRL extension version 0.2
    [   697.859] (II) vmware(0): Gallium3D XA version: 1.0.0.
    [   697.860] (II) vmware(0): Path of drm device is "/dev/dri/card0".
    [   697.860] (II) vmware(0): [DRI2] Setup complete
    [   697.860] (II) vmware(0): [DRI2]   DRI driver: vmwgfx
    [   697.860] (--) vmware(0): Render acceleration is enabled.
    [   697.860] (==) vmware(0): Rendercheck mode is disabled.
    [   697.860] (--) vmware(0): Direct rendering (3D) is enabled.
    [   697.860] (==) vmware(0): Direct presents are disabled.
    [   697.860] (==) vmware(0): Hardware only presents are disabled.
    [   697.860] (==) vmware(0): Backing store disabled
    [   697.860] (==) vmware(0): Silken mouse enabled
    [   697.860] (II) vmware(0): RandR 1.2 enabled, ignore the following RandR disabled message.
    [   697.860] (==) vmware(0): DPMS enabled
    [   697.894] (II) vmware(0): Setting screen physical size to 338 x 203

    Leave a comment:


  • ChrisXY
    replied
    First, this doesn't seem good:
    Originally posted by dafttitan View Post
    Code:
    [vmwgfx] Detected no device 3D availability.
    Originally posted by dafttitan View Post
    [code]But my xorg does not use it:

    Code:
    thunder ~ # cat /var/log/Xorg.0.log | grep vmwgfx
    thunder ~ # cat /var/log/Xorg.0.log | grep vmware
    [  1029.269] (==) Matched vmware as autoconfigured driver 0
    [  1029.269] (II) LoadModule: "vmware"
    I think, vmware is the right xorg driver. I think the kernel side of the driver is called vmwgfx while the xorg driver is called vmware.
    Try
    Code:
    glxinfo | grep render
    But maybe it doesn't work because of the message before that 3D isn't available? I can't really help with that because I actually don't know much about the whole stuff.

    But maybe there is a clue in the complete Xorg.0.log..

    Leave a comment:


  • dafttitan
    replied
    Hi Chris XY,

    Thanks for your reply - I didn't see it when I posted this so I edit.

    I deleted this from vmwgfx_defio.c and it finished compiling while I am not so sur it is safe..
    Code:
    	/* Kill off the delayed work */
    	cancel_rearming_delayed_work(&par->deferred_work);
    dmesg
    Code:
    [vmwgfx] Initialized drm 1.1.0 20060810
    vmwgfx 0000:00:0f.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
    [vmwgfx] Capabilities:
    [vmwgfx]   Rect copy.
    [vmwgfx]   Cursor.
    [vmwgfx]   Cursor bypass.
    [vmwgfx]   Cursor bypass 2.
    [vmwgfx]   8bit emulation.
    [vmwgfx]   Alpha cursor.
    [vmwgfx]   Extended Fifo.
    [vmwgfx]   Multimon.
    [vmwgfx]   Pitchlock.
    [vmwgfx]   Irq mask.
    [vmwgfx]   Display Topology.
    [vmwgfx]   GMR.
    [vmwgfx]   Traces.
    [vmwgfx]   GMR2.
    [vmwgfx]   Screen Object 2.
    [vmwgfx] Max GMR ids is 64
    [vmwgfx] Max GMR descriptors is 4096
    [vmwgfx] Max number of GMR pages is 196608
    [vmwgfx] Max dedicated hypervisor surface memory is 786432 kiB
    [vmwgfx] VRAM at 0xd0000000 size is 32768 kiB
    [vmwgfx] MMIO at 0xc8800000 size is 2048 kiB
    [vmwgfx] global init.
    [TTM] Zone  kernel: Available graphics memory: 1027392 kiB.
    [TTM] Initializing pool allocator.
    [vmwgfx] width 1024
    [vmwgfx] height 768
    [vmwgfx] bpp 32
    [vmwgfx] Fifo max 0x00200000 min 0x00001000 cap 0x0000077f
    [vmwgfx] Supports vblank timestamp caching Rev 1 (10.10.2010).
    [vmwgfx] No driver support for vblank timestamp query.
    [vmwgfx] Screen objects system initialized
    [vmwgfx] Detected no device 3D availability.
    [vmwgfx] Initialized vmwgfx 2.3.0 20111025 for 0000:00:0f.0 on minor 0
    Code:
    thunder rules.d # lsmod | grep vmwgfx
    vmwgfx                226064  2
    cfbcopyarea             2840  1 vmwgfx
    cfbimgblt               1816  1 vmwgfx
    cfbfillrect             2712  1 vmwgfx
    i2c_core               12752  2 vmwgfx,i2c_piix4
    thunder rules.d #
    But my xorg does not use it:

    Code:
    thunder ~ # cat /var/log/Xorg.0.log | grep vmwgfx
    thunder ~ # cat /var/log/Xorg.0.log | grep vmware
    [  1029.269] (==) Matched vmware as autoconfigured driver 0
    [  1029.269] (II) LoadModule: "vmware"
    Code:
    thunder ~ # modinfo vmwgfx
    filename:       /lib/modules/3.1.6-gentoo/extra/vmwgfx.ko
    license:        GPL and additional rights
    description:    DRM shared core routines
    author:         Gareth Hughes, Leif Delgass, Josť Fonseca, Jon Smirl
    version:        2.3.0.0
    license:        GPL and additional rights
    description:    Standalone drm driver for the VMware SVGA device
    author:         VMware Inc. and others
    srcversion:     BFE045AE1C61B56A5AD92AC
    depends:        i2c-core,cfbfillrect,cfbimgblt,cfbcopyarea
    vermagic:       3.1.6-gentoo SMP mod_unload modversions
    parm:           enable_fbdev:Enable vmwgfx fbdev (int)
    parm:           force_stealth:Force stealth mode (int)
    parm:           force_no_3d:Force no 3D (int)
    parm:           debug:Enable debug output (int)
    parm:           vblankoffdelay:Delay until vblank irq auto-disable [msecs] (int)
    parm:           timestamp_precision_usec:Max. error on timestamps [usecs] (int)
    thunder ~ #
    Any clue why Xorg does not load it?
    Last edited by dafttitan; 01-24-2012, 09:52 AM.

    Leave a comment:


  • ChrisXY
    replied
    I don't know what's going on with these characters, maybe you don't use UTF8?
    Code:
    locale
    should tell...

    I did not need to build the kernel module because it was already enabled in the default archlinux kernel and still is in latest mainline:
    Maybe check your kernel, if you need to compile the kernel module at all?
    Code:
     ~ % modinfo vmwgfx
    filename:       /lib/modules/3.3.0-1-mainline/kernel/drivers/gpu/drm/vmwgfx/vmwgfx.ko.gz
    version:        2.3.0.0
    license:        GPL and additional rights
    description:    Standalone drm driver for the VMware SVGA device
    author:         VMware Inc. and others
    srcversion:     B1CA40BADF84DE393DD6B10
    depends:        ttm,drm
    intree:         Y
    vermagic:       3.3.0-1-mainline SMP preempt mod_unload modversions 
    parm:           enable_fbdev:Enable vmwgfx fbdev (int)
    Code:
     ~ % LC_ALL=C pacman -Qo /lib/modules/3.3.0-1-mainline/kernel/drivers/gpu/drm/vmwgfx/vmwgfx.ko.gz
    /lib/modules/3.3.0-1-mainline/kernel/drivers/gpu/drm/vmwgfx/vmwgfx.ko.gz is owned by linux-mainline 3.3rc1-1
    All I needed was libdrm git with vmware experimental api, mesa git with svga state tracker and the xf86-video-vmware git. Even xorg uses the driver without xorg.conf now.

    Also, it's not very good practice compiling as root.
    Last edited by ChrisXY; 01-24-2012, 09:28 AM.

    Leave a comment:

Working...
X