18 ASSERT_TRUE(GetContext());
19 const auto& driver_info =
21 ASSERT_NE(driver_info,
nullptr);
23 ASSERT_TRUE(driver_info->GetAPIVersion().IsAtLeast(
Version{1, 1, 0}));
26 ASSERT_NE(driver_info->GetDriverName(),
"");
27 EXPECT_FALSE(driver_info->IsKnownBadDriver());
57 [&driver_name, qc](VkPhysicalDevice
device,
58 VkPhysicalDeviceProperties* prop) {
60 prop->vendorID = 0x168C;
62 prop->vendorID = 0x13B5;
64 driver_name.copy(prop->deviceName, driver_name.size());
65 prop->deviceType = VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU;
68 return context->GetDriverInfo()->IsKnownBadDriver();
75 [&driver_name, qc](VkPhysicalDevice
device,
76 VkPhysicalDeviceProperties* prop) {
78 prop->vendorID = 0x168C;
80 prop->vendorID = 0x13B5;
82 driver_name.copy(prop->deviceName, driver_name.size());
83 prop->deviceType = VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU;
103 [&driver_name, qc](VkPhysicalDevice
device,
104 VkPhysicalDeviceProperties* prop) {
106 prop->vendorID = 0x168C;
108 prop->vendorID = 0x13B5;
110 driver_name.copy(prop->deviceName, driver_name.size());
111 prop->deviceType = VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU;
131 [&driver_name, qc](VkPhysicalDevice
device,
132 VkPhysicalDeviceProperties* prop) {
134 prop->vendorID = 0x168C;
136 prop->vendorID = 0x13B5;
138 driver_name.copy(prop->deviceName, driver_name.size());
139 prop->deviceType = VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU;
201 [&driver_name, qc](VkPhysicalDevice
device,
202 VkPhysicalDeviceProperties* prop) {
204 prop->vendorID = 0x168C;
206 prop->vendorID = 0x13B5;
208 driver_name.copy(prop->deviceName, driver_name.size());
209 prop->deviceType = VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU;
230 [](VkPhysicalDevice
device, VkPhysicalDeviceProperties* prop) {
231 prop->vendorID = 0x144D;
232 prop->deviceType = VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU;
234 prop->apiVersion = (1 << 22) | (1 << 12);
238 EXPECT_TRUE(context->GetDriverInfo()->IsKnownBadDriver());
243 [](VkPhysicalDevice
device, VkPhysicalDeviceProperties* prop) {
244 prop->vendorID = 0x144D;
245 prop->deviceType = VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU;
247 prop->apiVersion = (1 << 22) | (3 << 12);
251 EXPECT_FALSE(context->GetDriverInfo()->IsKnownBadDriver());
255 std::shared_ptr<ContextVK> context =
258 [](VkPhysicalDevice
device, VkPhysicalDeviceProperties* prop) {
259 prop->vendorID = 0x1010;
260 prop->deviceType = VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU;
261 std::string
name =
"PowerVR Rogue GE8320";
262 name.copy(prop->deviceName,
name.size());
266 EXPECT_TRUE(context->GetDriverInfo()->IsKnownBadDriver());
267 EXPECT_EQ(context->GetDriverInfo()->GetPowerVRGPUInfo(),
272 std::shared_ptr<ContextVK> context =
275 [](VkPhysicalDevice
device, VkPhysicalDeviceProperties* prop) {
276 prop->vendorID = 0x1010;
277 prop->deviceType = VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU;
278 std::string
name =
"PowerVR DXT 123";
279 name.copy(prop->deviceName,
name.size());
283 EXPECT_FALSE(context->GetDriverInfo()->IsKnownBadDriver());
284 EXPECT_EQ(context->GetDriverInfo()->GetPowerVRGPUInfo(),
291 std::shared_ptr<ContextVK> context =
294 [](VkPhysicalDevice
device, VkPhysicalDeviceProperties* prop) {
295 prop->vendorID = 0x1010;
296 prop->deviceType = VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU;
297 std::string
name =
"PowerVR BXM-8-256";
298 name.copy(prop->deviceName,
name.size());
302 EXPECT_FALSE(context->GetDriverInfo()->IsKnownBadDriver());
303 EXPECT_EQ(context->GetDriverInfo()->GetPowerVRGPUInfo(),
const std::shared_ptr< ContextVK > & GetParent() const
MockVulkanContextBuilder & SetPhysicalPropertiesCallback(std::function< void(VkPhysicalDevice device, VkPhysicalDeviceProperties *physicalProperties)> physical_properties_callback)