Skip to content

venus: Use common physical device properties

Oskar Viljasaar requested to merge tshikaboom/mesa:venus-vkproperties into main

What does this MR do and why?

Depends on !26386 (merged), as it contains the runtime changes needed to have the sharedImage property from VK_ANDROID_native_buffer/VkPhysicalDevicePresentationPropertiesANDROID.

We end up with a bit more code after this refactor, as the venus driver was kinda smart in filling up whole structs in one go. This is not possible with the runtime vk_properties struct, as it is autogenerated, so we have to fill up the fields in one by one...

But we do lose struct vn_physical_device properties! :-)

venus: Use common physical device properties

This lets us delegate the GPDP2 entrypoint to common code.
This also lets us delete struct vn_physical_device_properties,
as it is redundant with struct vk_properties present in the runtime.

Move the properties present in vn_physical_device_properties to the
local_devices struct used to query the host device properties, so we can
still get and fill those properties. Remove the extension checking
logic, and fill all the properties regardless. (the structs are
initalized to zero anyway, so this should not be a problem.)

Replace accesses to struct vn_physical_device with accesses to
struct vk_properties filled in at device initialization time.
Edited by Oskar Viljasaar

Merge request reports