Lines Matching refs:packet
142 #define cl_packet_header(packet) V3DX(packet ## _header) argument
143 #define cl_packet_length(packet) V3DX(packet ## _length) argument
144 #define cl_aligned_packet_length(packet, alignment) ALIGN(cl_packet_length(packet), alignment) argument
145 #define cl_packet_pack(packet) V3DX(packet ## _pack) argument
146 #define cl_packet_struct(packet) V3DX(packet) argument
162 #define cl_emit(cl, packet, name) \ argument
163 for (struct cl_packet_struct(packet) name = { \
164 cl_packet_header(packet) \
170 cl_packet_pack(packet)(cl, (uint8_t *)cl_out, &name); \
171 cl_advance(&cl_out, cl_packet_length(packet)); \
176 #define cl_emit_with_prepacked(cl, packet, prepacked, name) \ argument
177 for (struct cl_packet_struct(packet) name = { \
178 cl_packet_header(packet) \
184 uint8_t packed[cl_packet_length(packet)]; \
185 cl_packet_pack(packet)(cl, packed, &name); \
186 for (int _i = 0; _i < cl_packet_length(packet); _i++) \
188 cl_advance(&cl_out, cl_packet_length(packet)); \
208 #define cl_emit_prepacked_sized(cl, packet, size) do { \ argument
209 memcpy((cl)->next, packet, size); \
213 #define cl_emit_prepacked(cl, packet) \ argument
214 cl_emit_prepacked_sized(cl, packet, sizeof(*(packet)))
216 #define v3dv_pack(packed, packet, name) \ argument
217 for (struct cl_packet_struct(packet) name = { \
218 cl_packet_header(packet) \
223 cl_packet_pack(packet)(NULL, (uint8_t *)packed, &name); \
225 cl_packet_length(packet))); \