summaryrefslogtreecommitdiffstats
path: root/drivers/gpu (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linuxLinus Torvalds2014-08-1614-27/+57
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pull drm fixes (mostly nouveau) from Dave Airlie: "One doc buidling fixes for a file that moved, along with a bunch of nouveau fixes, one a build problem on ARM" * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux: drm/doc: Refer to proper source file drm/nouveau/platform: fix compilation error drm/nouveau/gk20a: add LTC device drm/nouveau: warn if we fail to re-pin fb on resume drm/nouveau/nvif: fix dac load detect method definition drm/gf100-/gr: fix -ENOSPC detection when allocating zbc table entries drm/nouveau/nvif: return null pointers on failure, in addition to ret != 0 drm/nouveau/ltc: fix tag base address getting truncated if above 4GiB drm/nvc0-/fb/ram: fix use of non-existant ram if partitions aren't uniform drm/nouveau/bar: behave better if ioremap failed drm/nouveau/kms: nouveau_fbcon_accel_fini can be static drm/nouveau: kill unused variable warning if !__OS_HAS_AGP drm/nouveau/nvif: fix a number of notify thinkos
| * Merge branch 'linux-3.17' of ↵Dave Airlie2014-08-1514-27/+57
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://anongit.freedesktop.org/git/nouveau/linux-2.6 into drm-fixes A couple of thinkos from the -next merge, some random fixes from a coverity scan, fix for (at least) GK106 accidentally using non-existent vram on some board configurations, and better behaviour of the instmem allocations if vmalloc space runs out. * 'linux-3.17' of git://anongit.freedesktop.org/git/nouveau/linux-2.6: drm/nouveau/platform: fix compilation error drm/nouveau/gk20a: add LTC device drm/nouveau: warn if we fail to re-pin fb on resume drm/nouveau/nvif: fix dac load detect method definition drm/gf100-/gr: fix -ENOSPC detection when allocating zbc table entries drm/nouveau/nvif: return null pointers on failure, in addition to ret != 0 drm/nouveau/ltc: fix tag base address getting truncated if above 4GiB drm/nvc0-/fb/ram: fix use of non-existant ram if partitions aren't uniform drm/nouveau/bar: behave better if ioremap failed drm/nouveau/kms: nouveau_fbcon_accel_fini can be static drm/nouveau: kill unused variable warning if !__OS_HAS_AGP drm/nouveau/nvif: fix a number of notify thinkos
| | * drm/nouveau/platform: fix compilation errorAlexandre Courbot2014-08-141-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | nouveau_platform.c was still using the old nouveau_dev() macro, triggering a compilation error. Fix this. Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| | * drm/nouveau/gk20a: add LTC deviceAlexandre Courbot2014-08-141-0/+1
| | | | | | | | | | | | | | | | | | | | | LTC device is now required for PGRAPH to work, add it. Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| | * drm/nouveau: warn if we fail to re-pin fb on resumeBen Skeggs2014-08-141-1/+3
| | | | | | | | | | | | | | | | | | Spotted by Coverity. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| | * drm/nouveau/nvif: fix dac load detect method definitionBen Skeggs2014-08-141-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | A thinko made me turn this into a u16 when cleaning up. Spotted by coverity. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| | * drm/gf100-/gr: fix -ENOSPC detection when allocating zbc table entriesBen Skeggs2014-08-141-0/+6
| | | | | | | | | | | | | | | | | | Spotted by Coverity. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| | * drm/nouveau/nvif: return null pointers on failure, in addition to ret != 0Ben Skeggs2014-08-142-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | Reported by Coverity. The intention is that the return value is checked, but let's be more paranoid and make it extremely obvious if something forgets to. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| | * drm/nouveau/ltc: fix tag base address getting truncated if above 4GiBBen Skeggs2014-08-141-1/+1
| | | | | | | | | | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| | * drm/nvc0-/fb/ram: fix use of non-existant ram if partitions aren't uniformBen Skeggs2014-08-141-2/+2
| | | | | | | | | | | | | | | | | | Likely a large part of the GK106 woes.. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| | * drm/nouveau/bar: behave better if ioremap failedBen Skeggs2014-08-141-3/+11
| | | | | | | | | | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| | * drm/nouveau/kms: nouveau_fbcon_accel_fini can be staticFengguang Wu2014-08-141-2/+2
| | | | | | | | | | | | | | | Signed-off-by: Fengguang Wu <fengguang.wu@intel.com> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| | * drm/nouveau: kill unused variable warning if !__OS_HAS_AGPBen Skeggs2014-08-141-2/+1
| | | | | | | | | | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| | * drm/nouveau/nvif: fix a number of notify thinkosBen Skeggs2014-08-143-11/+20
| | | | | | | | | | | | | | | | | | Note to self: more sleep Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
* | | PCI: Remove DEFINE_PCI_DEVICE_TABLE macro useBenoit Taine2014-08-127-7/+7
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We should prefer `struct pci_device_id` over `DEFINE_PCI_DEVICE_TABLE` to meet kernel coding style guidelines. This issue was reported by checkpatch. A simplified version of the semantic patch that makes this change is as follows (http://coccinelle.lip6.fr/): // <smpl> @@ identifier i; declarer name DEFINE_PCI_DEVICE_TABLE; initializer z; @@ - DEFINE_PCI_DEVICE_TABLE(i) + const struct pci_device_id i[] = z; // </smpl> [bhelgaas: add semantic patch] Signed-off-by: Benoit Taine <benoit.taine@lip6.fr> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
* | Merge branch 'linux-3.17' of git://anongit.freedesktop.org/git/nouveau/linux-2.6Linus Torvalds2014-08-10262-5795/+12140
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pull nouveau drm updates from Ben Skeggs: "Apologies for not getting this done in time for Dave's drm-next merge window. As he mentioned, a pre-existing bug reared its head a lot more obviously after this lot of changes. It took quite a bit of time to track it down. In any case, Dave suggested I try my luck by sending directly to you this time. Overview: - more code for Tegra GK20A from NVIDIA - probing, reclockig - better fix for Kepler GPUs that have the graphics engine powered off on startup, method courtesy of info provided by NVIDIA - unhardcoding of a bunch of graphics engine setup on Fermi/Kepler/Maxwell, will hopefully solve some issues people have noticed on higher-end models - support for "Zero Bandwidth Clear" on Fermi/Kepler/Maxwell, needs userspace support in general, but some lucky apps will benefit automagically - reviewed/exposed the full object APIs to userspace (finally), gives it access to perfctrs, ZBC controls, various events. More to come in the future. - various other fixes" Acked-by: Dave Airlie <airlied@redhat.com> * 'linux-3.17' of git://anongit.freedesktop.org/git/nouveau/linux-2.6: (87 commits) drm/nouveau: expose the full object/event interfaces to userspace drm/nouveau: fix headless mode drm/nouveau: hide sysfs pstate file behind an option again drm/nv50/disp: shhh compiler drm/gf100-/gr: implement the proper SetShaderExceptions method drm/gf100-/gr: remove some broken ltc bashing, for now drm/gf100-/gr: unhardcode attribute cb config drm/gf100-/gr: fetch tpcs-per-ppc info on startup drm/gf100-/gr: unhardcode pagepool config drm/gf100-/gr: unhardcode bundle cb config drm/gf100-/gr: improve initial context patch list helpers drm/gf100-/gr: add support for zero bandwidth clear drm/nouveau/ltc: add zbc drivers drm/nouveau/ltc: s/ltcg/ltc/ + cleanup drm/nouveau: use ram info from nvif_device drm/nouveau/disp: implement nvif event sources for vblank/connector notifiers drm/nouveau/disp: allow user direct access to channel control registers drm/nouveau/disp: audit and version display classes drm/nouveau/disp: audit and version SCANOUTPOS method drm/nv50-/disp: audit and version PIOR_PWR method ...
| * drm/nouveau: expose the full object/event interfaces to userspaceBen Skeggs2014-08-098-10/+424
| | | | | | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/nouveau: fix headless modeBen Skeggs2014-08-092-2/+3
| | | | | | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/nouveau: hide sysfs pstate file behind an option againBen Skeggs2014-08-091-1/+8
| | | | | | | | | | | | | | | | No-one has yet had time to move this to debugfs as discussed during the last merge window. Until this happens, hide the option to make it clear it's not going to be here forever. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/nv50/disp: shhh compilerBen Skeggs2014-08-091-4/+4
| | | | | | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/gf100-/gr: implement the proper SetShaderExceptions methodBen Skeggs2014-08-099-17/+53
| | | | | | | | | | | | | | | | | | | | We have another version of it implemented in SW, however, that version isn't serialised with normal PGRAPH operation and can possibly clobber the enables for another context. This is the same method that's implemented by the NVIDIA binary driver. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/gf100-/gr: remove some broken ltc bashing, for nowBen Skeggs2014-08-0913-58/+0
| | | | | | | | | | | | | | | | ... and hope that the defaults are good enough. This was always supposed to be a read/modify/write thing anyway, so we're writing very wrong stuff for some boards already. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/gf100-/gr: unhardcode attribute cb configBen Skeggs2014-08-0913-166/+199
| | | | | | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/gf100-/gr: fetch tpcs-per-ppc info on startupBen Skeggs2014-08-099-1/+16
| | | | | | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/gf100-/gr: unhardcode pagepool configBen Skeggs2014-08-0913-41/+75
| | | | | | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/gf100-/gr: unhardcode bundle cb configBen Skeggs2014-08-0913-41/+100
| | | | | | | | | | | | | | | | | | Should be the same values as before, except: GF117 has smaller buffer allocated, as per register setup. GK20A now uses values from Tegra driver, not GK104's. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/gf100-/gr: improve initial context patch list helpersBen Skeggs2014-08-094-20/+51
| | | | | | | | | | | | | | Removes need for fixed buffer indices, and allows the functions utilising them to also be run outside of context generation. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/gf100-/gr: add support for zero bandwidth clearBen Skeggs2014-08-0910-11/+313
| | | | | | | | | | | | | | | | | | | | Default ZBC table is compatible with binary driver defaults. Userspace will need to be updated to take full advantage of this feature, however, some applications will see a performance boost without updated drivers. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/nouveau/ltc: add zbc driversBen Skeggs2014-08-096-1/+108
| | | | | | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/nouveau/ltc: s/ltcg/ltc/ + cleanupBen Skeggs2014-08-0917-235/+362
| | | | | | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/nouveau: use ram info from nvif_deviceBen Skeggs2014-08-098-32/+17
| | | | | | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/nouveau/disp: implement nvif event sources for vblank/connector notifiersBen Skeggs2014-08-0911-20/+47
| | | | | | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/nouveau/disp: allow user direct access to channel control registersBen Skeggs2014-08-094-1/+24
| | | | | | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/nouveau/disp: audit and version display classesBen Skeggs2014-08-0952-423/+323
| | | | | | | | | | | | | | | | The full object interfaces are about to be exposed to userspace, so we need to check for any security-related issues and version the structs to make it easier to handle any changes we may need in the future. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/nouveau/disp: audit and version SCANOUTPOS methodBen Skeggs2014-08-0915-172/+204
| | | | | | | | | | | | | | | | The full object interfaces are about to be exposed to userspace, so we need to check for any security-related issues and version the structs to make it easier to handle any changes we may need in the future. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/nv50-/disp: audit and version PIOR_PWR methodBen Skeggs2014-08-0910-70/+50
| | | | | | | | | | | | | | | | The full object interfaces are about to be exposed to userspace, so we need to check for any security-related issues and version the structs to make it easier to handle any changes we may need in the future. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/nv50-/disp: audit and version SOR_DP_PWR methodBen Skeggs2014-08-099-74/+41
| | | | | | | | | | | | | | | | The full object interfaces are about to be exposed to userspace, so we need to check for any security-related issues and version the structs to make it easier to handle any changes we may need in the future. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/nv50-/disp: audit and version LVDS_SCRIPT methodBen Skeggs2014-08-099-23/+43
| | | | | | | | | | | | | | | | The full object interfaces are about to be exposed to userspace, so we need to check for any security-related issues and version the structs to make it easier to handle any changes we may need in the future. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/nv50-/disp: audit and version SOR_HDMI_PWR methodBen Skeggs2014-08-0913-45/+121
| | | | | | | | | | | | | | | | The full object interfaces are about to be exposed to userspace, so we need to check for any security-related issues and version the structs to make it easier to handle any changes we may need in the future. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/nv50-/disp: audit and version SOR_HDA_ELD methodBen Skeggs2014-08-0910-29/+75
| | | | | | | | | | | | | | | | The full object interfaces are about to be exposed to userspace, so we need to check for any security-related issues and version the structs to make it easier to handle any changes we may need in the future. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/nv50-/disp: audit and version SOR_PWR methodBen Skeggs2014-08-0910-26/+45
| | | | | | | | | | | | | | | | The full object interfaces are about to be exposed to userspace, so we need to check for any security-related issues and version the structs to make it easier to handle any changes we may need in the future. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/nv50-/disp: audit and version DAC_LOAD methodBen Skeggs2014-08-0910-51/+48
| | | | | | | | | | | | | | | | The full object interfaces are about to be exposed to userspace, so we need to check for any security-related issues and version the structs to make it easier to handle any changes we may need in the future. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/nv50-/disp: audit and version DAC_PWR methodBen Skeggs2014-08-0913-41/+171
| | | | | | | | | | | | | | | | The full object interfaces are about to be exposed to userspace, so we need to check for any security-related issues and version the structs to make it easier to handle any changes we may need in the future. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/nv50-/disp: share channel creation between nv50/gf110 implsBen Skeggs2014-08-0910-302/+204
| | | | | | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/nv50/kms: don't assume same class versions for all channelsBen Skeggs2014-08-091-48/+166
| | | | | | | | | | | | | | | | One of the next commits will remove some of the class IDs, leaving only the ones used by NVIDIA which, presumably, mark where functionality changes actually happened. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/nouveau/fifo: implement nvif event sourceBen Skeggs2014-08-0913-50/+89
| | | | | | | | Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/nouveau/fifo: allow direct access to channel control registers where ↵Ben Skeggs2014-08-0911-9/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | possible The indirect method has been left in-place here as a fallback path, as it may not be possible to map the non-PAGE_SIZE aligned control areas across some chipset+interface combinations. This isn't a problem for the primary use-case where the core and drm are linked together in kernel-land, but across a VM or (in the case where it applies now) between the core in the kernel and a userspace test tool. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/nouveau/fifo: audit and version fifo channel classesBen Skeggs2014-08-0919-199/+323
| | | | | | | | | | | | | | | | The full object interfaces are about to be exposed to userspace, so we need to check for any security-related issues and version the structs to make it easier to handle any changes we may need in the future. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/nouveau/device: audit and version NVIF_CONTROL class and methodsBen Skeggs2014-08-097-112/+174
| | | | | | | | | | | | | | | | The full object interfaces are about to be exposed to userspace, so we need to check for any security-related issues and version the structs to make it easier to handle any changes we may need in the future. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| * drm/nouveau/pm: audit and version NVIF_PERFMON class and methodsBen Skeggs2014-08-094-78/+116
| | | | | | | | | | | | | | | | The full object interfaces are about to be exposed to userspace, so we need to check for any security-related issues and version the structs to make it easier to handle any changes we may need in the future. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>