Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7a74a7cc authored by Chris Forbes's avatar Chris Forbes Committed by Android (Google) Code Review
Browse files

Merge changes Ie3784ba4,I656b6095,I1dceb4d4,I7df711e0,I2d7512ec

* changes:
  vulkan: Chain VkSwapchainImageCreateInfoANDROID structure
  vulkan: Fix oversights in V6 of android native buffer
  vulkan: Fix vulkan.api for Ian's changes & regen
  vulkan: Use GetSwapchainGrallocUsage2ANDROID where available
  vulkan: Remove bogus IMAGE_USAGE_GENERAL from todo note
parents b3034d88 b56287ad
Loading
Loading
Loading
Loading
+12 −44
Original line number Diff line number Diff line
@@ -2886,27 +2886,6 @@ class VkWin32SurfaceCreateInfoKHR {
    platform.HWND                               hwnd
}

@extension("VK_KHR_incremental_present")
class VkRectLayerKHR {
    VkOffset2D                                  offset
    VkExtent2D                                  extent
    uint32_t                                    layer
}

@extension("VK_KHR_incremental_present")
class VkPresentRegionKHR {
    uint32_t                                    rectangleCount
    const VkRectLayerKHR*                       pRectangles
}

@extension("VK_KHR_incremental_present")
class VkPresentRegionsKHR {
    VkStructureType                             sType
    const void*                                 pNext
    uint32_t                                    swapchainCount
    const VkPresentRegionKHR*                   pRegions
}

@extension("VK_ANDROID_native_buffer")
class VkNativeBufferANDROID {
    VkStructureType                             sType
@@ -2921,34 +2900,35 @@ class VkNativeBufferANDROID {
class VkSwapchainImageCreateInfoANDROID {
    VkStructureType                             sType
    const void*                                 pNext
    VkSwapchainImageUsageFlagBitsANDROID        flags
    VkSwapchainImageUsageFlagsANDROID           flags
}

@extension("VK_GOOGLE_display_timing")
class VkRefreshCycleDurationGOOGLE {
    uint64_t                                    minRefreshDuration
    uint64_t                                    maxRefreshDuration
    u64                                         minRefreshDuration
    u64                                         maxRefreshDuration
}

@extension("VK_GOOGLE_display_timing")
class VkPastPresentationTimingGOOGLE {
    uint32_t                                    presentID
    uint64_t                                    desiredPresentTime
    uint64_t                                    actualPresentTime
    uint64_t                                    earliestPresentTime
    uint64_t                                    presentMargin
    u32                                         presentID
    u64                                         desiredPresentTime
    u64                                         actualPresentTime
    u64                                         earliestPresentTime
    u64                                         presentMargin
}

@extension("VK_GOOGLE_display_timing")
class VkPresentTimeGOOGLE {
    uint32_t                                    presentID
    uint64_t                                    desiredPresentTime
    u32                                         presentID
    u64                                         desiredPresentTime
}

@extension("VK_GOOGLE_display_timing")
class VkPresentTimesInfoGOOGLE {
    VkStructureType                             sType
    const void*                                 pNext
    uint32_t                                    swapchainCount
    u32                                         swapchainCount
    const VkPresentTimeGOOGLE*                  pTimes
}

@@ -5889,18 +5869,6 @@ cmd VkResult vkGetPastPresentationTimingGOOGLE(
        VkSwapchainKHR                           swapchain,
        u32*                                     pPresentationTimingCount,
        VkPastPresentationTimingGOOGLE*          pPresentationTimings) {
    deviceObject := GetDevice(device)

    count := as!u32(?)
    pPresentationTimingCount[0] = count
    presentationTimings := pPresentationTimings[0:count]

    for i in (0 .. count) {
        presentationTiming := ?
        presentationTimings[i] = presentationTiming
        State.Timings[presentationTiming] = new!PresentationTiming(device: device)
    }

    return ?
}

+1 −1
Original line number Diff line number Diff line
@@ -123,7 +123,7 @@ typedef struct {
    VkStructureType                        sType; // must be VK_STRUCTURE_TYPE_SWAPCHAIN_IMAGE_CREATE_INFO_ANDROID
    const void*                            pNext;

    VkSwapchainImageUsageFlagBitsANDROID   usage;
    VkSwapchainImageUsageFlagsANDROID      usage;
} VkSwapchainImageCreateInfoANDROID;
----

+2 −2
Original line number Diff line number Diff line
@@ -876,7 +876,7 @@ http://www.gnu.org/software/src-highlite -->
    <span style="color: #008080">VkStructureType</span>                        sType<span style="color: #990000">;</span> <span style="font-style: italic"><span style="color: #9A1900">// must be VK_STRUCTURE_TYPE_SWAPCHAIN_IMAGE_CREATE_INFO_ANDROID</span></span>
    <span style="font-weight: bold"><span style="color: #0000FF">const</span></span> <span style="color: #009900">void</span><span style="color: #990000">*</span>                            pNext<span style="color: #990000">;</span>

    <span style="color: #008080">VkSwapchainImageUsageFlagBitsANDROID</span>   usage<span style="color: #990000">;</span>
    <span style="color: #008080">VkSwapchainImageUsageFlagsANDROID</span>      usage<span style="color: #990000">;</span>
<span style="color: #FF0000">}</span> VkSwapchainImageCreateInfoANDROID<span style="color: #990000">;</span></tt></pre></div></div>
<div class="paragraph"><p><span class="monospaced">vkAcquireImageANDROID</span> acquires ownership of a swapchain image and imports an
externally-signalled native fence into both an existing VkSemaphore object
@@ -1052,7 +1052,7 @@ Added VkSwapchainImageCreateInfoANDROID
<div id="footer">
<div id="footer-text">
Version 5<br>
Last updated 2017-01-09 09:52:43 NZDT
Last updated 2017-01-12 14:25:30 NZDT
</div>
</div>
</body>
+2 −1
Original line number Diff line number Diff line
@@ -32,6 +32,7 @@ extern "C" {

#define VK_ANDROID_NATIVE_BUFFER_ENUM(type,id)    ((type)(1000000000 + (1000 * (VK_ANDROID_NATIVE_BUFFER_EXTENSION_NUMBER - 1)) + (id)))
#define VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID   VK_ANDROID_NATIVE_BUFFER_ENUM(VkStructureType, 0)
#define VK_STRUCTURE_TYPE_SWAPCHAIN_IMAGE_CREATE_INFO_ANDROID VK_ANDROID_NATIVE_BUFFER_ENUM(VkStructureType, 1)

typedef enum VkSwapchainImageUsageFlagBitsANDROID {
    VK_SWAPCHAIN_IMAGE_USAGE_FRONT_BUFFER_BIT_ANDROID = 0x00000001,
@@ -56,7 +57,7 @@ typedef struct {
    VkStructureType                        sType; // must be VK_STRUCTURE_TYPE_SWAPCHAIN_IMAGE_CREATE_INFO_ANDROID
    const void*                            pNext;

    VkSwapchainImageUsageFlagBitsANDROID   usage;
    VkSwapchainImageUsageFlagsANDROID      usage;
} VkSwapchainImageCreateInfoANDROID;

typedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainGrallocUsageANDROID)(VkDevice device, VkFormat format, VkImageUsageFlags imageUsage, int* grallocUsage);
+0 −10
Original line number Diff line number Diff line
@@ -427,8 +427,6 @@ VKAPI_ATTR VkResult GetSwapchainImagesKHR(VkDevice device, VkSwapchainKHR swapch
VKAPI_ATTR VkResult AcquireNextImageKHR(VkDevice device, VkSwapchainKHR swapchain, uint64_t timeout, VkSemaphore semaphore, VkFence fence, uint32_t* pImageIndex);
VKAPI_ATTR VkResult QueuePresentKHR(VkQueue queue, const VkPresentInfoKHR* pPresentInfo);
VKAPI_ATTR VkResult CreateAndroidSurfaceKHR(VkInstance instance, const VkAndroidSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
VKAPI_ATTR VkResult GetRefreshCycleDurationGOOGLE(VkDevice device, VkSwapchainKHR swapchain, VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties);
VKAPI_ATTR VkResult GetPastPresentationTimingGOOGLE(VkDevice device, VkSwapchainKHR swapchain, uint32_t* pPresentationTimingCount, VkPastPresentationTimingGOOGLE* pPresentationTimings);

VKAPI_ATTR VkResult EnumeratePhysicalDevices(VkInstance instance, uint32_t* pPhysicalDeviceCount, VkPhysicalDevice* pPhysicalDevices) {
    return GetData(instance).dispatch.EnumeratePhysicalDevices(instance, pPhysicalDeviceCount, pPhysicalDevices);
@@ -1212,14 +1210,6 @@ VKAPI_ATTR VkResult CreateAndroidSurfaceKHR(VkInstance instance, const VkAndroid
    return GetData(instance).dispatch.CreateAndroidSurfaceKHR(instance, pCreateInfo, pAllocator, pSurface);
}

VKAPI_ATTR VkResult GetRefreshCycleDurationGOOGLE(VkDevice device, VkSwapchainKHR swapchain, VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties) {
    return GetData(device).dispatch.GetRefreshCycleDurationGOOGLE(device, swapchain, pDisplayTimingProperties);
}

VKAPI_ATTR VkResult GetPastPresentationTimingGOOGLE(VkDevice device, VkSwapchainKHR swapchain, uint32_t* pPresentationTimingCount, VkPastPresentationTimingGOOGLE* pPresentationTimings) {
    return GetData(device).dispatch.GetPastPresentationTimingGOOGLE(device, swapchain, pPresentationTimingCount, pPresentationTimings);
}


}  // anonymous namespace

Loading