I am using the Feb17 Beta driver on Win10 64bit, and the 220.127.116.11 LunarG SDK. System is a A6-6310 (R4 GPU).
Calling vkGetPhysicalDeviceSurfacePresentModesKHR() only returns a single present mode (VK_PRESENT_MODE_IMMEDIATE_KHR), but the spec says that VK_PRESENT_MODE_FIFO_KHR is a guaranteed value.
If I try to call vkCreateSwapchainKHR() with VK_PRESENT_MODE_FIFO_KHR anyway, the validation layer throws me an error, but the call succeeds and the app seems to render fine. This is true not just in my own code, but in the samples as well.
I'm just not sure what the expected behaviour is in this situation.
I can confirm that the issue has been solved for me as of the Feb25 beta driver. (16.15.1009 Beta 5)
vkGetPhysicalDeviceSurfacePresentModesKHR() now returns both VK_PRESENT_MODE_IMMEDIATE_KHR and VK_PRESENT_MODE_FIFO_KHR.