forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-05-13 9d77db3c730780c8ef5ccd4b66403ff5675cfe4e
kernel/drivers/gpu/drm/msm/adreno/a6xx_hfi.h
....@@ -51,7 +51,8 @@
5151 /* HFI message types */
5252
5353 #define HFI_MSG_CMD 0
54
-#define HFI_MSG_ACK 2
54
+#define HFI_MSG_ACK 1
55
+#define HFI_MSG_ACK_V1 2
5556
5657 #define HFI_F2H_MSG_ACK 126
5758
....@@ -94,12 +95,27 @@
9495 u32 freq;
9596 };
9697
97
-struct a6xx_hfi_msg_perf_table {
98
+struct perf_gx_level {
99
+ u32 vote;
100
+ u32 acd;
101
+ u32 freq;
102
+};
103
+
104
+struct a6xx_hfi_msg_perf_table_v1 {
98105 u32 header;
99106 u32 num_gpu_levels;
100107 u32 num_gmu_levels;
101108
102109 struct perf_level gx_votes[16];
110
+ struct perf_level cx_votes[4];
111
+};
112
+
113
+struct a6xx_hfi_msg_perf_table {
114
+ u32 header;
115
+ u32 num_gpu_levels;
116
+ u32 num_gmu_levels;
117
+
118
+ struct perf_gx_level gx_votes[16];
103119 struct perf_level cx_votes[4];
104120 };
105121
....@@ -124,4 +140,34 @@
124140 u32 header;
125141 };
126142
143
+#define HFI_H2F_MSG_START 10
144
+
145
+struct a6xx_hfi_msg_start {
146
+ u32 header;
147
+};
148
+
149
+#define HFI_H2F_MSG_CORE_FW_START 14
150
+
151
+struct a6xx_hfi_msg_core_fw_start {
152
+ u32 header;
153
+ u32 handle;
154
+};
155
+
156
+#define HFI_H2F_MSG_GX_BW_PERF_VOTE 30
157
+
158
+struct a6xx_hfi_gx_bw_perf_vote_cmd {
159
+ u32 header;
160
+ u32 ack_type;
161
+ u32 freq;
162
+ u32 bw;
163
+};
164
+
165
+#define HFI_H2F_MSG_PREPARE_SLUMBER 33
166
+
167
+struct a6xx_hfi_prep_slumber_cmd {
168
+ u32 header;
169
+ u32 bw;
170
+ u32 freq;
171
+};
172
+
127173 #endif