1- Thermal support. 2 3- Bifrost support: 4 - DT bindings (Neil, WIP) 5 - MMU page table format and address space setup 6 - Bifrost specific feature and issue handling 7 - Coherent DMA support 8 9- Support for 2MB pages. The io-pgtable code already supports this. Finishing 10 support involves either copying or adapting the iommu API to handle passing 11 aligned addresses and sizes to the io-pgtable code. 12 13- Per FD address space support. The h/w supports multiple addresses spaces. 14 The hard part is handling when more address spaces are needed than what 15 the h/w provides. 16 17- Support pinning pages on demand (GPU page faults). 18 19- Support userspace controlled GPU virtual addresses. Needed for Vulkan. (Tomeu) 20 21- Support for madvise and a shrinker. 22 23- Compute job support. So called 'compute only' jobs need to be plumbed up to 24 userspace. 25 26- Performance counter support. (Boris) 27 28