[nee-jee-ray]
What I'm doing here is a GPU driver for Linux as a prototype for future graphics stack of the @GreenteaOS
To support AMD GCN 1.0+ GPUs. And Intel/Nvidia ones that conform to Resource binding Tier 3 and Resource heap Tier 2.
This project is a part of future Driver Reusability Initiative (to be announced).
-
AMD Radeon R7 200 SeriesPCI\VEN_1002&DEV_6610&REV_00Oland GFX6 (gfx601) -
Radeon RX 5500 XTPCI\VEN_1002&DEV_7340&REV_C5Navi GFX10 (gfx1012)
Later GCN/RDNA GPUs will reuse huge parts of GCN 1.0 code.
-
Intel(R) HD Graphics 500PCI\VEN_8086&DEV_5A85&REV_0BGen. 9 (Skylake) -
Intel(R) UHD Graphics 630PCI\VEN_8086&DEV_TBA&REV_TBAGen. 9.5 (Kaby Lake) -
Intel(R) UHD Graphics 750PCI\VEN_8086&DEV_TBA&REV_TBAGen. 12 (Rocket Lake-S) -
Intel(R) Iris(R) Xe GraphicsPCI\VEN_8086&DEV_TBA&REV_TBAG7 Gen. 12 (Tiger Lake-U)
- Create IOCTL API to control driver from userspace
- Init GPU engine and setup command buffer
- Mode setting
- Draw anything on screen
Only fullscreen applications supported, no desktop GUI! Use only for secondary GPU with extra screen (or use extra inputs and switch dynamically).
Use make to build kmodule kernel mode driver.
GNU LESSER GENERAL PUBLIC LICENSE Version 3