[PATCH v2 0/4] Split GuC ID space into usable and shareable pools
Piórkowski, Piotr <[email protected]>
| Newsgroups | org.freedesktop.lists.intel-xe |
|---|---|
| Message-ID | <[email protected]> |
From: Piotr Piórkowski <[email protected]> The GuC ID manager currently treats all GuC IDs as a single pool shared between GuC submission and SR-IOV related allocations. This series introduces explicit separation between IDs that can be used for GuC submission and IDs that can be shared with VFs. The ID manager gains support for independent usable and shareable pools, dedicated allocation interfaces, pool-specific accounting and validation, and extended test coverage. To preserve existing behaviour, both pools continue to map onto the same GuC ID space where appropriate. GuC submission is updated to explicitly allocate IDs from the usable pool, while ID manager initialization is adapted to expose the correct ID ranges for native, PF and VF operating modes. v1 -> v2: - Fix issues reported by Sashiko (top-down VF ID search, KUNIT_EXPECT in locked sections, xe_root_mmio_gt() for the primary GT). Piotr Piórkowski (4): drm/xe/guc: Split GuC ID manager into usable and shareable pools drm/xe/kunit: Extend GuC ID manager split-pool coverage drm/xe/guc: Start use explicitly usable GuC IDs for for submission drm/xe/pf: Explicitly use shareable GuC IDs for VFs provisioning .../xe/tests/xe_gt_sriov_pf_config_kunit.c | 5 + drivers/gpu/drm/xe/tests/xe_guc_id_mgr_test.c | 557 +++++++++++++++++- drivers/gpu/drm/xe/xe_gt_sriov_pf_config.c | 16 +- drivers/gpu/drm/xe/xe_guc.c | 4 +- drivers/gpu/drm/xe/xe_guc_id_mgr.c | 448 +++++++++++--- drivers/gpu/drm/xe/xe_guc_id_mgr.h | 31 +- drivers/gpu/drm/xe/xe_guc_submit.c | 27 +- drivers/gpu/drm/xe/xe_guc_submit.h | 2 +- drivers/gpu/drm/xe/xe_guc_types.h | 8 +- 9 files changed, 953 insertions(+), 145 deletions(-) -- 2.34.1