Merge remote-tracking branch 'aosp/master' into deqp-dev
authorChris Forbes <chrisforbes@google.com>
Mon, 13 Aug 2018 20:15:16 +0000 (13:15 -0700)
committerChris Forbes <chrisforbes@google.com>
Mon, 13 Aug 2018 20:15:16 +0000 (13:15 -0700)
Change-Id: I22f18ebbb60ec1cb841e6084433c406154690f1d

1  2 
android/cts/master/gles2-master.txt
android/cts/master/gles3-master.txt
android/cts/master/src/gles3-test-issues.txt
android/cts/master/src/vk-excluded-tests.txt
android/cts/master/vk-master.txt
external/vulkancts/framework/vulkan/vkDefs.hpp
external/vulkancts/modules/vulkan/api/vktApiFeatureInfo.cpp
external/vulkancts/modules/vulkan/vktExternalMemoryUtil.cpp

Simple merge
Simple merge
index 9b1745e28fbbe8ede5f331abd6f27b214e3fa613,19940c13a48890a3899ebd24050e3c8e00372ea9..91a625eea9a4c73dda67bbad4623b117bd1a9f78
@@@ -171,4 -171,6 +171,3 @@@ dEQP-GLES3.functional.shaders.builtin_f
  dEQP-GLES3.functional.shaders.builtin_functions.precision.reflect.mediump_fragment.vec4
  dEQP-GLES3.functional.shaders.builtin_functions.precision.reflect.highp_vertex.vec3
  dEQP-GLES3.functional.shaders.builtin_functions.precision.reflect.highp_fragment.vec3
--
 -# b/73070970
 -dEQP-GLES3.functional.shaders.declarations.unspecified_precision.*
index db739c0e86bacfb297b7667690bf3349073422d5,2e6b354f2dbcde78f848912f071e04a11bfedb42..bd2bccf853baf043932a8c2fb77fea1258b6c8d4
@@@ -58,3 -293,10 +58,9 @@@ dEQP-VK.wsi.android.surface.query_devgr
  
  #VK-GL-CTS 749
  dEQP-VK.glsl.builtin.precision.atan2.mediump_compute.*
 -
+ # Issue: b/66464066
+ dEQP-VK.wsi.android.shared_presentable_image.scale_down.*
+ # Issue: b/67022169
+ dEQP-VK.wsi.android.incremental_present.scale_down.*
index 72ef375c23f13f7989756772212cf84245664a43,66fde776a464e2b9f158030e2ce3d53c02a531d6..7eafaa0e7cb61445e0180316a16d5e93b61dfd32
@@@ -277534,69 -216939,6 +277470,67 @@@ dEQP-VK.wsi.android.shared_presentable_
  dEQP-VK.wsi.android.shared_presentable_image.scale_none.continuous
  dEQP-VK.wsi.android.shared_presentable_image.scale_up.demand
  dEQP-VK.wsi.android.shared_presentable_image.scale_up.continuous
- dEQP-VK.wsi.android.shared_presentable_image.scale_down.demand
- dEQP-VK.wsi.android.shared_presentable_image.scale_down.continuous
 +dEQP-VK.wsi.android.colorspace.extensions
 +dEQP-VK.wsi.android.colorspace.basic
 +dEQP-VK.wsi.android.colorspace.hdr
 +dEQP-VK.wsi.macos.surface.create
 +dEQP-VK.wsi.macos.surface.create_custom_allocator
 +dEQP-VK.wsi.macos.surface.create_simulate_oom
 +dEQP-VK.wsi.macos.surface.query_support
 +dEQP-VK.wsi.macos.surface.query_capabilities
 +dEQP-VK.wsi.macos.surface.query_capabilities2
 +dEQP-VK.wsi.macos.surface.query_formats
 +dEQP-VK.wsi.macos.surface.query_formats2
 +dEQP-VK.wsi.macos.surface.query_present_modes
 +dEQP-VK.wsi.macos.surface.query_devgroup_present_capabilities
 +dEQP-VK.wsi.macos.surface.query_devgroup_present_modes
 +dEQP-VK.wsi.macos.surface.destroy_null_handle
 +dEQP-VK.wsi.macos.surface.initial_size
 +dEQP-VK.wsi.macos.surface.resize
 +dEQP-VK.wsi.macos.swapchain.create.min_image_count
 +dEQP-VK.wsi.macos.swapchain.create.image_format
 +dEQP-VK.wsi.macos.swapchain.create.image_extent
 +dEQP-VK.wsi.macos.swapchain.create.image_array_layers
 +dEQP-VK.wsi.macos.swapchain.create.image_usage
 +dEQP-VK.wsi.macos.swapchain.create.image_sharing_mode
 +dEQP-VK.wsi.macos.swapchain.create.pre_transform
 +dEQP-VK.wsi.macos.swapchain.create.composite_alpha
 +dEQP-VK.wsi.macos.swapchain.create.present_mode
 +dEQP-VK.wsi.macos.swapchain.create.clipped
 +dEQP-VK.wsi.macos.swapchain.simulate_oom.min_image_count
 +dEQP-VK.wsi.macos.swapchain.simulate_oom.image_format
 +dEQP-VK.wsi.macos.swapchain.simulate_oom.image_extent
 +dEQP-VK.wsi.macos.swapchain.simulate_oom.image_array_layers
 +dEQP-VK.wsi.macos.swapchain.simulate_oom.image_usage
 +dEQP-VK.wsi.macos.swapchain.simulate_oom.image_sharing_mode
 +dEQP-VK.wsi.macos.swapchain.simulate_oom.pre_transform
 +dEQP-VK.wsi.macos.swapchain.simulate_oom.composite_alpha
 +dEQP-VK.wsi.macos.swapchain.simulate_oom.present_mode
 +dEQP-VK.wsi.macos.swapchain.simulate_oom.clipped
 +dEQP-VK.wsi.macos.swapchain.render.basic
 +dEQP-VK.wsi.macos.swapchain.destroy.null_handle
 +dEQP-VK.wsi.macos.swapchain.get_images.incomplete
 +dEQP-VK.wsi.macos.incremental_present.scale_none.immediate.reference
 +dEQP-VK.wsi.macos.incremental_present.scale_none.immediate.incremental_present
 +dEQP-VK.wsi.macos.incremental_present.scale_none.mailbox.reference
 +dEQP-VK.wsi.macos.incremental_present.scale_none.mailbox.incremental_present
 +dEQP-VK.wsi.macos.incremental_present.scale_none.fifo.reference
 +dEQP-VK.wsi.macos.incremental_present.scale_none.fifo.incremental_present
 +dEQP-VK.wsi.macos.incremental_present.scale_none.fifo_relaxed.reference
 +dEQP-VK.wsi.macos.incremental_present.scale_none.fifo_relaxed.incremental_present
 +dEQP-VK.wsi.macos.display_timing.fifo.reference
 +dEQP-VK.wsi.macos.display_timing.fifo.display_timing
 +dEQP-VK.wsi.macos.display_timing.fifo_relaxed.reference
 +dEQP-VK.wsi.macos.display_timing.fifo_relaxed.display_timing
 +dEQP-VK.wsi.macos.display_timing.immediate.reference
 +dEQP-VK.wsi.macos.display_timing.immediate.display_timing
 +dEQP-VK.wsi.macos.display_timing.mailbox.reference
 +dEQP-VK.wsi.macos.display_timing.mailbox.display_timing
 +dEQP-VK.wsi.macos.shared_presentable_image.scale_none.demand
 +dEQP-VK.wsi.macos.shared_presentable_image.scale_none.continuous
 +dEQP-VK.wsi.macos.colorspace.extensions
 +dEQP-VK.wsi.macos.colorspace.basic
 +dEQP-VK.wsi.macos.colorspace.hdr
  dEQP-VK.wsi.display.get_display_properties
  dEQP-VK.wsi.display.get_display_plane_properties
  dEQP-VK.wsi.display.get_display_plane_supported_displays
index fcd3abf315cc2bf6c3d914e98534828654c1bb55,1e8f82fec3944a32d774a21ee5b7d203f7e1404a..161de5d91869de156bf9668f398567c08361f83f
@@@ -1013,15 -1013,13 +1013,51 @@@ static vk::Move<vk::VkDeviceMemory> imp
                };
                vk::Move<vk::VkDeviceMemory> memory (vk::allocateMemory(vkd, device, &info));
  
 -              handle.disown();
 +              // The handle's owned reference must also be released. Do not discard the handle below.
 +              if (externalType != vk::VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT)
 +                      handle.disown();
 +
 +              return memory;
 +      }
 +      else if (externalType == vk::VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID)
 +      {
 +              AndroidHardwareBufferExternalApi* ahbApi = AndroidHardwareBufferExternalApi::getInstance();
++              if (!ahbApi)
++              {
++                      TCU_THROW(NotSupportedError, "Platform doesn't support Android Hardware Buffer handles");
++              }
++
++              deUint32 ahbFormat = 0;
++              ahbApi->describe(handle.getAndroidHardwareBuffer(), DE_NULL, DE_NULL, DE_NULL, &ahbFormat, DE_NULL, DE_NULL);
++              DE_ASSERT(ahbApi->ahbFormatIsBlob(ahbFormat) || image != 0);
++
++              vk::VkImportAndroidHardwareBufferInfoANDROID    importInfo =
++              {
++                      vk::VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID,
++                      DE_NULL,
++                      handle.getAndroidHardwareBuffer()
++              };
++              const vk::VkMemoryDedicatedAllocateInfo         dedicatedInfo =
++              {
++                      vk::VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO_KHR,
++                      &importInfo,
++                      image,
++                      buffer,
++              };
++              const vk::VkMemoryAllocateInfo                                  info =
++              {
++                      vk::VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO,
++                      (isDedicated ? (const void*)&dedicatedInfo : (const void*)&importInfo),
++                      requirements.size,
++                      (memoryTypeIndex == ~0U) ? chooseMemoryType(requirements.memoryTypeBits)  : memoryTypeIndex
++              };
++              vk::Move<vk::VkDeviceMemory> memory (vk::allocateMemory(vkd, device, &info));
+               return memory;
+       }
+       else if (externalType == vk::VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID)
+       {
+               AndroidHardwareBufferExternalApi* ahbApi = AndroidHardwareBufferExternalApi::getInstance();
                if (!ahbApi)
                {
                        TCU_THROW(NotSupportedError, "Platform doesn't support Android Hardware Buffer handles");