1 /* 2 * Copyright © 2016 Red Hat. 3 * Copyright © 2016 Bas Nieuwenhuizen 4 * 5 * based in part on anv driver which is: 6 * Copyright © 2015 Intel Corporation 7 * 8 * SPDX-License-Identifier: MIT 9 */ 10 11 #ifndef RADV_BUFFER_VIEW_H 12 #define RADV_BUFFER_VIEW_H 13 14 #include "vk_buffer_view.h" 15 16 struct radv_device; 17 18 struct radv_buffer_view { 19 struct vk_buffer_view vk; 20 struct radeon_winsys_bo *bo; 21 uint32_t state[4]; 22 }; 23 24 VK_DEFINE_NONDISP_HANDLE_CASTS(radv_buffer_view, vk.base, VkBufferView, VK_OBJECT_TYPE_BUFFER_VIEW) 25 26 void radv_buffer_view_init(struct radv_buffer_view *view, struct radv_device *device, 27 const VkBufferViewCreateInfo *pCreateInfo); 28 void radv_buffer_view_finish(struct radv_buffer_view *view); 29 30 void radv_make_texel_buffer_descriptor(struct radv_device *device, uint64_t va, VkFormat vk_format, unsigned offset, 31 unsigned range, uint32_t *state); 32 33 #endif /* RADV_BUFFER_VIEW_H */ 34