Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
This processes the damage in the correct order.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
|
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
|
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
|
Verbatim copy from xf86-video-radeon commit 809cacb
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=32341
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
|
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
|
these are no longer needed.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
this is a DRI1 left over, the driver is meant to open the device itself now.
this old interface did crazy stuff like drmAddMap.
Reviewed-by: Ben Skeggs <bskeggs@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
During NVPciProbe, xf86ConfigPciEntity() implicitly calls checks and sets
the entity as shared
Here we are only allocating the screen, thus need to explicitly call the
functions
ZaphodHead and Xinerama should finally work
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=56347
Reported-By: Vladimir Chebotarev <exc@rbcmail.ru>
Reported-By: Damian Nowak <nowaker@geozone.pl>
Tested-By: Damian Nowak <nowaker@geozone.pl>
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
|
As the name suggests checks if it has kernel mode setting,
prints out the interface version and checkes if the chipset
is supported
Function is used in NVPciProbe and NVPlatformProbe
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
|
Common/helper function for NV{Pci,Platform}Probe()
This introduces some the following functions to the
NVPlatformProbe codepath
* xf86SetEntitySharable()
* xf86SetEntityInstanceForScreen()
Necessary for dualhead, xinerama and/or zaphodhead
v2: Rename nouveau_init_scrn() to NVInitScrn()
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
|
Retrieving the whole entity information is not needed as we only
use the index - stored already in entity_num
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
|
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
|
|
They're noops on nouveau since sync markers are unused and
download/upload are always synchronous anyway from exa's POV.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
|
|
Presumably a copy/paste error from upload_to_screen.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
|
|
Add a missing return TRUE to download_from_screen.
Add a missing exaMarkSync to memcpy in upload_to_screen.
Add a really loud warning to both if memcpy to/from tiled is done.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
|
|
|
|
Some investigation showed that the code for accelerating solid fill
didn't actually work because NVC0EXACheckTexture would fail.
Making the check the same as in NV50EXACheckTexture fixes this, and
seems to get acceleration for solid fills working right.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
|
|
This fixes a potential race + crash that wasn't properly
handled by commit 248de8cdbd6d0bc062633b49896fa4791148cd3b
and happened at least on one users machine.
That commit wrongly assumed no special action would be needed
for swaps at next vblank while triple-buffering is enabled on
XOrg server 1.12 or later.
Closer inspection of the x-server main dispatch loop shows
it is possible that the client manages to get the server
to dispatch a new DRI2GetBuffersWithFormat() call before
the server calls the vblank event handler and executes
the nouveau_dri2_finish_swap() routine. Such a race would
cause a crash, as described in above commit.
This commit handles the "swap at next vblank" case by
calling nouveau_dri2_finish_swap() immediately without
the roundtrip (queue vblank_event -> kernel -> deliver event
-> x-server processes event -> nouveau vblank event handler),
before control gets returned to the client.
This avoids the race while retaining triple-buffering. As
a bonus, time-critical swaps at next vblank get processed
without roundtrip delay, increasing the chance of not
skipping a frame due to vblank miss while sync to vblank is
on.
Thanks to Anssi for reporting this problem on the nouveau
mailing list at 12th July 2012 and for testing this patch.
Reported-by: Anssi Hannula <anssi.hannula@iki.fi>
Tested-by: Anssi Hannula <anssi.hannula@iki.fi>
Signed-off-by: Mario Kleiner <mario.kleiner@tuebingen.mpg.de>
|
|
Probably caused by the new libdrm port, the new libdrm sets the bo
size field to the *allocated* size and not the *requested* size,
making the max_height calculation here invalid.
Switched to using virtualX/virtualY as the bounds, which should
hopefully do the right thing..
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
|
This should fix prime rendering under kwin, and not break it under the
others.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
This fixes border rendering in some gtk3 themes.
https://bugs.freedesktop.org/show_bug.cgi?id=55310
v2 (Ben Skeggs): implement same fix for fermi/kepler too
Signed-off-by: Sebastian Keller <sebastian-keller@gmx.de>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
|
Signed-off-by: Adam Jackson <ajax@redhat.com>
|
|
|
|
this adds the provider object for nouveau and enables the capabilities
on it.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
This adds the nouveau interfaces for DRI2 offload, this allows nouveau
to act as an offload slave.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
This should allow nouveau to act as an output master for driving output
slaves.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
This adds the pixmap export/import hooks, along with code for nv50/nvc0
to validate shared buffers in GTT space.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
This adds the ability to load nouveau via the new platform apis.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
This driver has never used int10 or vbe, presumably these were just
copypasta from nv.
Signed-off-by: Adam Jackson <ajax@redhat.com>
|
|
Copied from fbdev, makes it so we can run without iopl.
Signed-off-by: Adam Jackson <ajax@redhat.com>
|
|
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
|
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
|
|
|
Wasn't expecting this situation, apparently it happens..
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
|
Thanks to "Christoph Bumiller <e0425955@student.tuwien.ac.at>" for hinting
at the cause of the memory leak.
Signed-off-by: Maarten Maathuis <madman2003@gmail.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
|
Only the 1st set of coordinates is valid.
NVC0 was fixed in 9a3e579f637267b32efc46cfce5d1a36a41323b1.
|
|
|
|
Could have kept s16 but decided against mask and shift.
|
|
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
|
|
|
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
|
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
|
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
|
Fixes FDO bug #48954.
Signed-off-by: Viktor Novotný <noviktor@seznam.cz>
Reviewed-by: Marcin Slusarz <marcin.slusarz@gmail.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
|
fixes build, reported by tallica on irc.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
This ports to the new server API.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|