summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* nouveau: add reverse prime supportDave Airlie2013-02-062-3/+36
| | | | | | This allows the nvidia card to scanout Intel cards rendering. Signed-off-by: Dave Airlie <airlied@redhat.com>
* dri2: fix missing frame throttle on copy_region buffer swapsChristoph Bumiller2013-01-291-0/+17
| | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* nouveau: put cursor BO in GARTMarcin Slusarz2013-01-231-1/+1
| | | | | | | | | | | Keeping it in VRAM wastes CPU time, because cursor_set ioctl reads handed BO back to RAM, just to write it to actual cursor BO. Here (nv92/core i7), this patch decreases overall cpu usage of drmmode_load_cursor_argb from 4.6ms to ~90us and lets nv50_crtc_cursor_set disappear from perf traces. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* bump to 1.0.6xf86-video-nouveau-1.0.6Dave Airlie2013-01-071-1/+1
| | | | Signed-off-by: Dave Airlie <airlied@redhat.com>
* nouveau: fix dirty redisplay damage handlingDave Airlie2013-01-071-1/+2
| | | | | | This processes the damage in the correct order. Signed-off-by: Dave Airlie <airlied@redhat.com>
* bump to 1.0.5Ben Skeggs2013-01-071-1/+1
| | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* nvc0-/exa: fix typo which caused breakage in rendercheck tmcoords testBen Skeggs2013-01-072-4/+4
| | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* add some missing newlines in error messagesMarcin Slusarz2012-11-271-2/+2
| | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* kms: Let the server know if we got more than 1 EDID blockEmil Velikov2012-11-151-1/+4
| | | | | | | | 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>
* bump version to 1.0.4xf86-video-nouveau-1.0.4Ben Skeggs2012-11-091-1/+1
| | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* nouveau: drop unused nv private members.Dave Airlie2012-11-071-2/+0
| | | | | | these are no longer needed. Signed-off-by: Dave Airlie <airlied@redhat.com>
* nouveau: drop DRI1 device open interface.Dave Airlie2012-11-071-13/+43
| | | | | | | | | 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>
* nouveau: NVPlatformProbe, handle shareable entitiesEmil Velikov2012-11-051-0/+5
| | | | | | | | | | | | | | | | | 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>
* nouveau: Factor out common code to NVHasKMS()Emil Velikov2012-11-051-16/+29
| | | | | | | | | | | 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>
* nouveau: introduce NVInitScrn()Emil Velikov2012-11-051-44/+47
| | | | | | | | | | | | | | | 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>
* nouveau: Remove unneeded xf86GetEntityInfo()Emil Velikov2012-11-051-5/+2
| | | | | | | | 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>
* nouveau: fix regression in virtualbox drawing hopefully.Dave Airlie2012-11-021-3/+2
| | | | Signed-off-by: Dave Airlie <airlied@redhat.com>
* bump version to 1.0.3xf86-video-nouveau-1.0.3Maarten Lankhorst2012-10-241-1/+1
|
* exa: remove exaMarkSync from download/upload screenMaarten Lankhorst2012-10-231-6/+0
| | | | | | | 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>
* exa: fix comparison in download_from_screenMaarten Lankhorst2012-10-231-1/+1
| | | | | | Presumably a copy/paste error from upload_to_screen. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
* exa: fix up download_from/upload_to screenMaarten Lankhorst2012-10-231-0/+11
| | | | | | | | 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>
* remove unused members from nv_type.hMaarten Lankhorst2012-10-231-2/+0
|
* nvc0/exa: make solid fill actually workMaarten Lankhorst2012-10-221-14/+20
| | | | | | | | | | 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>
* dri2: Fix potential race and crash for swap at next vblank.Mario Kleiner2012-10-201-13/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* shadowfb: fix segfault due to reading outside of shadow bufferBen Skeggs2012-10-181-4/+3
| | | | | | | | | | | 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>
* nouveau/dri2: fix pixmap/window offset calcs.Dave Airlie2012-10-161-3/+3
| | | | | | | This should fix prime rendering under kwin, and not break it under the others. Signed-off-by: Dave Airlie <airlied@redhat.com>
* exa: use CLAMP_TO_EDGE for RepeatPadSebastian Keller2012-09-263-9/+9
| | | | | | | | | | 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>
* Remove mibstore.hAdam Jackson2012-09-252-4/+0
| | | | Signed-off-by: Adam Jackson <ajax@redhat.com>
* bump version to 1.0.2xf86-video-nouveau-1.0.2Maarten Lankhorst2012-09-121-1/+1
|
* nouveau: enable provider/capabilitiesDave Airlie2012-09-032-0/+25
| | | | | | | this adds the provider object for nouveau and enables the capabilities on it. Signed-off-by: Dave Airlie <airlied@redhat.com>
* nouveau/dri2: add support for DRI2 offloadDave Airlie2012-09-031-36/+111
| | | | | | | 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>
* nouveau: add pixmap tracking/updating support.Dave Airlie2012-08-161-0/+42
| | | | | | | This should allow nouveau to act as an output master for driving output slaves. Signed-off-by: Dave Airlie <airlied@redhat.com>
* nouveau/exa: add support for shared pixmaps.Dave Airlie2012-08-164-2/+54
| | | | | | | 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>
* nouveau: add platform bus supportDave Airlie2012-08-162-2/+46
| | | | | | This adds the ability to load nouveau via the new platform apis. Signed-off-by: Dave Airlie <airlied@redhat.com>
* Remove vbe and int10 includesAdam Jackson2012-08-153-4/+0
| | | | | | | This driver has never used int10 or vbe, presumably these were just copypasta from nv. Signed-off-by: Adam Jackson <ajax@redhat.com>
* Implement ->driverFuncAdam Jackson2012-08-151-1/+18
| | | | | | Copied from fbdev, makes it so we can run without iopl. Signed-off-by: Adam Jackson <ajax@redhat.com>
* nvc0/nve0: support sync-to-vblank if kernel is new enoughBen Skeggs2012-08-056-7/+62
| | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* nv40/exa: fix shaders on big-endian machinesBen Skeggs2012-07-062-216/+226
| | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* bump version to 1.0.1xf86-video-nouveau-1.0.1Ben Skeggs2012-06-191-1/+1
|
* exa: fix remaining signed datatype issuesBen Skeggs2012-06-196-17/+15
| | | | | | Wasn't expecting this situation, apparently it happens.. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* exa: fix various issues in transfer bo handlingMaarten Maathuis2012-06-191-4/+8
| | | | | | | | 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>
* nve0: fix and improve NV12 shaderChristoph Bumiller2012-06-181-43/+23
| | | | | Only the 1st set of coordinates is valid. NVC0 was fixed in 9a3e579f637267b32efc46cfce5d1a36a41323b1.
* nvc0/accel: oops fix method size in previous patchChristoph Bumiller2012-06-181-1/+1
|
* nvc0/accel: use correct (signed) vertex data type in PUSH_VTX1/2sChristoph Bumiller2012-06-181-11/+15
| | | | Could have kept s16 but decided against mask and shift.
* bump version to 1.0.0xf86-video-nouveau-1.0.0Ben Skeggs2012-06-181-1/+1
| | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* distcheck fixesBen Skeggs2012-06-181-14/+34
|
* exa: drop massive gart allocation in favour of smaller ones, as neededBen Skeggs2012-06-184-66/+62
| | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* nv50/exa: somehow fix firefox tabs not being drawn properly since vp xfrmBen Skeggs2012-06-181-3/+5
| | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* dri2: kill debug spamBen Skeggs2012-06-131-7/+0
| | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* nv04/exa: Reset destination surface offset in the same call of NV04EXACopyViktor Novotný2012-06-081-7/+8
| | | | | | | | 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>