summaryrefslogtreecommitdiff
path: root/drm/nouveau/nouveau_abi16.c
Commit message (Collapse)AuthorAgeFilesLines
* core: recognise GP100 chipsetBen Skeggs2016-07-141-0/+1
| | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* drm: rename nouveau_drm.h to nouveau_drv.hBen Skeggs2016-05-201-1/+1
| | | | | | | Fixes out-of-tree build issue where uapi/drm/nouveau_drm.h gets picked up instead. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* fifo/gk104: make use of topology info during gpfifo constructionBen Skeggs2016-03-141-4/+14
| | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* nvif: modify nvif_unvers/nvif_unpack macros to be more obviousBen Skeggs2016-01-111-2/+2
| | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* nvif: split out ctxdma interface definitionsBen Skeggs2016-01-111-0/+1
| | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* nvif: split out fifo interface definitionsBen Skeggs2016-01-111-0/+1
| | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* nvif: move internal class identifiers to class.hBen Skeggs2016-01-111-8/+8
| | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* abi16: implement limited interoperability with usif/nvifBen Skeggs2015-11-031-0/+39
| | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* abi16: introduce locked variant of nouveau_abi16_get()Ben Skeggs2015-11-031-5/+13
| | | | | | | USIF already takes the client mutex, but will need access to ABI16 data in order to provide some limited interoperability. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* abi16: remove unused argument from nouveau_abi16_get()Ben Skeggs2015-11-031-6/+6
| | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* drm: remove unnecessary usage of object handlesBen Skeggs2015-11-031-12/+5
| | | | | | | No longer required in a lot of cases, as objects are identified over NVIF via an alternate mechanism since the rework. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* pci: merge agp handling from nouveau drmBen Skeggs2015-08-281-1/+1
| | | | | | | This commit reinstates the pre-DEVINIT AGP fiddling that was broken in an earlier commit. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* device: remove pci/platform_device from common structBen Skeggs2015-08-281-3/+3
| | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* object: merge with handleBen Skeggs2015-08-281-0/+1
| | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* gr: convert to new-style nvkm_engineBen Skeggs2015-08-281-1/+1
| | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* nvif: return min/max versions for supported object classesBen Skeggs2015-08-281-10/+11
| | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* nvif: assign internal class identifiers to sw classesBen Skeggs2015-08-281-15/+61
| | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* nvif: simplify and tidy library interfacesBen Skeggs2015-08-281-80/+54
| | | | | | | | | | | | | | | | | | A variety of tweaks to the NVIF library interfaces, mostly ripping out things that turned out to be not so useful. - Removed refcounting from nvif_object, callers are expected to not be stupid instead. - nvif_client is directly reachable from anything derived from nvif_object, removing the need for heuristics to locate it - _new() versions of interfaces, that allocate memory for the object they construct, have been removed. The vast majority of callers used the embedded _init() interfaces. - No longer storing constructor arguments (and the data returned from nvkm) inside nvif_object, it's more or less unused and just wastes memory. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* drm: use dev_* for loggingBen Skeggs2015-08-281-1/+1
| | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* tmr: type-safe PTIMER-based delay/wait macrosBen Skeggs2015-08-281-2/+1
| | | | | | | | | | | | These require an explicit struct nvkm_device pointer, unlike the previous macros which take a void *, and work for (almost) anything derived from nvkm_object by using some heuristics. These macros are more general than the previous ones, and can be used to handle PTIMER-based busy-waits (will be used in later devinit fixes) as well as more complicated wait conditions. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* tmr: cosmetic changesBen Skeggs2015-08-281-2/+2
| | | | | | | This is purely preparation for upcoming commits, there should be no code changes here. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* drm: finalise nvkm namespace switch (no binary change)Ben Skeggs2015-01-191-8/+8
| | | | | | | | | | | | | | | | The namespace of NVKM is being changed to nvkm_ instead of nouveau_, which will be used for the DRM part of the driver. This is being done in order to make it very clear as to what part of the driver a given symbol belongs to, and as a minor step towards splitting the DRM driver out to be able to stand on its own (for virt). Because there's already a large amount of churn here anyway, this is as good a time as any to also switch to NVIDIA's device and chipset naming to ease collaboration with them. A comparison of objdump disassemblies proves no code changes. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* nvif: namespace of nvkm accessors (no binary change)Ben Skeggs2015-01-191-5/+5
| | | | | | | | | | NVKM is having it's namespace switched to nvkm_, which will conflict with these functions (which are workarounds for the fact that as of yet, we still aren't able to split DRM and NVKM completely). A comparison of objdump disassemblies proves no code changes. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* gr: rename from graph (no binary change)Ben Skeggs2015-01-191-2/+2
| | | | | | | | | | | | | | | | | | Shorter device name, match Tegra and our existing enums. The namespace of NVKM is being changed to nvkm_ instead of nouveau_, which will be used for the DRM part of the driver. This is being done in order to make it very clear as to what part of the driver a given symbol belongs to, and as a minor step towards splitting the DRM driver out to be able to stand on its own (for virt). Because there's already a large amount of churn here anyway, this is as good a time as any to also switch to NVIDIA's device and chipset naming to ease collaboration with them. A comparison of objdump disassemblies proves no code changes. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* drm: remove symlinks from build, use Kbuild files for lib buildBen Skeggs2015-01-191-0/+537
The DRM build used a separate, symlinked, source tree out of a desire to avoid Kbuild/autotools' object files conflicting. Not only is this very annoying to maintain, but it's made worse by having two entirely separate source file lists to maintain too. Fixes both these issues by ditching automake (it doesn't approve of the kernel's Kbuild syntax) in favour of custom makefiles that can build libnvif.so from the Kbuild files. Like the previous commit, this will never show up in the kernel tree (it has its own version). Signed-off-by: Ben Skeggs <bskeggs@redhat.com>