Ben Skeggs
1a34468855
drm/nouveau/gr/gf100-: move some init to init_exception2()
...
Ampere.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Reviewed-by: Lyude Paul <lyude@redhat.com>
2022-11-09 10:45:12 +10:00
Ben Skeggs
b6d93fa74a
drm/nouveau/gr/gf100-: move some init to init_rop_exceptions()
...
Ampere.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Reviewed-by: Lyude Paul <lyude@redhat.com>
2022-11-09 10:45:11 +10:00
Ben Skeggs
be99d041b6
drm/nouveau/gr/gf100-: move reset during golden ctx init to fecs_reset()
...
Ampere.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Reviewed-by: Lyude Paul <lyude@redhat.com>
2022-11-09 10:45:11 +10:00
Ben Skeggs
864d37c3d8
drm/nouveau/gr: switch to instanced constructor
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Reviewed-by: Lyude Paul <lyude@redhat.com>
2021-02-11 11:49:58 +10:00
Ben Skeggs
ef16dc278e
drm/nouveau/gr/gf100-: select implementation based on available FW
...
This will allow for further customisation of the subdev depending on what
firmware is available.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2020-01-15 10:50:27 +10:00
Ben Skeggs
e9d03335f6
drm/nouveau/gr/gp100-: use correct registers for zbc colour/depth setup
...
These were missed the first time around due to the driver version I traced
using the older registers still.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2018-05-18 15:01:26 +10:00
Ben Skeggs
068cae743c
drm/nouveau/gr/gf100-: calculate and use sm mapping table
...
There's a number of places that require this data, so let's separate out
the calculations to ensure they remain consistent.
This is incorrect for GM200 and newer, but will produce the same results
as we did before.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2018-05-18 15:01:26 +10:00
Ben Skeggs
5f6474a4e6
drm/nouveau/gr/gf100-: port tile mapping calculations from NVGPU
...
There's also a couple of hardcoded tables for a couple of very specific
configurations that NVGPU's algorithm didn't work for.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2018-05-18 15:01:26 +10:00
Ben Skeggs
5c05a58985
drm/nouveau/gr/gf100-: virtualise trap_mp
...
Required to support Volta.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2018-05-18 15:01:25 +10:00
Ben Skeggs
04547482ae
drm/nouveau/gr/gf100-: virtualise init_400054
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2018-05-18 15:01:23 +10:00
Ben Skeggs
4615e9b438
drm/nouveau/gr/gf100-: virtualise init_shader_exceptions
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2018-05-18 15:01:23 +10:00
Ben Skeggs
f3ef80c0c4
drm/nouveau/gr/gf100-: virtualise init_tex_hww_esr
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2018-05-18 15:01:23 +10:00
Ben Skeggs
0a84a51334
drm/nouveau/gr/gf100-: virtualise init_419eb4 + apply fixes from traces
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2018-05-18 15:01:23 +10:00
Ben Skeggs
0feab0250d
drm/nouveau/gr/gf100-: virtualise init_419cc0 + apply fixes from traces
...
Pulled some init out of main per-GPC/TPC loops to match RM.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2018-05-18 15:01:23 +10:00
Ben Skeggs
2b297b0d6d
drm/nouveau/gr/gf100-: virtualise init_40601c
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2018-05-18 15:01:23 +10:00
Ben Skeggs
2585a1b131
drm/nouveau/gr/gf100-: virtualise init_fecs_exceptions + apply fixes from traces
...
The value for GF100 has changed here, but it matches RM now.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2018-05-18 15:01:22 +10:00
Ben Skeggs
bfd27f39b5
drm/nouveau/gr/gf100-: virtualise init_num_active_ltcs
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2018-05-18 15:01:22 +10:00
Ben Skeggs
02917aa39d
drm/nouveau/gr/gf100-: virtualise init_zcull
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2018-05-18 15:01:22 +10:00
Ben Skeggs
2fe5ff6371
drm/nouveau/gr/gf100-: virtualise init_vsc_stream_master
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2018-05-18 15:01:22 +10:00
Ben Skeggs
223eaf4bf8
drm/nouveau/gr/gf100-gk208: make use of init_gpc_mmu() hook to share setup
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2017-11-02 13:32:20 +10:00
Ben Skeggs
64cb5a31f4
drm/nouveau/gr/gf100-: abstract fetching rop count
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2016-05-20 14:43:04 +10:00
Ben Skeggs
c85ee6ca79
drm/nouveau/gr: convert to new-style nvkm_engine
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-08-28 12:40:47 +10:00
Ben Skeggs
27f3d6cf80
drm/nouveau/gr: convert user classes to new-style nvkm_object
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-08-28 12:40:41 +10:00
Ben Skeggs
e3c71eb274
drm/nouveau/gr: namespace + nvidia gpu names (no binary change)
...
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>
2015-01-22 12:18:02 +10:00