Compare commits

...

3 Commits

Author SHA1 Message Date
kbz_8 59716cc794 fixing image clear in vkCmdBeginRenderpass
Build / build (push) Failing after 0s
Test / build_and_test (push) Failing after 0s
2026-06-19 01:59:14 +02:00
kbz_8 aaf6653b3f adding point rasterization 2026-06-19 00:42:46 +02:00
kbz_8 b8367ac2bb fixing intel names 2026-06-18 14:36:20 +02:00
14 changed files with 409 additions and 373 deletions
+2 -2
View File
@@ -32,8 +32,8 @@
// Soft dependencies
.SPIRV_Interpreter = .{
.url = "git+https://git.kbz8.me/kbz_8/SPIRV-Interpreter#42554a5cc1069e8174b377e95ce2ac2d802a44ff",
.hash = "SPIRV_Interpreter-0.0.1-ajmpn0GXBwD01BnmV_Kf8EeNqTDoyuq7UvHVaq-WoBP0",
.url = "git+https://github.com/Kbz-8/SPIRV-Interpreter#f82e3e1629af4dc751a80a3a4b04ff1b43725c24",
.hash = "SPIRV_Interpreter-0.0.1-ajmpn6mrBwDl75NH4NndKIOjnn-1ooUY-0NRyWR2eW-P",
.lazy = true,
},
//.SPIRV_Interpreter = .{
+292 -291
View File
@@ -6,327 +6,328 @@ const PciInfo = struct {
is_discrete: bool,
};
/// Not a hashmap as they need runtime allocations
pub const map = [_]PciInfo{
.{ .id = 0x1602, .name = "Intel(R) Broadwell-U (HD Graphics)", .is_discrete = false },
.{ .id = 0x1606, .name = "Intel(R) Broadwell-U GT1 (HD Graphics)", .is_discrete = false },
.{ .id = 0x160a, .name = "Intel(R) Broadwell-U (HD Graphics)", .is_discrete = false },
.{ .id = 0x160b, .name = "Intel(R) Broadwell-U (HD Graphics)", .is_discrete = false },
.{ .id = 0x160d, .name = "Intel(R) Broadwell-U (HD Graphics)", .is_discrete = false },
.{ .id = 0x160e, .name = "Intel(R) Broadwell-U (HD Graphics)", .is_discrete = false },
.{ .id = 0x1612, .name = "Intel(R) Broadwell-H GT2 (HD Graphics 5600)", .is_discrete = false },
.{ .id = 0x1616, .name = "Intel(R) Broadwell-U GT2 (HD Graphics 5500)", .is_discrete = false },
.{ .id = 0x161a, .name = "Intel(R) Broadwell-U (HD Graphics P5700)", .is_discrete = false },
.{ .id = 0x161b, .name = "Intel(R) Broadwell-U (HD Graphics)", .is_discrete = false },
.{ .id = 0x161d, .name = "Intel(R) Broadwell-U (HD Graphics)", .is_discrete = false },
.{ .id = 0x161e, .name = "Intel(R) Broadwell-Y GT2 (HD Graphics 5300)", .is_discrete = false },
.{ .id = 0x1622, .name = "Intel(R) Broadwell-DT/H GT3 (Iris(R) Pro Graphics 6200)", .is_discrete = false },
.{ .id = 0x1626, .name = "Intel(R) Broadwell-U GT3 (HD Graphics 6000)", .is_discrete = false },
.{ .id = 0x162a, .name = "Intel(R) Broadwell-DT GT3 (Iris(R) Pro Graphics P6300)", .is_discrete = false },
.{ .id = 0x162b, .name = "Intel(R) Broadwell-U GT3 (Iris(R) Graphics 6100)", .is_discrete = false },
.{ .id = 0x162d, .name = "Intel(R) Broadwell-U (HD Graphics)", .is_discrete = false },
.{ .id = 0x162e, .name = "Intel(R) Broadwell-U (HD Graphics)", .is_discrete = false },
.{ .id = 0x1602, .name = "Intel(R) HD Graphics (Broadwell-U)", .is_discrete = false },
.{ .id = 0x1606, .name = "Intel(R) HD Graphics (Broadwell-U GT1)", .is_discrete = false },
.{ .id = 0x160a, .name = "Intel(R) HD Graphics (Broadwell-U)", .is_discrete = false },
.{ .id = 0x160b, .name = "Intel(R) HD Graphics (Broadwell-U)", .is_discrete = false },
.{ .id = 0x160d, .name = "Intel(R) HD Graphics (Broadwell-U)", .is_discrete = false },
.{ .id = 0x160e, .name = "Intel(R) HD Graphics (Broadwell-U)", .is_discrete = false },
.{ .id = 0x1612, .name = "Intel(R) HD Graphics 5600 (Broadwell-H GT2)", .is_discrete = false },
.{ .id = 0x1616, .name = "Intel(R) HD Graphics 5500 (Broadwell-U GT2)", .is_discrete = false },
.{ .id = 0x161a, .name = "Intel(R) HD Graphics P5700 (Broadwell-U)", .is_discrete = false },
.{ .id = 0x161b, .name = "Intel(R) HD Graphics (Broadwell-U)", .is_discrete = false },
.{ .id = 0x161d, .name = "Intel(R) HD Graphics (Broadwell-U)", .is_discrete = false },
.{ .id = 0x161e, .name = "Intel(R) HD Graphics 5300 (Broadwell-Y GT2)", .is_discrete = false },
.{ .id = 0x1622, .name = "Intel(R) Iris(R) Pro Graphics 6200 (Broadwell-DT/H GT3)", .is_discrete = false },
.{ .id = 0x1626, .name = "Intel(R) HD Graphics 6000 (Broadwell-U GT3)", .is_discrete = false },
.{ .id = 0x162a, .name = "Intel(R) Iris(R) Pro Graphics P6300 (Broadwell-DT GT3)", .is_discrete = false },
.{ .id = 0x162b, .name = "Intel(R) Iris(R) Graphics 6100 (Broadwell-U GT3)", .is_discrete = false },
.{ .id = 0x162d, .name = "Intel(R) HD Graphics (Broadwell-U)", .is_discrete = false },
.{ .id = 0x162e, .name = "Intel(R) HD Graphics (Broadwell-U)", .is_discrete = false },
.{ .id = 0x1902, .name = "Intel(R) Skylake-S GT1 (HD Graphics 510)", .is_discrete = false },
.{ .id = 0x1906, .name = "Intel(R) Skylake-U GT1 (HD Graphics 510)", .is_discrete = false },
.{ .id = 0x190a, .name = "Intel(R) Skylake GT1 (HD Graphics)", .is_discrete = false },
.{ .id = 0x190b, .name = "Intel(R) Skylake GT1 (HD Graphics 510)", .is_discrete = false },
.{ .id = 0x190e, .name = "Intel(R) Skylake GT1 (HD Graphics)", .is_discrete = false },
.{ .id = 0x1912, .name = "Intel(R) Skylake-S GT2 (HD Graphics 530)", .is_discrete = false },
.{ .id = 0x1913, .name = "Intel(R) Skylake GT1.5 (HD Graphics)", .is_discrete = false },
.{ .id = 0x1915, .name = "Intel(R) Skylake GT1.5 (HD Graphics)", .is_discrete = false },
.{ .id = 0x1916, .name = "Intel(R) Skylake-U GT2 (HD Graphics 520)", .is_discrete = false },
.{ .id = 0x1917, .name = "Intel(R) Skylake GT2 (HD Graphics)", .is_discrete = false },
.{ .id = 0x191a, .name = "Intel(R) Skylake GT2 (HD Graphics)", .is_discrete = false },
.{ .id = 0x191b, .name = "Intel(R) Skylake-H GT2 (HD Graphics 530)", .is_discrete = false },
.{ .id = 0x191d, .name = "Intel(R) Skylake-DT/H GT2 (HD Graphics P530)", .is_discrete = false },
.{ .id = 0x191e, .name = "Intel(R) Skylake-Y GT2 (HD Graphics 515)", .is_discrete = false },
.{ .id = 0x1921, .name = "Intel(R) Skylake GT2 (HD Graphics 520)", .is_discrete = false },
.{ .id = 0x1923, .name = "Intel(R) Skylake GT2 (HD Graphics 535)", .is_discrete = false },
.{ .id = 0x1926, .name = "Intel(R) Skylake-U GT3 (Iris(R) Graphics 540)", .is_discrete = false },
.{ .id = 0x1927, .name = "Intel(R) Skylake-U GT3 (Iris(R) Graphics 550)", .is_discrete = false },
.{ .id = 0x192a, .name = "Intel(R) Skylake GT3 (HD Graphics)", .is_discrete = false },
.{ .id = 0x192b, .name = "Intel(R) Skylake GT3 (Iris(R) Graphics 555)", .is_discrete = false },
.{ .id = 0x192d, .name = "Intel(R) Skylake-H GT3 (Iris(R) Graphics P555)", .is_discrete = false },
.{ .id = 0x1932, .name = "Intel(R) Skylake GT4 (Iris(R) Pro Graphics 580)", .is_discrete = false },
.{ .id = 0x193a, .name = "Intel(R) Skylake-H GT4 (Iris(R) Pro Graphics P580)", .is_discrete = false },
.{ .id = 0x193b, .name = "Intel(R) Skylake-H GT4 (Iris(R) Pro Graphics 580)", .is_discrete = false },
.{ .id = 0x193d, .name = "Intel(R) Skylake-H GT4 (Iris(R) Pro Graphics P580)", .is_discrete = false },
.{ .id = 0x1902, .name = "Intel(R) HD Graphics 510 (Skylake-S GT1)", .is_discrete = false },
.{ .id = 0x1906, .name = "Intel(R) HD Graphics 510 (Skylake-U GT1)", .is_discrete = false },
.{ .id = 0x190a, .name = "Intel(R) HD Graphics (Skylake GT1)", .is_discrete = false },
.{ .id = 0x190b, .name = "Intel(R) HD Graphics 510 (Skylake GT1)", .is_discrete = false },
.{ .id = 0x190e, .name = "Intel(R) HD Graphics (Skylake GT1)", .is_discrete = false },
.{ .id = 0x1912, .name = "Intel(R) HD Graphics 530 (Skylake-S GT2)", .is_discrete = false },
.{ .id = 0x1913, .name = "Intel(R) HD Graphics (Skylake GT1.5)", .is_discrete = false },
.{ .id = 0x1915, .name = "Intel(R) HD Graphics (Skylake GT1.5)", .is_discrete = false },
.{ .id = 0x1916, .name = "Intel(R) HD Graphics 520 (Skylake-U GT2)", .is_discrete = false },
.{ .id = 0x1917, .name = "Intel(R) HD Graphics (Skylake GT2)", .is_discrete = false },
.{ .id = 0x191a, .name = "Intel(R) HD Graphics (Skylake GT2)", .is_discrete = false },
.{ .id = 0x191b, .name = "Intel(R) HD Graphics 530 (Skylake-H GT2)", .is_discrete = false },
.{ .id = 0x191d, .name = "Intel(R) HD Graphics P530 (Skylake-DT/H GT2)", .is_discrete = false },
.{ .id = 0x191e, .name = "Intel(R) HD Graphics 515 (Skylake-Y GT2)", .is_discrete = false },
.{ .id = 0x1921, .name = "Intel(R) HD Graphics 520 (Skylake GT2)", .is_discrete = false },
.{ .id = 0x1923, .name = "Intel(R) HD Graphics 535 (Skylake GT2)", .is_discrete = false },
.{ .id = 0x1926, .name = "Intel(R) Iris(R) Graphics 540 (Skylake-U GT3)", .is_discrete = false },
.{ .id = 0x1927, .name = "Intel(R) Iris(R) Graphics 550 (Skylake-U GT3)", .is_discrete = false },
.{ .id = 0x192a, .name = "Intel(R) HD Graphics (Skylake GT3)", .is_discrete = false },
.{ .id = 0x192b, .name = "Intel(R) Iris(R) Graphics 555 (Skylake GT3)", .is_discrete = false },
.{ .id = 0x192d, .name = "Intel(R) Iris(R) Graphics P555 (Skylake-H GT3)", .is_discrete = false },
.{ .id = 0x1932, .name = "Intel(R) Iris(R) Pro Graphics 580 (Skylake GT4)", .is_discrete = false },
.{ .id = 0x193a, .name = "Intel(R) Iris(R) Pro Graphics P580 (Skylake-H GT4)", .is_discrete = false },
.{ .id = 0x193b, .name = "Intel(R) Iris(R) Pro Graphics 580 (Skylake-H GT4)", .is_discrete = false },
.{ .id = 0x193d, .name = "Intel(R) Iris(R) Pro Graphics P580 (Skylake-H GT4)", .is_discrete = false },
.{ .id = 0x0a84, .name = "Intel(R) HD Graphics", .is_discrete = false },
.{ .id = 0x1a84, .name = "Intel(R) HD Graphics", .is_discrete = false },
.{ .id = 0x1a85, .name = "Intel(R) HD Graphics", .is_discrete = false },
.{ .id = 0x5a84, .name = "Intel(R) ApolloLake (HD Graphics 505)", .is_discrete = false },
.{ .id = 0x5a85, .name = "Intel(R) ApolloLake GT1 (HD Graphics 500)", .is_discrete = false },
.{ .id = 0x5a84, .name = "Intel(R) HD Graphics 505 (ApolloLake)", .is_discrete = false },
.{ .id = 0x5a85, .name = "Intel(R) HD Graphics 500 (ApolloLake GT1)", .is_discrete = false },
.{ .id = 0x3184, .name = "Intel(R) GeminiLake (UHD Graphics 605)", .is_discrete = false },
.{ .id = 0x3185, .name = "Intel(R) GeminiLake (UHD Graphics 600)", .is_discrete = false },
.{ .id = 0x3184, .name = "Intel(R) UHD Graphics 605 (GeminiLake)", .is_discrete = false },
.{ .id = 0x3185, .name = "Intel(R) UHD Graphics 600 (GeminiLake)", .is_discrete = false },
.{ .id = 0x5902, .name = "Intel(R) KabyLake-S GT1 (HD Graphics 610)", .is_discrete = false },
.{ .id = 0x5906, .name = "Intel(R) KabyLake-U GT1 (HD Graphics 610)", .is_discrete = false },
.{ .id = 0x590a, .name = "Intel(R) KabyLake GT1 (HD Graphics)", .is_discrete = false },
.{ .id = 0x5908, .name = "Intel(R) KabyLake GT1 (HD Graphics)", .is_discrete = false },
.{ .id = 0x590b, .name = "Intel(R) KabyLake GT1 (HD Graphics 610)", .is_discrete = false },
.{ .id = 0x590e, .name = "Intel(R) KabyLake GT1 (HD Graphics)", .is_discrete = false },
.{ .id = 0x5913, .name = "Intel(R) KabyLake GT2 (HD Graphics)", .is_discrete = false },
.{ .id = 0x5915, .name = "Intel(R) KabyLake GT2 (HD Graphics)", .is_discrete = false },
.{ .id = 0x5917, .name = "Intel(R) KabyLake-R GT2 (UHD Graphics 620)", .is_discrete = false },
.{ .id = 0x5912, .name = "Intel(R) KabyLake-S GT2 (HD Graphics 630)", .is_discrete = false },
.{ .id = 0x5916, .name = "Intel(R) KabyLake-U GT2 (HD Graphics 620)", .is_discrete = false },
.{ .id = 0x591a, .name = "Intel(R) KabyLake GT2 (HD Graphics P630)", .is_discrete = false },
.{ .id = 0x591b, .name = "Intel(R) KabyLake-H GT2 (HD Graphics 630)", .is_discrete = false },
.{ .id = 0x591d, .name = "Intel(R) KabyLake-DT GT2 (HD Graphics P630)", .is_discrete = false },
.{ .id = 0x591e, .name = "Intel(R) KabyLake-Y GT2 (HD Graphics 615)", .is_discrete = false },
.{ .id = 0x5921, .name = "Intel(R) KabyLake GT2 (HD Graphics 620)", .is_discrete = false },
.{ .id = 0x5923, .name = "Intel(R) KabyLake GT2 (HD Graphics 635)", .is_discrete = false },
.{ .id = 0x5926, .name = "Intel(R) KabyLake-U GT3 (Iris(R) Plus Graphics 640)", .is_discrete = false },
.{ .id = 0x5927, .name = "Intel(R) KabyLake-U GT3 (Iris(R) Plus Graphics 650)", .is_discrete = false },
.{ .id = 0x593b, .name = "Intel(R) KabyLake GT2 (HD Graphics)", .is_discrete = false },
.{ .id = 0x5902, .name = "Intel(R) HD Graphics 610 (KabyLake-S GT1)", .is_discrete = false },
.{ .id = 0x5906, .name = "Intel(R) HD Graphics 610 (KabyLake-U GT1)", .is_discrete = false },
.{ .id = 0x590a, .name = "Intel(R) HD Graphics (KabyLake GT1)", .is_discrete = false },
.{ .id = 0x5908, .name = "Intel(R) HD Graphics (KabyLake GT1)", .is_discrete = false },
.{ .id = 0x590b, .name = "Intel(R) HD Graphics 610 (KabyLake GT1)", .is_discrete = false },
.{ .id = 0x590e, .name = "Intel(R) HD Graphics (KabyLake GT1)", .is_discrete = false },
.{ .id = 0x5913, .name = "Intel(R) HD Graphics (KabyLake GT2)", .is_discrete = false },
.{ .id = 0x5915, .name = "Intel(R) HD Graphics (KabyLake GT2)", .is_discrete = false },
.{ .id = 0x5917, .name = "Intel(R) UHD Graphics 620 (KabyLake-R GT2)", .is_discrete = false },
.{ .id = 0x5912, .name = "Intel(R) HD Graphics 630 (KabyLake-S GT2)", .is_discrete = false },
.{ .id = 0x5916, .name = "Intel(R) HD Graphics 620 (KabyLake-U GT2)", .is_discrete = false },
.{ .id = 0x591a, .name = "Intel(R) HD Graphics P630 (KabyLake GT2)", .is_discrete = false },
.{ .id = 0x591b, .name = "Intel(R) HD Graphics 630 (KabyLake-H GT2)", .is_discrete = false },
.{ .id = 0x591d, .name = "Intel(R) HD Graphics P630 (KabyLake-DT GT2)", .is_discrete = false },
.{ .id = 0x591e, .name = "Intel(R) HD Graphics 615 (KabyLake-Y GT2)", .is_discrete = false },
.{ .id = 0x5921, .name = "Intel(R) HD Graphics 620 (KabyLake GT2)", .is_discrete = false },
.{ .id = 0x5923, .name = "Intel(R) HD Graphics 635 (KabyLake GT2)", .is_discrete = false },
.{ .id = 0x5926, .name = "Intel(R) Iris(R) Plus Graphics 640 (KabyLake-U GT3)", .is_discrete = false },
.{ .id = 0x5927, .name = "Intel(R) Iris(R) Plus Graphics 650 (KabyLake-U GT3)", .is_discrete = false },
.{ .id = 0x593b, .name = "Intel(R) HD Graphics (KabyLake GT2)", .is_discrete = false },
.{ .id = 0x591c, .name = "Intel(R) KabyLake-Y GT2 (UHD Graphics 615)", .is_discrete = false },
.{ .id = 0x87c0, .name = "Intel(R) AmberLake-Y GT2 (UHD Graphics 617)", .is_discrete = false },
.{ .id = 0x591c, .name = "Intel(R) UHD Graphics 615 (KabyLake-Y GT2)", .is_discrete = false },
.{ .id = 0x87c0, .name = "Intel(R) UHD Graphics 617 (AmberLake-Y GT2)", .is_discrete = false },
.{ .id = 0x87ca, .name = "Intel(R) AmberLake-Y GT2 (UHD Graphics 617)", .is_discrete = false },
.{ .id = 0x87ca, .name = "Intel(R) UHD Graphics 617 (AmberLake-Y GT2)", .is_discrete = false },
.{ .id = 0x3e90, .name = "Intel(R) CoffeeLake-S GT1 (UHD Graphics 610)", .is_discrete = false },
.{ .id = 0x3e93, .name = "Intel(R) CoffeeLake-S GT1 (UHD Graphics 610)", .is_discrete = false },
.{ .id = 0x3e99, .name = "Intel(R) CoffeeLake-S GT1 (UHD Graphics 610)", .is_discrete = false },
.{ .id = 0x3e9c, .name = "Intel(R) CoffeeLake-S GT1 (UHD Graphics 610)", .is_discrete = false },
.{ .id = 0x3e91, .name = "Intel(R) CoffeeLake-S GT2 (UHD Graphics 630)", .is_discrete = false },
.{ .id = 0x3e92, .name = "Intel(R) CoffeeLake-S GT2 (UHD Graphics 630)", .is_discrete = false },
.{ .id = 0x3e96, .name = "Intel(R) CoffeeLake-S GT2 (UHD Graphics P630)", .is_discrete = false },
.{ .id = 0x3e98, .name = "Intel(R) CoffeeLake-S GT2 (UHD Graphics 630)", .is_discrete = false },
.{ .id = 0x3e9a, .name = "Intel(R) CoffeeLake-S GT2 (UHD Graphics P630)", .is_discrete = false },
.{ .id = 0x3e9b, .name = "Intel(R) CoffeeLake-H GT2 (UHD Graphics 630)", .is_discrete = false },
.{ .id = 0x3e94, .name = "Intel(R) CoffeeLake-S GT2 (UHD Graphics P630)", .is_discrete = false },
.{ .id = 0x3ea9, .name = "Intel(R) CoffeeLake-U GT2 (UHD Graphics 620)", .is_discrete = false },
.{ .id = 0x3ea5, .name = "Intel(R) CoffeeLake-U GT3e (Iris(R) Plus Graphics 655)", .is_discrete = false },
.{ .id = 0x3ea6, .name = "Intel(R) CoffeeLake-U GT3 (Iris(R) Plus Graphics 645)", .is_discrete = false },
.{ .id = 0x3ea7, .name = "Intel(R) CoffeeLake-U (HD Graphics)", .is_discrete = false },
.{ .id = 0x3ea8, .name = "Intel(R) CoffeeLake-U GT3 (Iris(R) Plus Graphics 655)", .is_discrete = false },
.{ .id = 0x3e90, .name = "Intel(R) UHD Graphics 610 (CoffeeLake-S GT1)", .is_discrete = false },
.{ .id = 0x3e93, .name = "Intel(R) UHD Graphics 610 (CoffeeLake-S GT1)", .is_discrete = false },
.{ .id = 0x3e99, .name = "Intel(R) UHD Graphics 610 (CoffeeLake-S GT1)", .is_discrete = false },
.{ .id = 0x3e9c, .name = "Intel(R) UHD Graphics 610 (CoffeeLake-S GT1)", .is_discrete = false },
.{ .id = 0x3e91, .name = "Intel(R) UHD Graphics 630 (CoffeeLake-S GT2)", .is_discrete = false },
.{ .id = 0x3e92, .name = "Intel(R) UHD Graphics 630 (CoffeeLake-S GT2)", .is_discrete = false },
.{ .id = 0x3e96, .name = "Intel(R) UHD Graphics P630 (CoffeeLake-S GT2)", .is_discrete = false },
.{ .id = 0x3e98, .name = "Intel(R) UHD Graphics 630 (CoffeeLake-S GT2)", .is_discrete = false },
.{ .id = 0x3e9a, .name = "Intel(R) UHD Graphics P630 (CoffeeLake-S GT2)", .is_discrete = false },
.{ .id = 0x3e9b, .name = "Intel(R) UHD Graphics 630 (CoffeeLake-H GT2)", .is_discrete = false },
.{ .id = 0x3e94, .name = "Intel(R) UHD Graphics P630 (CoffeeLake-S GT2)", .is_discrete = false },
.{ .id = 0x3ea9, .name = "Intel(R) UHD Graphics 620 (CoffeeLake-U GT2)", .is_discrete = false },
.{ .id = 0x3ea5, .name = "Intel(R) Iris(R) Plus Graphics 655 (CoffeeLake-U GT3e)", .is_discrete = false },
.{ .id = 0x3ea6, .name = "Intel(R) Iris(R) Plus Graphics 645 (CoffeeLake-U GT3)", .is_discrete = false },
.{ .id = 0x3ea7, .name = "Intel(R) HD Graphics (CoffeeLake-U)", .is_discrete = false },
.{ .id = 0x3ea8, .name = "Intel(R) Iris(R) Plus Graphics 655 (CoffeeLake-U GT3)", .is_discrete = false },
.{ .id = 0x3ea1, .name = "Intel(R) WhiskeyLake-U GT1 (UHD Graphics 610)", .is_discrete = false },
.{ .id = 0x3ea4, .name = "Intel(R) WhiskeyLake-U (UHD Graphics)", .is_discrete = false },
.{ .id = 0x3ea0, .name = "Intel(R) WhiskeyLake-U GT2 (UHD Graphics 620)", .is_discrete = false },
.{ .id = 0x3ea3, .name = "Intel(R) WhiskeyLake-U (UHD Graphics)", .is_discrete = false },
.{ .id = 0x3ea2, .name = "Intel(R) WhiskeyLake-U (UHD Graphics)", .is_discrete = false },
.{ .id = 0x3ea1, .name = "Intel(R) UHD Graphics 610 (WhiskeyLake-U GT1)", .is_discrete = false },
.{ .id = 0x3ea4, .name = "Intel(R) UHD Graphics (WhiskeyLake-U)", .is_discrete = false },
.{ .id = 0x3ea0, .name = "Intel(R) UHD Graphics 620 (WhiskeyLake-U GT2)", .is_discrete = false },
.{ .id = 0x3ea3, .name = "Intel(R) UHD Graphics (WhiskeyLake-U)", .is_discrete = false },
.{ .id = 0x3ea2, .name = "Intel(R) UHD Graphics (WhiskeyLake-U)", .is_discrete = false },
.{ .id = 0x9b21, .name = "Intel(R) CometLake-U GT2 (UHD Graphics 620)", .is_discrete = false },
.{ .id = 0x9ba0, .name = "Intel(R) CometLake GT1 (UHD Graphics)", .is_discrete = false },
.{ .id = 0x9ba2, .name = "Intel(R) CometLake GT1 (UHD Graphics)", .is_discrete = false },
.{ .id = 0x9ba4, .name = "Intel(R) CometLake-H GT1 (UHD Graphics 610)", .is_discrete = false },
.{ .id = 0x9ba5, .name = "Intel(R) CometLake GT1 (UHD Graphics 610)", .is_discrete = false },
.{ .id = 0x9ba8, .name = "Intel(R) CometLake-S GT1 (UHD Graphics 610)", .is_discrete = false },
.{ .id = 0x9baa, .name = "Intel(R) CometLake (UHD Graphics)", .is_discrete = false },
.{ .id = 0x9bab, .name = "Intel(R) CometLake (UHD Graphics)", .is_discrete = false },
.{ .id = 0x9bac, .name = "Intel(R) CometLake (UHD Graphics)", .is_discrete = false },
.{ .id = 0x9b41, .name = "Intel(R) CometLake-U GT2 (UHD Graphics)", .is_discrete = false },
.{ .id = 0x9bc0, .name = "Intel(R) CometLake GT2 (UHD Graphics)", .is_discrete = false },
.{ .id = 0x9bc2, .name = "Intel(R) CometLake GT2 (UHD Graphics)", .is_discrete = false },
.{ .id = 0x9bc4, .name = "Intel(R) CometLake-H GT2 (UHD Graphics)", .is_discrete = false },
.{ .id = 0x9bc5, .name = "Intel(R) CometLake-S GT2 (UHD Graphics 630)", .is_discrete = false },
.{ .id = 0x9bc6, .name = "Intel(R) CometLake-S GT2 (UHD Graphics P630)", .is_discrete = false },
.{ .id = 0x9bc8, .name = "Intel(R) CometLake-S GT2 (UHD Graphics 630)", .is_discrete = false },
.{ .id = 0x9bca, .name = "Intel(R) CometLake (UHD Graphics)", .is_discrete = false },
.{ .id = 0x9bcb, .name = "Intel(R) CometLake (UHD Graphics)", .is_discrete = false },
.{ .id = 0x9bcc, .name = "Intel(R) CometLake (UHD Graphics)", .is_discrete = false },
.{ .id = 0x9be6, .name = "Intel(R) CometLake-S GT2 (UHD Graphics P630)", .is_discrete = false },
.{ .id = 0x9bf6, .name = "Intel(R) CoffeeLake-S GT2 (UHD Graphics P630)", .is_discrete = false },
.{ .id = 0x9b21, .name = "Intel(R) UHD Graphics 620 (CometLake-U GT2)", .is_discrete = false },
.{ .id = 0x9ba0, .name = "Intel(R) UHD Graphics (CometLake GT1)", .is_discrete = false },
.{ .id = 0x9ba2, .name = "Intel(R) UHD Graphics (CometLake GT1)", .is_discrete = false },
.{ .id = 0x9ba4, .name = "Intel(R) UHD Graphics 610 (CometLake-H GT1)", .is_discrete = false },
.{ .id = 0x9ba5, .name = "Intel(R) UHD Graphics 610 (CometLake GT1)", .is_discrete = false },
.{ .id = 0x9ba8, .name = "Intel(R) UHD Graphics 610 (CometLake-S GT1)", .is_discrete = false },
.{ .id = 0x9baa, .name = "Intel(R) UHD Graphics (CometLake)", .is_discrete = false },
.{ .id = 0x9bab, .name = "Intel(R) UHD Graphics (CometLake)", .is_discrete = false },
.{ .id = 0x9bac, .name = "Intel(R) UHD Graphics (CometLake)", .is_discrete = false },
.{ .id = 0x9b41, .name = "Intel(R) UHD Graphics (CometLake-U GT2)", .is_discrete = false },
.{ .id = 0x9bc0, .name = "Intel(R) UHD Graphics (CometLake GT2)", .is_discrete = false },
.{ .id = 0x9bc2, .name = "Intel(R) UHD Graphics (CometLake GT2)", .is_discrete = false },
.{ .id = 0x9bc4, .name = "Intel(R) UHD Graphics (CometLake-H GT2)", .is_discrete = false },
.{ .id = 0x9bc5, .name = "Intel(R) UHD Graphics 630 (CometLake-S GT2)", .is_discrete = false },
.{ .id = 0x9bc6, .name = "Intel(R) UHD Graphics P630 (CometLake-S GT2)", .is_discrete = false },
.{ .id = 0x9bc8, .name = "Intel(R) UHD Graphics 630 (CometLake-S GT2)", .is_discrete = false },
.{ .id = 0x9bca, .name = "Intel(R) UHD Graphics (CometLake)", .is_discrete = false },
.{ .id = 0x9bcb, .name = "Intel(R) UHD Graphics (CometLake)", .is_discrete = false },
.{ .id = 0x9bcc, .name = "Intel(R) UHD Graphics (CometLake)", .is_discrete = false },
.{ .id = 0x9be6, .name = "Intel(R) UHD Graphics P630 (CometLake-S GT2)", .is_discrete = false },
.{ .id = 0x9bf6, .name = "Intel(R) UHD Graphics P630 (CoffeeLake-S GT2)", .is_discrete = false },
.{ .id = 0x8a50, .name = "Intel(R) IceLake (HD Graphics)", .is_discrete = false },
.{ .id = 0x8a51, .name = "Intel(R) IceLake GT2 (Iris(R) Plus Graphics G7)", .is_discrete = false },
.{ .id = 0x8a52, .name = "Intel(R) IceLake GT2 (Iris(R) Plus Graphics G7)", .is_discrete = false },
.{ .id = 0x8a53, .name = "Intel(R) IceLake GT2 (Iris(R) Plus Graphics G7)", .is_discrete = false },
.{ .id = 0x8a54, .name = "Intel(R) IceLake GT2 (Iris(R) Plus Graphics)", .is_discrete = false },
.{ .id = 0x8a56, .name = "Intel(R) IceLake GT1 (UHD Graphics G1)", .is_discrete = false },
.{ .id = 0x8a57, .name = "Intel(R) IceLake (HD Graphics)", .is_discrete = false },
.{ .id = 0x8a58, .name = "Intel(R) IceLake-Y GT1 (UHD Graphics G1)", .is_discrete = false },
.{ .id = 0x8a59, .name = "Intel(R) IceLake (HD Graphics)", .is_discrete = false },
.{ .id = 0x8a5a, .name = "Intel(R) IceLake GT2 (Iris(R) Plus Graphics G4)", .is_discrete = false },
.{ .id = 0x8a5b, .name = "Intel(R) IceLake (HD Graphics)", .is_discrete = false },
.{ .id = 0x8a5c, .name = "Intel(R) IceLake GT2 (Iris(R) Plus Graphics G4)", .is_discrete = false },
.{ .id = 0x8a5d, .name = "Intel(R) IceLake (HD Graphics)", .is_discrete = false },
.{ .id = 0x8a71, .name = "Intel(R) IceLake (HD Graphics)", .is_discrete = false },
.{ .id = 0x8a50, .name = "Intel(R) HD Graphics (IceLake)", .is_discrete = false },
.{ .id = 0x8a51, .name = "Intel(R) Iris(R) Plus Graphics G7 (IceLake GT2)", .is_discrete = false },
.{ .id = 0x8a52, .name = "Intel(R) Iris(R) Plus Graphics G7 (IceLake GT2)", .is_discrete = false },
.{ .id = 0x8a53, .name = "Intel(R) Iris(R) Plus Graphics G7 (IceLake GT2)", .is_discrete = false },
.{ .id = 0x8a54, .name = "Intel(R) Iris(R) Plus Graphics (IceLake GT2)", .is_discrete = false },
.{ .id = 0x8a56, .name = "Intel(R) UHD Graphics G1 (IceLake GT1)", .is_discrete = false },
.{ .id = 0x8a57, .name = "Intel(R) HD Graphics (IceLake)", .is_discrete = false },
.{ .id = 0x8a58, .name = "Intel(R) UHD Graphics G1 (IceLake-Y GT1)", .is_discrete = false },
.{ .id = 0x8a59, .name = "Intel(R) HD Graphics (IceLake)", .is_discrete = false },
.{ .id = 0x8a5a, .name = "Intel(R) Iris(R) Plus Graphics G4 (IceLake GT2)", .is_discrete = false },
.{ .id = 0x8a5b, .name = "Intel(R) HD Graphics (IceLake)", .is_discrete = false },
.{ .id = 0x8a5c, .name = "Intel(R) Iris(R) Plus Graphics G4 (IceLake GT2)", .is_discrete = false },
.{ .id = 0x8a5d, .name = "Intel(R) HD Graphics (IceLake)", .is_discrete = false },
.{ .id = 0x8a71, .name = "Intel(R) HD Graphics (IceLake)", .is_discrete = false },
.{ .id = 0x4541, .name = "Intel(R) ElkhartLake (UHD Graphics)", .is_discrete = false },
.{ .id = 0x4551, .name = "Intel(R) ElkhartLake (UHD Graphics)", .is_discrete = false },
.{ .id = 0x4555, .name = "Intel(R) ElkhartLake (UHD Graphics Gen11 16EU)", .is_discrete = false },
.{ .id = 0x4557, .name = "Intel(R) ElkhartLake (UHD Graphics)", .is_discrete = false },
.{ .id = 0x4570, .name = "Intel(R) ElkhartLake (UHD Graphics)", .is_discrete = false },
.{ .id = 0x4571, .name = "Intel(R) ElkhartLake (UHD Graphics Gen11 32EU)", .is_discrete = false },
.{ .id = 0x4e51, .name = "Intel(R) JasperLake (UHD Graphics)", .is_discrete = false },
.{ .id = 0x4e55, .name = "Intel(R) JasperLake (UHD Graphics)", .is_discrete = false },
.{ .id = 0x4e57, .name = "Intel(R) JasperLake (UHD Graphics)", .is_discrete = false },
.{ .id = 0x4e61, .name = "Intel(R) JasperLake (UHD Graphics)", .is_discrete = false },
.{ .id = 0x4e71, .name = "Intel(R) JasperLake (UHD Graphics)", .is_discrete = false },
.{ .id = 0x4541, .name = "Intel(R) UHD Graphics (ElkhartLake)", .is_discrete = false },
.{ .id = 0x4551, .name = "Intel(R) UHD Graphics (ElkhartLake)", .is_discrete = false },
.{ .id = 0x4555, .name = "Intel(R) UHD Graphics Gen11 16EU (ElkhartLake)", .is_discrete = false },
.{ .id = 0x4557, .name = "Intel(R) UHD Graphics (ElkhartLake)", .is_discrete = false },
.{ .id = 0x4570, .name = "Intel(R) UHD Graphics (ElkhartLake)", .is_discrete = false },
.{ .id = 0x4571, .name = "Intel(R) UHD Graphics Gen11 32EU (ElkhartLake)", .is_discrete = false },
.{ .id = 0x4e51, .name = "Intel(R) UHD Graphics (JasperLake)", .is_discrete = false },
.{ .id = 0x4e55, .name = "Intel(R) UHD Graphics (JasperLake)", .is_discrete = false },
.{ .id = 0x4e57, .name = "Intel(R) UHD Graphics (JasperLake)", .is_discrete = false },
.{ .id = 0x4e61, .name = "Intel(R) UHD Graphics (JasperLake)", .is_discrete = false },
.{ .id = 0x4e71, .name = "Intel(R) UHD Graphics (JasperLake)", .is_discrete = false },
.{ .id = 0x4c8a, .name = "Intel(R) RocketLake-S GT1 (UHD Graphics 750)", .is_discrete = false },
.{ .id = 0x4c8b, .name = "Intel(R) RocketLake-S GT1 (UHD Graphics 730)", .is_discrete = false },
.{ .id = 0x4c8c, .name = "Intel(R) RocketLake-S (Graphics)", .is_discrete = false },
.{ .id = 0x4c90, .name = "Intel(R) RocketLake-S GT1 (UHD Graphics P750)", .is_discrete = false },
.{ .id = 0x4c9a, .name = "Intel(R) RocketLake-S (UHD Graphics)", .is_discrete = false },
.{ .id = 0x4c8a, .name = "Intel(R) UHD Graphics 750 (RocketLake-S GT1)", .is_discrete = false },
.{ .id = 0x4c8b, .name = "Intel(R) UHD Graphics 730 (RocketLake-S GT1)", .is_discrete = false },
.{ .id = 0x4c8c, .name = "Intel(R) Graphics (RocketLake-S)", .is_discrete = false },
.{ .id = 0x4c90, .name = "Intel(R) UHD Graphics P750 (RocketLake-S GT1)", .is_discrete = false },
.{ .id = 0x4c9a, .name = "Intel(R) UHD Graphics (RocketLake-S)", .is_discrete = false },
.{ .id = 0x4680, .name = "Intel(R) AlderLake-S GT1 (UHD Graphics 770)", .is_discrete = false },
.{ .id = 0x4682, .name = "Intel(R) AlderLake-S GT1 (UHD Graphics 730)", .is_discrete = false },
.{ .id = 0x4688, .name = "Intel(R) AlderLake-HX GT1 (UHD Graphics 770)", .is_discrete = false },
.{ .id = 0x468a, .name = "Intel(R) AlderLake-S (UHD Graphics)", .is_discrete = false },
.{ .id = 0x468b, .name = "Intel(R) AlderLake-S (UHD Graphics)", .is_discrete = false },
.{ .id = 0x4690, .name = "Intel(R) AlderLake-S GT1 (UHD Graphics 770)", .is_discrete = false },
.{ .id = 0x4692, .name = "Intel(R) AlderLake-S GT1 (UHD Graphics 730)", .is_discrete = false },
.{ .id = 0x4693, .name = "Intel(R) AlderLake-S GT1 (UHD Graphics 710)", .is_discrete = false },
.{ .id = 0x4680, .name = "Intel(R) UHD Graphics 770 (AlderLake-S GT1)", .is_discrete = false },
.{ .id = 0x4682, .name = "Intel(R) UHD Graphics 730 (AlderLake-S GT1)", .is_discrete = false },
.{ .id = 0x4688, .name = "Intel(R) UHD Graphics 770 (AlderLake-HX GT1)", .is_discrete = false },
.{ .id = 0x468a, .name = "Intel(R) UHD Graphics (AlderLake-S)", .is_discrete = false },
.{ .id = 0x468b, .name = "Intel(R) UHD Graphics (AlderLake-S)", .is_discrete = false },
.{ .id = 0x4690, .name = "Intel(R) UHD Graphics 770 (AlderLake-S GT1)", .is_discrete = false },
.{ .id = 0x4692, .name = "Intel(R) UHD Graphics 730 (AlderLake-S GT1)", .is_discrete = false },
.{ .id = 0x4693, .name = "Intel(R) UHD Graphics 710 (AlderLake-S GT1)", .is_discrete = false },
.{ .id = 0x4626, .name = "Intel(R) AlderLake-P (Integrated Graphics Controller)", .is_discrete = false },
.{ .id = 0x4628, .name = "Intel(R) AlderLake-UP3 GT2 (UHD Graphics)", .is_discrete = false },
.{ .id = 0x462a, .name = "Intel(R) AlderLake-P (UHD Graphics)", .is_discrete = false },
.{ .id = 0x46a0, .name = "Intel(R) AlderLake-P GT2 (Graphics)", .is_discrete = false },
.{ .id = 0x46a1, .name = "Intel(R) AlderLake-P (UHD Graphics)", .is_discrete = false },
.{ .id = 0x46a2, .name = "Intel(R) AlderLake-P (Graphics)", .is_discrete = false },
.{ .id = 0x46a3, .name = "Intel(R) AlderLake-P GT1 (UHD Graphics)", .is_discrete = false },
.{ .id = 0x46a6, .name = "Intel(R) AlderLake-P GT2 (Iris(R) Xe Graphics)", .is_discrete = false },
.{ .id = 0x46a8, .name = "Intel(R) AlderLake-UP3 GT2 (Iris(R) Xe Graphics)", .is_discrete = false },
.{ .id = 0x46aa, .name = "Intel(R) AlderLake-UP4 GT2 (Iris(R) Xe Graphics)", .is_discrete = false },
.{ .id = 0x46b0, .name = "Intel(R) AlderLake-P (Iris(R) Xe Graphics)", .is_discrete = false },
.{ .id = 0x46b1, .name = "Intel(R) AlderLake-P (Iris(R) Xe Graphics)", .is_discrete = false },
.{ .id = 0x46b2, .name = "Intel(R) AlderLake-P (Graphics)", .is_discrete = false },
.{ .id = 0x46b3, .name = "Intel(R) AlderLake-UP3 GT1 (UHD Graphics)", .is_discrete = false },
.{ .id = 0x46c0, .name = "Intel(R) AlderLake-M GT1 (Graphics)", .is_discrete = false },
.{ .id = 0x46c1, .name = "Intel(R) AlderLake-M (Iris(R) Xe Graphics)", .is_discrete = false },
.{ .id = 0x46c2, .name = "Intel(R) AlderLake-M (Graphics)", .is_discrete = false },
.{ .id = 0x46c3, .name = "Intel(R) AlderLake-UP4 GT1 (UHD Graphics)", .is_discrete = false },
.{ .id = 0x4626, .name = "Intel(R) Integrated Graphics Controller (AlderLake-P)", .is_discrete = false },
.{ .id = 0x4628, .name = "Intel(R) UHD Graphics (AlderLake-UP3 GT2)", .is_discrete = false },
.{ .id = 0x462a, .name = "Intel(R) UHD Graphics (AlderLake-P)", .is_discrete = false },
.{ .id = 0x46a0, .name = "Intel(R) Graphics (AlderLake-P GT2)", .is_discrete = false },
.{ .id = 0x46a1, .name = "Intel(R) UHD Graphics (AlderLake-P)", .is_discrete = false },
.{ .id = 0x46a2, .name = "Intel(R) Graphics (AlderLake-P)", .is_discrete = false },
.{ .id = 0x46a3, .name = "Intel(R) UHD Graphics (AlderLake-P GT1)", .is_discrete = false },
.{ .id = 0x46a6, .name = "Intel(R) Iris(R) Xe Graphics (AlderLake-P GT2)", .is_discrete = false },
.{ .id = 0x46a8, .name = "Intel(R) Iris(R) Xe Graphics (AlderLake-UP3 GT2)", .is_discrete = false },
.{ .id = 0x46aa, .name = "Intel(R) Iris(R) Xe Graphics (AlderLake-UP4 GT2)", .is_discrete = false },
.{ .id = 0x46b0, .name = "Intel(R) Iris(R) Xe Graphics (AlderLake-P)", .is_discrete = false },
.{ .id = 0x46b1, .name = "Intel(R) Iris(R) Xe Graphics (AlderLake-P)", .is_discrete = false },
.{ .id = 0x46b2, .name = "Intel(R) Graphics (AlderLake-P)", .is_discrete = false },
.{ .id = 0x46b3, .name = "Intel(R) UHD Graphics (AlderLake-UP3 GT1)", .is_discrete = false },
.{ .id = 0x46c0, .name = "Intel(R) Graphics (AlderLake-M GT1)", .is_discrete = false },
.{ .id = 0x46c1, .name = "Intel(R) Iris(R) Xe Graphics (AlderLake-M)", .is_discrete = false },
.{ .id = 0x46c2, .name = "Intel(R) Graphics (AlderLake-M)", .is_discrete = false },
.{ .id = 0x46c3, .name = "Intel(R) UHD Graphics (AlderLake-UP4 GT1)", .is_discrete = false },
.{ .id = 0x46d0, .name = "Intel(R) AlderLake-N (UHD Graphics)", .is_discrete = false },
.{ .id = 0x46d1, .name = "Intel(R) AlderLake-N (UHD Graphics)", .is_discrete = false },
.{ .id = 0x46d2, .name = "Intel(R) AlderLake-N (UHD Graphics)", .is_discrete = false },
.{ .id = 0x46d3, .name = "Intel(R) AlderLake-N (Intel Graphics)", .is_discrete = false },
.{ .id = 0x46d4, .name = "Intel(R) AlderLake-N (Intel Graphics)", .is_discrete = false },
.{ .id = 0x46d0, .name = "Intel(R) UHD Graphics (AlderLake-N)", .is_discrete = false },
.{ .id = 0x46d1, .name = "Intel(R) UHD Graphics (AlderLake-N)", .is_discrete = false },
.{ .id = 0x46d2, .name = "Intel(R) UHD Graphics (AlderLake-N)", .is_discrete = false },
.{ .id = 0x46d3, .name = "Intel(R) Intel Graphics (AlderLake-N)", .is_discrete = false },
.{ .id = 0x46d4, .name = "Intel(R) Intel Graphics (AlderLake-N)", .is_discrete = false },
.{ .id = 0x9a40, .name = "Intel(R) TigerLake-UP4 GT2 (Iris(R) Xe Graphics)", .is_discrete = false },
.{ .id = 0x9a49, .name = "Intel(R) TigerLake-LP GT2 (Iris(R) Xe Graphics)", .is_discrete = false },
.{ .id = 0x9a59, .name = "Intel(R) TigerLake (Graphics)", .is_discrete = false },
.{ .id = 0x9a60, .name = "Intel(R) TigerLake-H GT1 (UHD Graphics)", .is_discrete = false },
.{ .id = 0x9a68, .name = "Intel(R) TigerLake-H GT1 (UHD Graphics)", .is_discrete = false },
.{ .id = 0x9a70, .name = "Intel(R) TigerLake-H GT1 (UHD Graphics)", .is_discrete = false },
.{ .id = 0x9a78, .name = "Intel(R) TigerLake-LP GT2 (UHD Graphics G4)", .is_discrete = false },
.{ .id = 0x9ac0, .name = "Intel(R) TigerLake (UHD Graphics)", .is_discrete = false },
.{ .id = 0x9ac9, .name = "Intel(R) TigerLake (UHD Graphics)", .is_discrete = false },
.{ .id = 0x9ad9, .name = "Intel(R) TigerLake (UHD Graphics)", .is_discrete = false },
.{ .id = 0x9af8, .name = "Intel(R) TigerLake (UHD Graphics)", .is_discrete = false },
.{ .id = 0x9a40, .name = "Intel(R) Iris(R) Xe Graphics (TigerLake-UP4 GT2)", .is_discrete = false },
.{ .id = 0x9a49, .name = "Intel(R) Iris(R) Xe Graphics (TigerLake-LP GT2)", .is_discrete = false },
.{ .id = 0x9a59, .name = "Intel(R) Graphics (TigerLake)", .is_discrete = false },
.{ .id = 0x9a60, .name = "Intel(R) UHD Graphics (TigerLake-H GT1)", .is_discrete = false },
.{ .id = 0x9a68, .name = "Intel(R) UHD Graphics (TigerLake-H GT1)", .is_discrete = false },
.{ .id = 0x9a70, .name = "Intel(R) UHD Graphics (TigerLake-H GT1)", .is_discrete = false },
.{ .id = 0x9a78, .name = "Intel(R) UHD Graphics G4 (TigerLake-LP GT2)", .is_discrete = false },
.{ .id = 0x9ac0, .name = "Intel(R) UHD Graphics (TigerLake)", .is_discrete = false },
.{ .id = 0x9ac9, .name = "Intel(R) UHD Graphics (TigerLake)", .is_discrete = false },
.{ .id = 0x9ad9, .name = "Intel(R) UHD Graphics (TigerLake)", .is_discrete = false },
.{ .id = 0x9af8, .name = "Intel(R) UHD Graphics (TigerLake)", .is_discrete = false },
.{ .id = 0xa780, .name = "Intel(R) RaptorLake-S GT1 (UHD Graphics 770)", .is_discrete = false },
.{ .id = 0xa781, .name = "Intel(R) RaptorLake-S (UHD Graphics)", .is_discrete = false },
.{ .id = 0xa782, .name = "Intel(R) RaptorLake-S (UHD Graphics)", .is_discrete = false },
.{ .id = 0xa783, .name = "Intel(R) RaptorLake-S (UHD Graphics)", .is_discrete = false },
.{ .id = 0xa788, .name = "Intel(R) RaptorLake-S (UHD Graphics)", .is_discrete = false },
.{ .id = 0xa789, .name = "Intel(R) RaptorLake-S (UHD Graphics)", .is_discrete = false },
.{ .id = 0xa78a, .name = "Intel(R) RaptorLake-S (UHD Graphics)", .is_discrete = false },
.{ .id = 0xa78b, .name = "Intel(R) RaptorLake-S (UHD Graphics)", .is_discrete = false },
.{ .id = 0xa780, .name = "Intel(R) UHD Graphics 770 (RaptorLake-S GT1)", .is_discrete = false },
.{ .id = 0xa781, .name = "Intel(R) UHD Graphics (RaptorLake-S)", .is_discrete = false },
.{ .id = 0xa782, .name = "Intel(R) UHD Graphics (RaptorLake-S)", .is_discrete = false },
.{ .id = 0xa783, .name = "Intel(R) UHD Graphics (RaptorLake-S)", .is_discrete = false },
.{ .id = 0xa788, .name = "Intel(R) UHD Graphics (RaptorLake-S)", .is_discrete = false },
.{ .id = 0xa789, .name = "Intel(R) UHD Graphics (RaptorLake-S)", .is_discrete = false },
.{ .id = 0xa78a, .name = "Intel(R) UHD Graphics (RaptorLake-S)", .is_discrete = false },
.{ .id = 0xa78b, .name = "Intel(R) UHD Graphics (RaptorLake-S)", .is_discrete = false },
.{ .id = 0xa720, .name = "Intel(R) RaptorLake-P (UHD Graphics)", .is_discrete = false },
.{ .id = 0xa721, .name = "Intel(R) RaptorLake-P (UHD Graphics)", .is_discrete = false },
.{ .id = 0xa7a0, .name = "Intel(R) RaptorLake-P (Iris(R) Xe Graphics)", .is_discrete = false },
.{ .id = 0xa7a1, .name = "Intel(R) RaptorLake-P (Iris(R) Xe Graphics)", .is_discrete = false },
.{ .id = 0xa7a8, .name = "Intel(R) RaptorLake-P (UHD Graphics)", .is_discrete = false },
.{ .id = 0xa7a9, .name = "Intel(R) RaptorLake-P (UHD Graphics)", .is_discrete = false },
.{ .id = 0xa7aa, .name = "Intel(R) RaptorLake-P (Intel Graphics)", .is_discrete = false },
.{ .id = 0xa7ab, .name = "Intel(R) RaptorLake-P (Intel Graphics)", .is_discrete = false },
.{ .id = 0xa7ac, .name = "Intel(R) RaptorLake-U (Intel Graphics)", .is_discrete = false },
.{ .id = 0xa7ad, .name = "Intel(R) RaptorLake-U (Intel Graphics)", .is_discrete = false },
.{ .id = 0xa720, .name = "Intel(R) UHD Graphics (RaptorLake-P)", .is_discrete = false },
.{ .id = 0xa721, .name = "Intel(R) UHD Graphics (RaptorLake-P)", .is_discrete = false },
.{ .id = 0xa7a0, .name = "Intel(R) Iris(R) Xe Graphics (RaptorLake-P)", .is_discrete = false },
.{ .id = 0xa7a1, .name = "Intel(R) Iris(R) Xe Graphics (RaptorLake-P)", .is_discrete = false },
.{ .id = 0xa7a8, .name = "Intel(R) UHD Graphics (RaptorLake-P)", .is_discrete = false },
.{ .id = 0xa7a9, .name = "Intel(R) UHD Graphics (RaptorLake-P)", .is_discrete = false },
.{ .id = 0xa7aa, .name = "Intel(R) Intel Graphics (RaptorLake-P)", .is_discrete = false },
.{ .id = 0xa7ab, .name = "Intel(R) Intel Graphics (RaptorLake-P)", .is_discrete = false },
.{ .id = 0xa7ac, .name = "Intel(R) Intel Graphics (RaptorLake-U)", .is_discrete = false },
.{ .id = 0xa7ad, .name = "Intel(R) Intel Graphics (RaptorLake-U)", .is_discrete = false },
.{ .id = 0x4905, .name = "Intel(R) DG1 (Iris(R) Xe MAX Graphics)", .is_discrete = true },
.{ .id = 0x4906, .name = "Intel(R) DG1 (Iris(R) Xe Pod)", .is_discrete = true },
.{ .id = 0x4907, .name = "Intel(R) SG1 (Server GPU SG-18M)", .is_discrete = true },
.{ .id = 0x4908, .name = "Intel(R) DG1 (Iris(R) Xe Graphics)", .is_discrete = true },
.{ .id = 0x4909, .name = "Intel(R) DG1 (Iris(R) Xe MAX 100)", .is_discrete = true },
.{ .id = 0x4905, .name = "Intel(R) Iris(R) Xe MAX Graphics (DG1)", .is_discrete = true },
.{ .id = 0x4906, .name = "Intel(R) Iris(R) Xe Pod (DG1)", .is_discrete = true },
.{ .id = 0x4907, .name = "Intel(R) Server GPU SG-18M (SG1)", .is_discrete = true },
.{ .id = 0x4908, .name = "Intel(R) Iris(R) Xe Graphics (DG1)", .is_discrete = true },
.{ .id = 0x4909, .name = "Intel(R) Iris(R) Xe MAX 100 (DG1)", .is_discrete = true },
.{ .id = 0x5690, .name = "Intel(R) DG2 (Arc(tm) A770M Graphics)", .is_discrete = true },
.{ .id = 0x5691, .name = "Intel(R) DG2 (Arc(tm) A730M Graphics)", .is_discrete = true },
.{ .id = 0x5692, .name = "Intel(R) DG2 (Arc(tm) A550M Graphics)", .is_discrete = true },
.{ .id = 0x5693, .name = "Intel(R) DG2 (Arc(tm) A370M Graphics)", .is_discrete = true },
.{ .id = 0x5694, .name = "Intel(R) DG2 (Arc(tm) A350M Graphics)", .is_discrete = true },
.{ .id = 0x5695, .name = "Intel(R) DG2 (Iris(R) Xe MAX A200M Graphics)", .is_discrete = true },
.{ .id = 0x5696, .name = "Intel(R) DG2 (Arc(tm) A570M Graphics)", .is_discrete = true },
.{ .id = 0x5697, .name = "Intel(R) DG2 (Arc(tm) A530M Graphics)", .is_discrete = true },
.{ .id = 0x56a0, .name = "Intel(R) DG2 (Arc(tm) A770 Graphics)", .is_discrete = true },
.{ .id = 0x56a1, .name = "Intel(R) DG2 (Arc(tm) A750 Graphics)", .is_discrete = true },
.{ .id = 0x56a2, .name = "Intel(R) DG2 (Arc(tm) A580 Graphics)", .is_discrete = true },
.{ .id = 0x56a3, .name = "Intel(R) DG2 (Arc(tm) Xe Graphics)", .is_discrete = true },
.{ .id = 0x56a4, .name = "Intel(R) DG2 (Arc(tm) Xe Graphics)", .is_discrete = true },
.{ .id = 0x56a5, .name = "Intel(R) DG2 (Arc(tm) A380 Graphics)", .is_discrete = true },
.{ .id = 0x56a6, .name = "Intel(R) DG2 (Arc(tm) A310 Graphics)", .is_discrete = true },
.{ .id = 0x56b0, .name = "Intel(R) DG2 (Arc(tm) Pro A30M Graphics)", .is_discrete = true },
.{ .id = 0x56b1, .name = "Intel(R) DG2 (Arc(tm) Pro A40/A50 Graphics)", .is_discrete = true },
.{ .id = 0x56b2, .name = "Intel(R) DG2 (Arc(tm) Pro A60M Graphics)", .is_discrete = true },
.{ .id = 0x56b3, .name = "Intel(R) DG2 (Arc(tm) Pro A60 Graphics)", .is_discrete = true },
.{ .id = 0x56ba, .name = "Intel(R) DG2 (Arc(tm) A380E Graphics)", .is_discrete = true },
.{ .id = 0x56bb, .name = "Intel(R) DG2 (Arc(tm) A310E Graphics)", .is_discrete = true },
.{ .id = 0x56bc, .name = "Intel(R) DG2 (Arc(tm) A370E Graphics)", .is_discrete = true },
.{ .id = 0x56bd, .name = "Intel(R) DG2 (Arc(tm) A350E Graphics)", .is_discrete = true },
.{ .id = 0x56be, .name = "Intel(R) DG2 (Arc(tm) A750E Graphics)", .is_discrete = true },
.{ .id = 0x56bf, .name = "Intel(R) DG2 (Arc(tm) A580E Graphics)", .is_discrete = true },
.{ .id = 0x56c0, .name = "Intel(R) ATS-M (Data Center GPU Flex 170)", .is_discrete = true },
.{ .id = 0x56c1, .name = "Intel(R) ATS-M (Data Center GPU Flex 140)", .is_discrete = true },
.{ .id = 0x56c2, .name = "Intel(R) ATS-M (Data Center GPU Flex 170V)", .is_discrete = true },
.{ .id = 0x5690, .name = "Intel(R) Arc(tm) A770M Graphics (DG2)", .is_discrete = true },
.{ .id = 0x5691, .name = "Intel(R) Arc(tm) A730M Graphics (DG2)", .is_discrete = true },
.{ .id = 0x5692, .name = "Intel(R) Arc(tm) A550M Graphics (DG2)", .is_discrete = true },
.{ .id = 0x5693, .name = "Intel(R) Arc(tm) A370M Graphics (DG2)", .is_discrete = true },
.{ .id = 0x5694, .name = "Intel(R) Arc(tm) A350M Graphics (DG2)", .is_discrete = true },
.{ .id = 0x5695, .name = "Intel(R) Iris(R) Xe MAX A200M Graphics (DG2)", .is_discrete = true },
.{ .id = 0x5696, .name = "Intel(R) Arc(tm) A570M Graphics (DG2)", .is_discrete = true },
.{ .id = 0x5697, .name = "Intel(R) Arc(tm) A530M Graphics (DG2)", .is_discrete = true },
.{ .id = 0x56a0, .name = "Intel(R) Arc(tm) A770 Graphics (DG2)", .is_discrete = true },
.{ .id = 0x56a1, .name = "Intel(R) Arc(tm) A750 Graphics (DG2)", .is_discrete = true },
.{ .id = 0x56a2, .name = "Intel(R) Arc(tm) A580 Graphics (DG2)", .is_discrete = true },
.{ .id = 0x56a3, .name = "Intel(R) Arc(tm) Xe Graphics (DG2)", .is_discrete = true },
.{ .id = 0x56a4, .name = "Intel(R) Arc(tm) Xe Graphics (DG2)", .is_discrete = true },
.{ .id = 0x56a5, .name = "Intel(R) Arc(tm) A380 Graphics (DG2)", .is_discrete = true },
.{ .id = 0x56a6, .name = "Intel(R) Arc(tm) A310 Graphics (DG2)", .is_discrete = true },
.{ .id = 0x56b0, .name = "Intel(R) Arc(tm) Pro A30M Graphics (DG2)", .is_discrete = true },
.{ .id = 0x56b1, .name = "Intel(R) Arc(tm) Pro A40/A50 Graphics (DG2)", .is_discrete = true },
.{ .id = 0x56b2, .name = "Intel(R) Arc(tm) Pro A60M Graphics (DG2)", .is_discrete = true },
.{ .id = 0x56b3, .name = "Intel(R) Arc(tm) Pro A60 Graphics (DG2)", .is_discrete = true },
.{ .id = 0x56ba, .name = "Intel(R) Arc(tm) A380E Graphics (DG2)", .is_discrete = true },
.{ .id = 0x56bb, .name = "Intel(R) Arc(tm) A310E Graphics (DG2)", .is_discrete = true },
.{ .id = 0x56bc, .name = "Intel(R) Arc(tm) A370E Graphics (DG2)", .is_discrete = true },
.{ .id = 0x56bd, .name = "Intel(R) Arc(tm) A350E Graphics (DG2)", .is_discrete = true },
.{ .id = 0x56be, .name = "Intel(R) Arc(tm) A750E Graphics (DG2)", .is_discrete = true },
.{ .id = 0x56bf, .name = "Intel(R) Arc(tm) A580E Graphics (DG2)", .is_discrete = true },
.{ .id = 0x56c0, .name = "Intel(R) Data Center GPU Flex 170 (ATS-M)", .is_discrete = true },
.{ .id = 0x56c1, .name = "Intel(R) Data Center GPU Flex 140 (ATS-M)", .is_discrete = true },
.{ .id = 0x56c2, .name = "Intel(R) Data Center GPU Flex 170V (ATS-M)", .is_discrete = true },
.{ .id = 0x6420, .name = "Intel(R) LunarLake (Intel Graphics)", .is_discrete = false },
.{ .id = 0x64a0, .name = "Intel(R) LunarLake (Arc(tm) Graphics 130V/140V)", .is_discrete = false },
.{ .id = 0x64b0, .name = "Intel(R) LunarLake (Intel Graphics)", .is_discrete = false },
.{ .id = 0x6420, .name = "Intel(R) Intel Graphics (LunarLake)", .is_discrete = false },
.{ .id = 0x64a0, .name = "Intel(R) Arc(tm) Graphics 130V/140V (LunarLake)", .is_discrete = false },
.{ .id = 0x64b0, .name = "Intel(R) Intel Graphics (LunarLake)", .is_discrete = false },
.{ .id = 0x7d40, .name = "Intel(R) MeteorLake-M (Intel Graphics)", .is_discrete = false },
.{ .id = 0x7d45, .name = "Intel(R) MeteorLake-P (Intel Graphics)", .is_discrete = false },
.{ .id = 0x7d55, .name = "Intel(R) MeteorLake-P (Intel Arc Graphics)", .is_discrete = false },
.{ .id = 0x7d60, .name = "Intel(R) MeteorLake-M (Intel Graphics)", .is_discrete = false },
.{ .id = 0x7dd5, .name = "Intel(R) MeteorLake-P (Intel Graphics)", .is_discrete = false },
.{ .id = 0x7d40, .name = "Intel(R) Intel Graphics (MeteorLake-M)", .is_discrete = false },
.{ .id = 0x7d45, .name = "Intel(R) Intel Graphics (MeteorLake-P)", .is_discrete = false },
.{ .id = 0x7d55, .name = "Intel(R) Intel Arc Graphics (MeteorLake-P)", .is_discrete = false },
.{ .id = 0x7d60, .name = "Intel(R) Intel Graphics (MeteorLake-M)", .is_discrete = false },
.{ .id = 0x7dd5, .name = "Intel(R) Intel Graphics (MeteorLake-P)", .is_discrete = false },
.{ .id = 0x7d41, .name = "Intel(R) ArrowLake-U (Intel Graphics)", .is_discrete = false },
.{ .id = 0x7d51, .name = "Intel(R) ArrowLake-P (Arc(tm) Pro 130T/140T Graphics)", .is_discrete = false },
.{ .id = 0x7d67, .name = "Intel(R) ArrowLake-S (Intel Graphics)", .is_discrete = false },
.{ .id = 0x7dd1, .name = "Intel(R) ArrowLake-P (Intel Graphics)", .is_discrete = false },
.{ .id = 0xb640, .name = "Intel(R) ArrowLake-H (Intel Graphics)", .is_discrete = false },
.{ .id = 0x7d41, .name = "Intel(R) Intel Graphics (ArrowLake-U)", .is_discrete = false },
.{ .id = 0x7d51, .name = "Intel(R) Arc(tm) Pro 130T/140T Graphics (ArrowLake-P)", .is_discrete = false },
.{ .id = 0x7d67, .name = "Intel(R) Intel Graphics (ArrowLake-S)", .is_discrete = false },
.{ .id = 0x7dd1, .name = "Intel(R) Intel Graphics (ArrowLake-P)", .is_discrete = false },
.{ .id = 0xb640, .name = "Intel(R) Intel Graphics (ArrowLake-H)", .is_discrete = false },
.{ .id = 0xe202, .name = "Intel(R) Battlemage G21 (Intel Graphics)", .is_discrete = true },
.{ .id = 0xe209, .name = "Intel(R) Battlemage G21 (Intel Graphics)", .is_discrete = true },
.{ .id = 0xe20b, .name = "Intel(R) Battlemage G21 (Arc(tm) B580 Graphics)", .is_discrete = true },
.{ .id = 0xe20c, .name = "Intel(R) Battlemage G21 (Arc(tm) B570 Graphics)", .is_discrete = true },
.{ .id = 0xe20d, .name = "Intel(R) Battlemage G21 (Intel Graphics)", .is_discrete = true },
.{ .id = 0xe210, .name = "Intel(R) Battlemage G21 (Intel Graphics)", .is_discrete = true },
.{ .id = 0xe211, .name = "Intel(R) Battlemage G21 (Arc(tm) Pro B60 Graphics)", .is_discrete = true },
.{ .id = 0xe212, .name = "Intel(R) Battlemage G21 (Arc(tm) Pro B50 Graphics)", .is_discrete = true },
.{ .id = 0xe215, .name = "Intel(R) Battlemage G21 (Intel Graphics)", .is_discrete = true },
.{ .id = 0xe216, .name = "Intel(R) Battlemage G21 (Intel Graphics)", .is_discrete = true },
.{ .id = 0xe220, .name = "Intel(R) Battlemage G31 (Intel Graphics)", .is_discrete = true },
.{ .id = 0xe221, .name = "Intel(R) Battlemage G31 (Intel Graphics)", .is_discrete = true },
.{ .id = 0xe222, .name = "Intel(R) Battlemage G31 (Arc(tm) Pro B65 Graphics)", .is_discrete = true },
.{ .id = 0xe223, .name = "Intel(R) Battlemage G31 (Arc(tm) Pro B70 Graphics)", .is_discrete = true },
.{ .id = 0xe202, .name = "Intel(R) Intel Graphics (Battlemage G21)", .is_discrete = true },
.{ .id = 0xe209, .name = "Intel(R) Intel Graphics (Battlemage G21)", .is_discrete = true },
.{ .id = 0xe20b, .name = "Intel(R) Arc(tm) B580 Graphics (Battlemage G21)", .is_discrete = true },
.{ .id = 0xe20c, .name = "Intel(R) Arc(tm) B570 Graphics (Battlemage G21)", .is_discrete = true },
.{ .id = 0xe20d, .name = "Intel(R) Intel Graphics (Battlemage G21)", .is_discrete = true },
.{ .id = 0xe210, .name = "Intel(R) Intel Graphics (Battlemage G21)", .is_discrete = true },
.{ .id = 0xe211, .name = "Intel(R) Arc(tm) Pro B60 Graphics (Battlemage G21)", .is_discrete = true },
.{ .id = 0xe212, .name = "Intel(R) Arc(tm) Pro B50 Graphics (Battlemage G21)", .is_discrete = true },
.{ .id = 0xe215, .name = "Intel(R) Intel Graphics (Battlemage G21)", .is_discrete = true },
.{ .id = 0xe216, .name = "Intel(R) Intel Graphics (Battlemage G21)", .is_discrete = true },
.{ .id = 0xe220, .name = "Intel(R) Intel Graphics (Battlemage G31)", .is_discrete = true },
.{ .id = 0xe221, .name = "Intel(R) Intel Graphics (Battlemage G31)", .is_discrete = true },
.{ .id = 0xe222, .name = "Intel(R) Arc(tm) Pro B65 Graphics (Battlemage G31)", .is_discrete = true },
.{ .id = 0xe223, .name = "Intel(R) Arc(tm) Pro B70 Graphics (Battlemage G31)", .is_discrete = true },
.{ .id = 0xb080, .name = "Intel(R) PantherLake (Arc(tm) B390 Graphics)", .is_discrete = false },
.{ .id = 0xb081, .name = "Intel(R) PantherLake (Arc(tm) B370 Graphics)", .is_discrete = false },
.{ .id = 0xb082, .name = "Intel(R) PantherLake (Arc(tm) B390 Graphics)", .is_discrete = false },
.{ .id = 0xb083, .name = "Intel(R) PantherLake (Arc(tm) B370 Graphics)", .is_discrete = false },
.{ .id = 0xb084, .name = "Intel(R) PantherLake (Arc(tm) Pro B390 Graphics)", .is_discrete = false },
.{ .id = 0xb085, .name = "Intel(R) PantherLake (Arc(tm) Pro B370 Graphics)", .is_discrete = false },
.{ .id = 0xb086, .name = "Intel(R) PantherLake (Arc(tm) Pro B390 Graphics)", .is_discrete = false },
.{ .id = 0xb087, .name = "Intel(R) PantherLake (Arc(tm) Pro B370 Graphics)", .is_discrete = false },
.{ .id = 0xb08f, .name = "Intel(R) PantherLake (Intel Graphics)", .is_discrete = false },
.{ .id = 0xb090, .name = "Intel(R) PantherLake (Intel Graphics)", .is_discrete = false },
.{ .id = 0xb0a0, .name = "Intel(R) PantherLake (Intel Graphics)", .is_discrete = false },
.{ .id = 0xb0b0, .name = "Intel(R) PantherLake (Intel Graphics)", .is_discrete = false },
.{ .id = 0xb080, .name = "Intel(R) Arc(tm) B390 Graphics (PantherLake)", .is_discrete = false },
.{ .id = 0xb081, .name = "Intel(R) Arc(tm) B370 Graphics (PantherLake)", .is_discrete = false },
.{ .id = 0xb082, .name = "Intel(R) Arc(tm) B390 Graphics (PantherLake)", .is_discrete = false },
.{ .id = 0xb083, .name = "Intel(R) Arc(tm) B370 Graphics (PantherLake)", .is_discrete = false },
.{ .id = 0xb084, .name = "Intel(R) Arc(tm) Pro B390 Graphics (PantherLake)", .is_discrete = false },
.{ .id = 0xb085, .name = "Intel(R) Arc(tm) Pro B370 Graphics (PantherLake)", .is_discrete = false },
.{ .id = 0xb086, .name = "Intel(R) Arc(tm) Pro B390 Graphics (PantherLake)", .is_discrete = false },
.{ .id = 0xb087, .name = "Intel(R) Arc(tm) Pro B370 Graphics (PantherLake)", .is_discrete = false },
.{ .id = 0xb08f, .name = "Intel(R) Intel Graphics (PantherLake)", .is_discrete = false },
.{ .id = 0xb090, .name = "Intel(R) Intel Graphics (PantherLake)", .is_discrete = false },
.{ .id = 0xb0a0, .name = "Intel(R) Intel Graphics (PantherLake)", .is_discrete = false },
.{ .id = 0xb0b0, .name = "Intel(R) Intel Graphics (PantherLake)", .is_discrete = false },
.{ .id = 0xfd80, .name = "Intel(R) WildcatLake (Intel Graphics)", .is_discrete = false },
.{ .id = 0xfd81, .name = "Intel(R) WildcatLake (Intel Graphics)", .is_discrete = false },
.{ .id = 0xfd80, .name = "Intel(R) Intel Graphics (WildcatLake)", .is_discrete = false },
.{ .id = 0xfd81, .name = "Intel(R) Intel Graphics (WildcatLake)", .is_discrete = false },
.{ .id = 0xd740, .name = "Intel(R) NVL-S (Graphics)", .is_discrete = false },
.{ .id = 0xd741, .name = "Intel(R) NVL-U (Graphics)", .is_discrete = false },
.{ .id = 0xd742, .name = "Intel(R) NVL-H (Graphics)", .is_discrete = false },
.{ .id = 0xd743, .name = "Intel(R) NVL-HX (Graphics)", .is_discrete = false },
.{ .id = 0xd744, .name = "Intel(R) NVL-UL (Graphics)", .is_discrete = false },
.{ .id = 0xd745, .name = "Intel(R) NVL-HX (Graphics)", .is_discrete = false },
.{ .id = 0xd740, .name = "Intel(R) Graphics (NVL-S)", .is_discrete = false },
.{ .id = 0xd741, .name = "Intel(R) Graphics (NVL-U)", .is_discrete = false },
.{ .id = 0xd742, .name = "Intel(R) Graphics (NVL-H)", .is_discrete = false },
.{ .id = 0xd743, .name = "Intel(R) Graphics (NVL-HX)", .is_discrete = false },
.{ .id = 0xd744, .name = "Intel(R) Graphics (NVL-UL)", .is_discrete = false },
.{ .id = 0xd745, .name = "Intel(R) Graphics (NVL-HX)", .is_discrete = false },
.{ .id = 0xd750, .name = "Intel(R) NVL-P (Graphics)", .is_discrete = false },
.{ .id = 0xd751, .name = "Intel(R) NVL-P (Graphics)", .is_discrete = false },
.{ .id = 0xd752, .name = "Intel(R) NVL-P (Graphics)", .is_discrete = false },
.{ .id = 0xd753, .name = "Intel(R) NVL-P (Graphics)", .is_discrete = false },
.{ .id = 0xd754, .name = "Intel(R) NVL-P (Graphics)", .is_discrete = false },
.{ .id = 0xd755, .name = "Intel(R) NVL-P (Graphics)", .is_discrete = false },
.{ .id = 0xd756, .name = "Intel(R) NVL-P (Graphics)", .is_discrete = false },
.{ .id = 0xd757, .name = "Intel(R) NVL-P (Graphics)", .is_discrete = false },
.{ .id = 0xd75f, .name = "Intel(R) NVL-P (Graphics)", .is_discrete = false },
.{ .id = 0xd750, .name = "Intel(R) Graphics (NVL-P)", .is_discrete = false },
.{ .id = 0xd751, .name = "Intel(R) Graphics (NVL-P)", .is_discrete = false },
.{ .id = 0xd752, .name = "Intel(R) Graphics (NVL-P)", .is_discrete = false },
.{ .id = 0xd753, .name = "Intel(R) Graphics (NVL-P)", .is_discrete = false },
.{ .id = 0xd754, .name = "Intel(R) Graphics (NVL-P)", .is_discrete = false },
.{ .id = 0xd755, .name = "Intel(R) Graphics (NVL-P)", .is_discrete = false },
.{ .id = 0xd756, .name = "Intel(R) Graphics (NVL-P)", .is_discrete = false },
.{ .id = 0xd757, .name = "Intel(R) Graphics (NVL-P)", .is_discrete = false },
.{ .id = 0xd75f, .name = "Intel(R) Graphics (NVL-P)", .is_discrete = false },
};
+3 -3
View File
@@ -293,7 +293,7 @@ pub fn beginRenderPass(interface: *Interface, render_pass: *base.RenderPass, fra
image,
attachment.format,
attachment.subresource_range,
null,
impl.render_area,
);
} else {
var subresource_range = attachment.subresource_range;
@@ -306,7 +306,7 @@ pub fn beginRenderPass(interface: *Interface, render_pass: *base.RenderPass, fra
image,
attachment.format,
subresource_range,
null,
impl.render_area,
);
}
@@ -318,7 +318,7 @@ pub fn beginRenderPass(interface: *Interface, render_pass: *base.RenderPass, fra
image,
attachment.format,
subresource_range,
null,
impl.render_area,
);
}
}
+1
View File
@@ -1,6 +1,7 @@
const std = @import("std");
const vk = @import("vulkan");
const base = @import("base");
const lib = @import("lib.zig");
const SoftPhysicalDevice = @import("SoftPhysicalDevice.zig");
const Dispatchable = base.Dispatchable;
+4 -4
View File
@@ -327,7 +327,7 @@ fn readImageFloat4(context: *anyopaque, dim: spv.SpvDim, x: i32, y: i32, z: i32,
.cube => cube_face,
else => 0,
};
pixel = image.readFloat4(
pixel = SoftSampler.swizzleFloat4(image.readFloat4(
image_coord,
.{
.aspect_mask = image_view.interface.subresource_range.aspect_mask,
@@ -335,7 +335,7 @@ fn readImageFloat4(context: *anyopaque, dim: spv.SpvDim, x: i32, y: i32, z: i32,
.array_layer = array_layer,
},
image_view.interface.format,
) catch return SpvRuntimeError.Unknown;
) catch return SpvRuntimeError.Unknown, image_view.interface.components);
}
return .{
.x = pixel[0],
@@ -368,7 +368,7 @@ fn readImageInt4(context: *anyopaque, dim: spv.SpvDim, x: i32, y: i32, z: i32, l
.cube => cube_face,
else => 0,
};
pixel = image.readInt4(
pixel = SoftSampler.swizzleInt4(image.readInt4(
image_coord,
.{
.aspect_mask = image_view.interface.subresource_range.aspect_mask,
@@ -376,7 +376,7 @@ fn readImageInt4(context: *anyopaque, dim: spv.SpvDim, x: i32, y: i32, z: i32, l
.array_layer = array_layer,
},
image_view.interface.format,
) catch return SpvRuntimeError.Unknown;
) catch return SpvRuntimeError.Unknown, image_view.interface.components);
}
return .{
.x = pixel[0],
+2 -2
View File
@@ -285,7 +285,7 @@ fn swizzleFloatComponent(color: F32x4, swizzle: vk.ComponentSwizzle, comptime id
};
}
fn swizzleFloat4(color: F32x4, components: vk.ComponentMapping) F32x4 {
pub fn swizzleFloat4(color: F32x4, components: vk.ComponentMapping) F32x4 {
return .{
swizzleFloatComponent(color, components.r, 0),
swizzleFloatComponent(color, components.g, 1),
@@ -307,7 +307,7 @@ fn swizzleIntComponent(color: U32x4, swizzle: vk.ComponentSwizzle, comptime iden
};
}
fn swizzleInt4(color: U32x4, components: vk.ComponentMapping) U32x4 {
pub fn swizzleInt4(color: U32x4, components: vk.ComponentMapping) U32x4 {
return .{
swizzleIntComponent(color, components.r, 0),
swizzleIntComponent(color, components.g, 1),
+2
View File
@@ -55,6 +55,7 @@ pub const DynamicState = struct {
pub const Vertex = struct {
primitive_restart: bool,
position: F32x4,
point_size: f32,
outputs: [spv.SPIRV_MAX_OUTPUT_LOCATIONS][4]?struct {
interpolation_type: enum { smooth, flat, noperspective },
blob: []u8,
@@ -106,6 +107,7 @@ pub const DrawCall = struct {
for (self.vertices) |*vertex| {
vertex.primitive_restart = false;
vertex.point_size = 1.0;
for (&vertex.outputs) |*location| {
@memset(location, null);
}
+1
View File
@@ -171,6 +171,7 @@ fn interpolateVertexForClipping(allocator: std.mem.Allocator, a: *const Vertex,
var result: Vertex = .{
.primitive_restart = false,
.position = a.position + ((b.position - a.position) * zm.f32x4s(t)),
.point_size = a.point_size + ((b.point_size - a.point_size) * t),
.outputs = undefined,
};
+7
View File
@@ -23,6 +23,7 @@ pub fn shaderInvocation(
draw_call: *Renderer.DrawCall,
batch_id: usize,
position: zm.F32x4,
point_coord: ?@Vector(2, f32),
front_face: bool,
inputs: [spv.SPIRV_MAX_OUTPUT_LOCATIONS]VertexInterpolationLocation,
derivative_inputs: ?DerivativeInputs,
@@ -54,6 +55,12 @@ pub fn shaderInvocation(
SpvRuntimeError.NotFound => {},
else => return err,
};
if (point_coord) |coord| {
rt.writeBuiltIn(std.mem.asBytes(&coord), .PointCoord) catch |err| switch (err) {
SpvRuntimeError.NotFound => {},
else => return err,
};
}
rt.writeBuiltIn(std.mem.asBytes(&front_face), .FrontFacing) catch |err| switch (err) {
SpvRuntimeError.NotFound => {},
else => return err,
+74 -64
View File
@@ -165,25 +165,25 @@ pub fn processThenFragmentStage(renderer: *Renderer, allocator: std.mem.Allocato
var segment_start = firstNonRestart(draw_call, range.start, range.end);
while (segment_start < range.end) {
const segment_end = nextRestart(draw_call, segment_start, range.end);
if (segment_end - segment_start >= 3) {
const v0 = &draw_call.vertices[segment_start];
for ((segment_start + 1)..(segment_end - 1)) |vertex_index| {
const v1 = &draw_call.vertices[vertex_index];
const v2 = &draw_call.vertices[vertex_index + 1];
if (segment_end - segment_start >= 3) {
const v0 = &draw_call.vertices[segment_start];
for ((segment_start + 1)..(segment_end - 1)) |vertex_index| {
const v1 = &draw_call.vertices[vertex_index];
const v2 = &draw_call.vertices[vertex_index + 1];
try clipTransformAndRasterizeTriangle(
renderer,
allocator,
draw_call,
v0,
v1,
v2,
color_attachment_access,
if (depth_attachment_access) |*access| access else null,
if (stencil_attachment_access) |*access| access else null,
);
try clipTransformAndRasterizeTriangle(
renderer,
allocator,
draw_call,
v0,
v1,
v2,
color_attachment_access,
if (depth_attachment_access) |*access| access else null,
if (stencil_attachment_access) |*access| access else null,
);
}
}
}
segment_start = firstNonRestart(draw_call, segment_end + 1, range.end);
}
}
@@ -194,40 +194,40 @@ pub fn processThenFragmentStage(renderer: *Renderer, allocator: std.mem.Allocato
var segment_start = firstNonRestart(draw_call, range.start, range.end);
while (segment_start < range.end) {
const segment_end = nextRestart(draw_call, segment_start, range.end);
if (segment_end - segment_start >= 3) {
for (segment_start..(segment_end - 2)) |vertex_index| {
const local_index = vertex_index - segment_start;
const v0 = &draw_call.vertices[vertex_index + 0];
const v1 = &draw_call.vertices[vertex_index + 1];
const v2 = &draw_call.vertices[vertex_index + 2];
if (segment_end - segment_start >= 3) {
for (segment_start..(segment_end - 2)) |vertex_index| {
const local_index = vertex_index - segment_start;
const v0 = &draw_call.vertices[vertex_index + 0];
const v1 = &draw_call.vertices[vertex_index + 1];
const v2 = &draw_call.vertices[vertex_index + 2];
if ((local_index & 1) == 0) {
try clipTransformAndRasterizeTriangle(
renderer,
allocator,
draw_call,
v0,
v1,
v2,
color_attachment_access,
if (depth_attachment_access) |*access| access else null,
if (stencil_attachment_access) |*access| access else null,
);
} else {
try clipTransformAndRasterizeTriangle(
renderer,
allocator,
draw_call,
v1,
v0,
v2,
color_attachment_access,
if (depth_attachment_access) |*access| access else null,
if (stencil_attachment_access) |*access| access else null,
);
if ((local_index & 1) == 0) {
try clipTransformAndRasterizeTriangle(
renderer,
allocator,
draw_call,
v0,
v1,
v2,
color_attachment_access,
if (depth_attachment_access) |*access| access else null,
if (stencil_attachment_access) |*access| access else null,
);
} else {
try clipTransformAndRasterizeTriangle(
renderer,
allocator,
draw_call,
v1,
v0,
v2,
color_attachment_access,
if (depth_attachment_access) |*access| access else null,
if (stencil_attachment_access) |*access| access else null,
);
}
}
}
}
segment_start = firstNonRestart(draw_call, segment_end + 1, range.end);
}
}
@@ -257,22 +257,22 @@ pub fn processThenFragmentStage(renderer: *Renderer, allocator: std.mem.Allocato
var segment_start = firstNonRestart(draw_call, range.start, range.end);
while (segment_start < range.end) {
const segment_end = nextRestart(draw_call, segment_start, range.end);
if (segment_end - segment_start >= 2) {
for (segment_start..(segment_end - 1)) |vertex_index| {
const v0 = &draw_call.vertices[vertex_index + 0];
const v1 = &draw_call.vertices[vertex_index + 1];
if (segment_end - segment_start >= 2) {
for (segment_start..(segment_end - 1)) |vertex_index| {
const v0 = &draw_call.vertices[vertex_index + 0];
const v1 = &draw_call.vertices[vertex_index + 1];
try clipTransformAndRasterizeLine(
allocator,
draw_call,
v0,
v1,
color_attachment_access,
if (depth_attachment_access) |*access| access else null,
if (stencil_attachment_access) |*access| access else null,
);
try clipTransformAndRasterizeLine(
allocator,
draw_call,
v0,
v1,
color_attachment_access,
if (depth_attachment_access) |*access| access else null,
if (stencil_attachment_access) |*access| access else null,
);
}
}
}
segment_start = firstNonRestart(draw_call, segment_end + 1, range.end);
}
}
@@ -323,11 +323,13 @@ fn clipTransformAndRasterizePoint(
var transformed = vertex.*;
clip.viewportTransformVertex(draw_call.viewport, &transformed);
const point_size = 1.0;
const point_size = transformed.point_size;
const min_x: i32 = @intFromFloat(@ceil(transformed.position[0] - (point_size / 2.0) - 0.5));
const max_x: i32 = @intFromFloat(@ceil(transformed.position[0] + (point_size / 2.0) - 0.5) - 1.0);
const min_y: i32 = @intFromFloat(@ceil(transformed.position[1] - (point_size / 2.0) - 0.5));
const max_y: i32 = @intFromFloat(@ceil(transformed.position[1] + (point_size / 2.0) - 0.5) - 1.0);
const point_min_x = transformed.position[0] - (point_size / 2.0);
const point_min_y = transformed.position[1] - (point_size / 2.0);
const pipeline = draw_call.renderer.state.pipeline orelse return;
const has_fragment_shader = pipeline.stages.getPtr(.fragment) != null;
@@ -340,11 +342,19 @@ fn clipTransformAndRasterizePoint(
var outputs = std.mem.zeroes([spv.SPIRV_MAX_OUTPUT_LOCATIONS][@sizeOf(zm.F32x4)]u8);
if (has_fragment_shader) {
const frag_x = @as(f32, @floatFromInt(px)) + 0.5;
const frag_y = @as(f32, @floatFromInt(py)) + 0.5;
const point_coord = @Vector(2, f32){
(frag_x - point_min_x) / point_size,
(frag_y - point_min_y) / point_size,
};
outputs = fragment.shaderInvocation(
allocator,
draw_call,
0,
zm.f32x4(@floatFromInt(px), @floatFromInt(py), transformed.position[2], 1.0),
zm.f32x4(frag_x, frag_y, transformed.position[2], 1.0 / transformed.position[3]),
point_coord,
true,
try common.interpolateVertexOutputs(allocator, &transformed, &transformed, &transformed, 1.0, 0.0, 0.0),
null,
+6 -4
View File
@@ -45,9 +45,9 @@ pub fn drawLine(
const io = draw_call.renderer.device.interface.io();
var x0: i32 = @intFromFloat(v0.position[0]);
var y0: i32 = @intFromFloat(v0.position[1]);
var y0: i32 = @intFromFloat(@floor(v0.position[1] - 0.5));
var x1: i32 = @intFromFloat(v1.position[0]);
var y1: i32 = @intFromFloat(v1.position[1]);
var y1: i32 = @intFromFloat(@floor(v1.position[1] - 0.5));
const steep = blk: {
if (@abs(y1 - y0) > @abs(x1 - x0)) {
@@ -76,7 +76,7 @@ pub fn drawLine(
if (runtimes_count == 0)
return;
const step_count: usize = @as(usize, @intCast(d_x)) + 1;
const step_count: usize = if (d_x == 0) 1 else @intCast(d_x);
const runs_count = @min(runtimes_count, step_count);
const steps_per_run = @divTrunc(step_count + runs_count - 1, runs_count);
@@ -151,6 +151,7 @@ inline fn run(data: RunData) !void {
const t = @as(f32, @floatFromInt(step)) / @as(f32, @floatFromInt(@max(data.d_x, 1)));
const z = ((1.0 - t) * data.start_vertex.position[2]) + (t * data.end_vertex.position[2]);
const frag_w = ((1.0 - t) / data.start_vertex.position[3]) + (t / data.end_vertex.position[3]);
var outputs = std.mem.zeroes([spv.SPIRV_MAX_OUTPUT_LOCATIONS][@sizeOf(F32x4)]u8);
if (data.has_fragment_shader) {
@@ -158,7 +159,8 @@ inline fn run(data: RunData) !void {
data.allocator,
data.draw_call,
data.batch_id,
zm.f32x4(@floatFromInt(pixel_x), @floatFromInt(pixel_y), z, 1.0),
zm.f32x4(@as(f32, @floatFromInt(pixel_x)) + 0.5, @as(f32, @floatFromInt(pixel_y)) + 0.5, z, frag_w),
null,
true,
try common.interpolateLineOutputs(data.allocator, data.start_vertex, data.end_vertex, t),
null,
@@ -177,6 +177,7 @@ inline fn run(data: RunData) !void {
const b1 = w1 / data.area;
const b2 = w2 / data.area;
const z = (b0 * data.v0.position[2]) + (b1 * data.v1.position[2]) + (b2 * data.v2.position[2]);
const frag_w = (b0 / data.v0.position[3]) + (b1 / data.v1.position[3]) + (b2 / data.v2.position[3]);
var outputs = std.mem.zeroes([spv.SPIRV_MAX_OUTPUT_LOCATIONS][@sizeOf(F32x4)]u8);
if (data.has_fragment_shader) {
@@ -218,7 +219,8 @@ inline fn run(data: RunData) !void {
data.allocator,
data.draw_call,
data.batch_id,
zm.f32x4(@floatFromInt(x), @floatFromInt(y), z, 1.0),
zm.f32x4(@as(f32, @floatFromInt(x)) + 0.5, @as(f32, @floatFromInt(y)) + 0.5, z, frag_w),
null,
data.front_face,
inputs,
derivative_inputs,
+11 -1
View File
@@ -86,7 +86,7 @@ inline fn run(data: RunData) !void {
const buffer_memory = if (buffer.interface.memory) |memory| memory else return VkError.InvalidDeviceMemoryDrv;
const input_index = switch (binding_info.input_rate) {
.vertex => vertex_index,
.instance => data.instance_index,
.instance => data.first_instance + data.instance_index,
else => return VkError.ValidationFailed,
};
const offset = buffer.interface.offset + vertex_buffer.offset + (binding_info.stride * input_index) + attribute.offset;
@@ -107,6 +107,7 @@ inline fn run(data: RunData) !void {
};
try readPosition(rt, std.mem.asBytes(&output.position));
try readPointSize(rt, &output.point_size);
for (0..spv.SPIRV_MAX_OUTPUT_LOCATIONS) |location| {
for (0..4) |component| {
@@ -187,6 +188,15 @@ fn readPosition(rt: *spv.Runtime, output: []u8) !void {
return SpvRuntimeError.InvalidSpirV;
}
fn readPointSize(rt: *spv.Runtime, output: *f32) !void {
if (rt.readBuiltIn(std.mem.asBytes(output), .PointSize)) {
return;
} else |err| switch (err) {
SpvRuntimeError.InvalidSpirV, SpvRuntimeError.NotFound => {},
else => return err,
}
}
fn isConstantZero(rt: *spv.Runtime, result_word: spv.SpvWord) bool {
if (result_word >= rt.results.len)
return false;
+1 -1
View File
@@ -90,7 +90,7 @@ pub fn log(comptime level: std.log.Level, comptime scope: @EnumLiteral(), compti
writer.writeAll("[ApeDriver") catch continue;
if (!builtin.is_test) {
term.setColor(.cyan) catch {};
writer.writeAll(" " ++ root.DRIVER_NAME ++ " ") catch continue;
writer.print(" {s} ", .{root.DRIVER_NAME}) catch continue;
}
term.setColor(.yellow) catch {};
writer.print("{d}:{d}:{d}.{d:0>3}.{d:0>3}", .{ now_hour, now_min, now_sec, now_ms, now_us }) catch continue;