aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2015-08-28drm/nouveau/gr: directly use instmem where currently possibleBen Skeggs15-63/+87
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/fifo: directly use instmem for runlists and polling areasBen Skeggs7-66/+64
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/xtensa: directly use instmem for ucode imageBen Skeggs2-9/+10
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/falcon: directly use instmem for ucode imageBen Skeggs2-5/+7
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/imem/nv04-nv40: directly use instmem for vbios/ramfc/ramroBen Skeggs8-99/+91
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/bar/gf100: directly use instmem for channel descriptorsBen Skeggs1-8/+13
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/mmu: directly use instmem for page tablesBen Skeggs12-76/+75
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/imem: improve management of instance memoryBen Skeggs34-656/+968
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/mmu: protect each vm with its own mutexBen Skeggs10-50/+46
An upcoming commit requires being able to modify the PRAMIN BAR page tables while already holding the MMU subdev mutex. To solve this issue, each VM has been given its own mutex. As a nice side-effect, this also allows separate VMs to be updated concurrently. Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/core: prepare for new-style objectsBen Skeggs7-50/+135
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/device: prepare for new-style subdevsBen Skeggs28-437/+2378
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/device: separate construction of pci/tegra devicesBen Skeggs11-54/+307
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/engine: implement support for new-style nvkm_engineBen Skeggs2-0/+164
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/subdev: implement support for new-style nvkm_subdevBen Skeggs6-17/+217
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/object: implement support for new-style nvkm_objectBen Skeggs10-65/+271
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/engine: rename some functions to avoid upcoming conflictsBen Skeggs10-19/+19
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/subdev: rename some functions to avoid upcoming conflictsBen Skeggs24-46/+48
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/object: rename some functions to avoid upcoming conflictsBen Skeggs22-51/+51
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/nvif: device time mthdBen Skeggs4-2/+33
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/nvif: replace pushbuf with vm in fermi/kepler gpfifo class argsBen Skeggs11-34/+77
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/nvif: return chipset/board names from device info methodBen Skeggs2-0/+4
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/nvif: add supported engines query to kepler gpfifo classBen Skeggs1-10/+17
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/nvif: return min/max versions for supported object classesBen Skeggs8-42/+92
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/nvif: assign internal class identifiers to sw classesBen Skeggs12-26/+87
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/nvif: use negative oclass identifier for internal classesBen Skeggs12-39/+29
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/nvif: return success from sclass even for objects without childrenBen Skeggs1-6/+6
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/nvif: extend nop ioctl to return nvif version identifierBen Skeggs4-4/+18
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/nvif: replace path-based object identificationBen Skeggs24-116/+152
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/nvif: simplify and tidy library interfacesBen Skeggs42-574/+365
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 <[email protected]>
2015-08-28drm/nouveau/client: store default device by handle, not referenceBen Skeggs4-16/+9
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/parent: remove some (now) unnecessary special-case handlingBen Skeggs2-49/+14
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/object: store object type data outside of handleBen Skeggs6-8/+8
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/device: decouple from engine machineryBen Skeggs10-59/+104
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/device: split user device implementation out on its ownBen Skeggs4-223/+254
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/device: simplify subdev constructionBen Skeggs4-339/+218
Replaces the piece-by-piece (in response to NV_DEVICE ctor args) device contruction with a once-off all-or-nothing approach, eliminating some tricky refcounting issues. The partial device init capability was only required by some tools, and has been moved to probe time instead. Temporarily removes a workaround for some boards where we need to fiddle with AGP registers before executing the DEVINIT scripts. A later commit in this series reinstates it. Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/bin: punt client/device argument handling into a common helperBen Skeggs0-0/+0
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/device: tidy ctor/dtor interfacesBen Skeggs3-41/+40
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/client: tidy ctor/dtor interfacesBen Skeggs5-67/+64
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/platform: remove subclassing of nvkm_deviceBen Skeggs8-40/+25
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/disp: transition outp/conn away from being based on nvkm_objectBen Skeggs28-635/+629
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/i2c: transition pad/ports away from being based on nvkm_objectBen Skeggs52-2021/+2293
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/fb: transition nvkm_ram away from being based on nvkm_objectBen Skeggs59-1092/+872
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/vga: require nvkm_device pointer in accessor functionsBen Skeggs9-102/+98
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/imem: use object accessor function for suspend/resumeBen Skeggs3-53/+10
Very much not ideal, but this will be improved later. Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/core: wrap direct use of object accessor functionsBen Skeggs3-38/+97
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/mpeg: switch to gpuobj accessor macrosBen Skeggs3-11/+22
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/gr: switch to gpuobj accessor macrosBen Skeggs14-317/+385
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/fifo: switch to gpuobj accessor macrosBen Skeggs8-158/+220
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/dma: switch to gpuobj accessor macrosBen Skeggs4-25/+35
Signed-off-by: Ben Skeggs <[email protected]>
2015-08-28drm/nouveau/cipher: switch to gpuobj accessor macrosBen Skeggs1-4/+6
Signed-off-by: Ben Skeggs <[email protected]>