xref: /aosp_15_r20/external/mesa3d/src/asahi/vulkan/hk_private.h (revision 6104692788411f58d303aa86923a9ff6ecaded22)
1*61046927SAndroid Build Coastguard Worker /*
2*61046927SAndroid Build Coastguard Worker  * Copyright 2024 Valve Corporation
3*61046927SAndroid Build Coastguard Worker  * Copyright 2024 Alyssa Rosenzweig
4*61046927SAndroid Build Coastguard Worker  * Copyright 2022-2023 Collabora Ltd. and Red Hat Inc.
5*61046927SAndroid Build Coastguard Worker  * SPDX-License-Identifier: MIT
6*61046927SAndroid Build Coastguard Worker  */
7*61046927SAndroid Build Coastguard Worker 
8*61046927SAndroid Build Coastguard Worker #pragma once
9*61046927SAndroid Build Coastguard Worker 
10*61046927SAndroid Build Coastguard Worker #include <assert.h>
11*61046927SAndroid Build Coastguard Worker 
12*61046927SAndroid Build Coastguard Worker #include "vk_log.h"
13*61046927SAndroid Build Coastguard Worker #include "vk_util.h"
14*61046927SAndroid Build Coastguard Worker 
15*61046927SAndroid Build Coastguard Worker #define HK_MAX_SETS                   8
16*61046927SAndroid Build Coastguard Worker #define HK_MAX_PUSH_SIZE              128
17*61046927SAndroid Build Coastguard Worker #define HK_MAX_DYNAMIC_BUFFERS        64
18*61046927SAndroid Build Coastguard Worker #define HK_MAX_RTS                    8
19*61046927SAndroid Build Coastguard Worker #define HK_MIN_SSBO_ALIGNMENT         16
20*61046927SAndroid Build Coastguard Worker #define HK_MIN_TEXEL_BUFFER_ALIGNMENT 16
21*61046927SAndroid Build Coastguard Worker #define HK_MIN_UBO_ALIGNMENT          64
22*61046927SAndroid Build Coastguard Worker #define HK_MAX_VIEWPORTS              16
23*61046927SAndroid Build Coastguard Worker #define HK_MAX_DESCRIPTOR_SIZE        32
24*61046927SAndroid Build Coastguard Worker #define HK_MAX_PUSH_DESCRIPTORS       32
25*61046927SAndroid Build Coastguard Worker #define HK_MAX_DESCRIPTOR_SET_SIZE    (1u << 30)
26*61046927SAndroid Build Coastguard Worker #define HK_MAX_DESCRIPTORS            (1 << 20)
27*61046927SAndroid Build Coastguard Worker #define HK_PUSH_DESCRIPTOR_SET_SIZE                                            \
28*61046927SAndroid Build Coastguard Worker    (HK_MAX_PUSH_DESCRIPTORS * HK_MAX_DESCRIPTOR_SIZE)
29*61046927SAndroid Build Coastguard Worker #define HK_SSBO_BOUNDS_CHECK_ALIGNMENT 4
30*61046927SAndroid Build Coastguard Worker #define HK_MAX_MULTIVIEW_VIEW_COUNT    32
31*61046927SAndroid Build Coastguard Worker 
32*61046927SAndroid Build Coastguard Worker #define HK_SPARSE_ADDR_SPACE_SIZE (1ull << 39)
33*61046927SAndroid Build Coastguard Worker #define HK_MAX_BUFFER_SIZE        (1ull << 31)
34*61046927SAndroid Build Coastguard Worker #define HK_MAX_SHARED_SIZE        (32 * 1024)
35*61046927SAndroid Build Coastguard Worker 
36*61046927SAndroid Build Coastguard Worker struct hk_addr_range {
37*61046927SAndroid Build Coastguard Worker    uint64_t addr;
38*61046927SAndroid Build Coastguard Worker    uint64_t range;
39*61046927SAndroid Build Coastguard Worker };
40*61046927SAndroid Build Coastguard Worker 
41*61046927SAndroid Build Coastguard Worker #define perf_debug(dev, fmt, ...)                                              \
42*61046927SAndroid Build Coastguard Worker    do {                                                                        \
43*61046927SAndroid Build Coastguard Worker       if (dev->dev.debug & AGX_DBG_PERF)                                       \
44*61046927SAndroid Build Coastguard Worker          mesa_log(MESA_LOG_WARN, (MESA_LOG_TAG), (fmt), ##__VA_ARGS__);        \
45*61046927SAndroid Build Coastguard Worker    } while (0)
46*61046927SAndroid Build Coastguard Worker 
47*61046927SAndroid Build Coastguard Worker /* Fake values, pending UAPI upstreaming */
48*61046927SAndroid Build Coastguard Worker #ifndef DRM_FORMAT_MOD_APPLE_TWIDDLED
49*61046927SAndroid Build Coastguard Worker #define DRM_FORMAT_MOD_APPLE_TWIDDLED (2)
50*61046927SAndroid Build Coastguard Worker #endif
51*61046927SAndroid Build Coastguard Worker #ifndef DRM_FORMAT_MOD_APPLE_TWIDDLED_COMPRESSED
52*61046927SAndroid Build Coastguard Worker #define DRM_FORMAT_MOD_APPLE_TWIDDLED_COMPRESSED (3)
53*61046927SAndroid Build Coastguard Worker #endif
54