1 2 /* 3 * Copyright (c) 2024, Qualcomm Innovation Center, Inc. All rights reserved. 4 * SPDX-License-Identifier: ISC 5 */ 6 7 8 9 10 11 12 13 14 15 16 17 18 19 #ifndef _VHT_SIG_B_SU40_INFO_H_ 20 #define _VHT_SIG_B_SU40_INFO_H_ 21 #if !defined(__ASSEMBLER__) 22 #endif 23 24 #define NUM_OF_DWORDS_VHT_SIG_B_SU40_INFO 2 25 26 27 struct vht_sig_b_su40_info { 28 #ifndef WIFI_BIT_ORDER_BIG_ENDIAN 29 uint32_t length : 19, 30 vhtb_reserved : 2, 31 tail : 6, 32 reserved : 4, 33 rx_ndp : 1; 34 uint32_t length_copy : 19, 35 vhtb_reserved_copy : 2, 36 tail_copy : 6, 37 reserved_copy : 4, 38 rx_ndp_copy : 1; 39 #else 40 uint32_t rx_ndp : 1, 41 reserved : 4, 42 tail : 6, 43 vhtb_reserved : 2, 44 length : 19; 45 uint32_t rx_ndp_copy : 1, 46 reserved_copy : 4, 47 tail_copy : 6, 48 vhtb_reserved_copy : 2, 49 length_copy : 19; 50 #endif 51 }; 52 53 54 55 56 #define VHT_SIG_B_SU40_INFO_LENGTH_OFFSET 0x00000000 57 #define VHT_SIG_B_SU40_INFO_LENGTH_LSB 0 58 #define VHT_SIG_B_SU40_INFO_LENGTH_MSB 18 59 #define VHT_SIG_B_SU40_INFO_LENGTH_MASK 0x0007ffff 60 61 62 63 64 #define VHT_SIG_B_SU40_INFO_VHTB_RESERVED_OFFSET 0x00000000 65 #define VHT_SIG_B_SU40_INFO_VHTB_RESERVED_LSB 19 66 #define VHT_SIG_B_SU40_INFO_VHTB_RESERVED_MSB 20 67 #define VHT_SIG_B_SU40_INFO_VHTB_RESERVED_MASK 0x00180000 68 69 70 71 72 #define VHT_SIG_B_SU40_INFO_TAIL_OFFSET 0x00000000 73 #define VHT_SIG_B_SU40_INFO_TAIL_LSB 21 74 #define VHT_SIG_B_SU40_INFO_TAIL_MSB 26 75 #define VHT_SIG_B_SU40_INFO_TAIL_MASK 0x07e00000 76 77 78 79 80 #define VHT_SIG_B_SU40_INFO_RESERVED_OFFSET 0x00000000 81 #define VHT_SIG_B_SU40_INFO_RESERVED_LSB 27 82 #define VHT_SIG_B_SU40_INFO_RESERVED_MSB 30 83 #define VHT_SIG_B_SU40_INFO_RESERVED_MASK 0x78000000 84 85 86 87 88 #define VHT_SIG_B_SU40_INFO_RX_NDP_OFFSET 0x00000000 89 #define VHT_SIG_B_SU40_INFO_RX_NDP_LSB 31 90 #define VHT_SIG_B_SU40_INFO_RX_NDP_MSB 31 91 #define VHT_SIG_B_SU40_INFO_RX_NDP_MASK 0x80000000 92 93 94 95 96 #define VHT_SIG_B_SU40_INFO_LENGTH_COPY_OFFSET 0x00000004 97 #define VHT_SIG_B_SU40_INFO_LENGTH_COPY_LSB 0 98 #define VHT_SIG_B_SU40_INFO_LENGTH_COPY_MSB 18 99 #define VHT_SIG_B_SU40_INFO_LENGTH_COPY_MASK 0x0007ffff 100 101 102 103 104 #define VHT_SIG_B_SU40_INFO_VHTB_RESERVED_COPY_OFFSET 0x00000004 105 #define VHT_SIG_B_SU40_INFO_VHTB_RESERVED_COPY_LSB 19 106 #define VHT_SIG_B_SU40_INFO_VHTB_RESERVED_COPY_MSB 20 107 #define VHT_SIG_B_SU40_INFO_VHTB_RESERVED_COPY_MASK 0x00180000 108 109 110 111 112 #define VHT_SIG_B_SU40_INFO_TAIL_COPY_OFFSET 0x00000004 113 #define VHT_SIG_B_SU40_INFO_TAIL_COPY_LSB 21 114 #define VHT_SIG_B_SU40_INFO_TAIL_COPY_MSB 26 115 #define VHT_SIG_B_SU40_INFO_TAIL_COPY_MASK 0x07e00000 116 117 118 119 120 #define VHT_SIG_B_SU40_INFO_RESERVED_COPY_OFFSET 0x00000004 121 #define VHT_SIG_B_SU40_INFO_RESERVED_COPY_LSB 27 122 #define VHT_SIG_B_SU40_INFO_RESERVED_COPY_MSB 30 123 #define VHT_SIG_B_SU40_INFO_RESERVED_COPY_MASK 0x78000000 124 125 126 127 128 #define VHT_SIG_B_SU40_INFO_RX_NDP_COPY_OFFSET 0x00000004 129 #define VHT_SIG_B_SU40_INFO_RX_NDP_COPY_LSB 31 130 #define VHT_SIG_B_SU40_INFO_RX_NDP_COPY_MSB 31 131 #define VHT_SIG_B_SU40_INFO_RX_NDP_COPY_MASK 0x80000000 132 133 134 135 #endif 136