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
201ed6f651
drm/nouveau/gr/gf100-: delete duplicated grctx init code
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2018-05-18 15:01:25 +10:00
Ben Skeggs
8d56fc48d3
drm/nouveau/gr/gf100-: update 419a3c where required
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2018-05-18 15:01:25 +10:00
Ben Skeggs
c2592adea7
drm/nouveau/gr/gf100-: virtualise r418e94
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2018-05-18 15:01:25 +10:00
Ben Skeggs
fc36076441
drm/nouveau/gr/gf100-: virtualise tpc_mask + apply fixes from traces
...
We weren't placing higher TPC IDs in the right place on some configurations.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2018-05-18 15:01:24 +10:00
Ben Skeggs
60c0264a66
drm/nouveau/gr/gf100-: virtualise gpc_tpc_nr
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2018-05-18 15:01:24 +10:00
Ben Skeggs
e7163b1922
drm/nouveau/gr/gf100-: virtualise r406500
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2018-05-18 15:01:24 +10:00
Ben Skeggs
60770fa28b
drm/nouveau/gr/gf100-: virtualise dist_skip_table + improve algorithm
...
The algorithm for GM200 and newer matches RM for all the boards I have, but
I don't have enough data to try and figure something out for earlier boards,
so these will still write zeroes to the table as we did before.
The code in NVGPU isn't helpful here, it appears to handle specific cases.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2018-05-18 15:01:24 +10:00
Ben Skeggs
ff209c235d
drm/nouveau/gr/gf100-: virtualise rop_mapping
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2018-05-18 15:01:24 +10:00
Ben Skeggs
e51f75d501
drm/nouveau/gr/gf100-: virtualise tpc_per_gpc
...
GM20B now also shares the same code, as NVGPU shows it doesn't need
special treatment.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2018-05-18 15:01:24 +10:00
Ben Skeggs
fc740f545d
drm/nouveau/gr/gf100-: virtualise sm_id/tpc_nr
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2018-05-18 15:01:24 +10:00
Ben Skeggs
87ac331e3f
drm/nouveau/gr/gk104-: move rop_active_fbps init to nonctx
...
Matches newer RM.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2016-05-20 14:43:04 +10:00
Ben Skeggs
06d4f26cc3
drm/nouveau/gr/gm200-: fix bad hardcoding of a max-tpcs-per-gpc value
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2016-05-20 14:43:04 +10:00
Ben Skeggs
560e6da267
drm/nouveau/gr/gm200: make generate_main() static
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2016-05-20 14:43:04 +10:00
Ben Skeggs
933ad44594
drm/nouveau/gr/gf100-: remove hardcoded idle_timeout values
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2016-05-20 14:43:04 +10:00
Ben Skeggs
d4a43a612a
drm/nouveau/gr/gm200: switch over to using sw_method_init from firmware
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2016-03-14 10:13:28 +10:00
Ben Skeggs
c0e8550dbf
drm/nouveau/gr/gm200: switch over to using sw_bundle_init from firmware
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2016-03-14 10:13:27 +10:00
Ben Skeggs
43bc83b9b0
drm/nouveau/gr/gm200: switch over to using sw_ctx from firmware
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2016-03-14 10:13:27 +10:00
Ben Skeggs
9ec280529a
drm/nouveau/gr/gm200: s/gm204/gm200/
...
Most of the per-chipset differences will go away when we fully switch
to using the register lists provided by the firmware files, which will
leave all the remaining code "belonging" to GM200.
This is a preemptive rename from GM204 to GM200.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2016-03-14 10:13:18 +10:00