mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-10 12:30:11 +01:00
d3d12: Add a driver version to the screen to be used for workarounds
Reviewed-by: Bill Kristiansen <billkris@microsoft.com> Reviewed-By: Sil Vilerino <sivileri@microsoft.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14837>
This commit is contained in:
parent
944832d3d7
commit
0144e7b18d
3 changed files with 6 additions and 0 deletions
|
|
@ -156,6 +156,7 @@ d3d12_create_dxcore_screen(struct sw_winsys *winsys, LUID *adapter_luid)
|
|||
FAILED(screen->adapter->GetProperty(DXCoreAdapterProperty::DedicatedAdapterMemory, &dedicated_video_memory)) ||
|
||||
FAILED(screen->adapter->GetProperty(DXCoreAdapterProperty::DedicatedSystemMemory, &dedicated_system_memory)) ||
|
||||
FAILED(screen->adapter->GetProperty(DXCoreAdapterProperty::SharedSystemMemory, &shared_system_memory)) ||
|
||||
FAILED(screen->adapter->GetProperty(DXCoreAdapterProperty::DriverVersion, &screen->base.driver_version)) ||
|
||||
FAILED(screen->adapter->GetProperty(DXCoreAdapterProperty::DriverDescription,
|
||||
sizeof(screen->description),
|
||||
screen->description))) {
|
||||
|
|
|
|||
|
|
@ -135,6 +135,10 @@ d3d12_create_dxgi_screen(struct sw_winsys *winsys, LUID *adapter_luid)
|
|||
return nullptr;
|
||||
}
|
||||
|
||||
LARGE_INTEGER driver_version;
|
||||
screen->adapter->CheckInterfaceSupport(__uuidof(IDXGIDevice), &driver_version);
|
||||
screen->base.driver_version = driver_version.QuadPart;
|
||||
|
||||
screen->base.vendor_id = adapter_desc.VendorId;
|
||||
// Note: memory sizes in bytes, but stored in size_t, so may be capped at 4GB.
|
||||
// In that case, adding before conversion to MB can easily overflow.
|
||||
|
|
|
|||
|
|
@ -90,6 +90,7 @@ struct d3d12_screen {
|
|||
|
||||
/* description */
|
||||
uint32_t vendor_id;
|
||||
uint64_t driver_version;
|
||||
uint64_t memory_size_megabytes;
|
||||
double timestamp_multiplier;
|
||||
bool have_load_at_vertex;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue