1  /*
2   * Copyright (c) 2020 The Linux Foundation. All rights reserved.
3   *
4   * Permission to use, copy, modify, and/or distribute this software for any
5   * purpose with or without fee is hereby granted, provided that the above
6   * copyright notice and this permission notice appear in all copies.
7   *
8   * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9   * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10   * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11   * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12   * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13   * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14   * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15   */
16  
17  // $ATH_LICENSE_HW_HDR_C$
18  //
19  // DO NOT EDIT!  This file is automatically generated
20  //               These definitions are tied to a particular hardware layout
21  
22  
23  #ifndef _L_SIG_B_INFO_H_
24  #define _L_SIG_B_INFO_H_
25  #if !defined(__ASSEMBLER__)
26  #endif
27  
28  
29  // ################ START SUMMARY #################
30  //
31  //	Dword	Fields
32  //	0	rate[3:0], length[15:4], reserved[31:16]
33  //
34  // ################ END SUMMARY #################
35  
36  #define NUM_OF_DWORDS_L_SIG_B_INFO 1
37  
38  struct l_sig_b_info {
39               uint32_t rate                            :  4, //[3:0]
40                        length                          : 12, //[15:4]
41                        reserved                        : 16; //[31:16]
42  };
43  
44  /*
45  
46  rate
47  
48  			<enum 1    dsss_1_mpbs_long> DSSS 1 Mbps long
49  
50  			<enum 2    dsss_2_mbps_long> DSSS 2 Mbps long
51  
52  			<enum 3    cck_5_5_mbps_long> CCK 5.5 Mbps long
53  
54  			<enum 4    cck_11_mbps_long> CCK 11 Mbps long
55  
56  			<enum 5    dsss_2_mbps_short> DSSS 2 Mbps short
57  
58  			<enum 6    cck_5_5_mbps_short> CCK 5.5 Mbps short
59  
60  			<enum 7    cck_11_mbps_short> CCK 11 Mbps short
61  
62  			<legal 1-7>
63  
64  length
65  
66  			The length indicates the number of octets in this MPDU.
67  
68  			<legal all>
69  
70  reserved
71  
72  			Reserved: Should be set to 0 by the transmitting MAC and
73  			ignored by the PHY <legal 0>
74  */
75  
76  
77  /* Description		L_SIG_B_INFO_0_RATE
78  
79  			<enum 1    dsss_1_mpbs_long> DSSS 1 Mbps long
80  
81  			<enum 2    dsss_2_mbps_long> DSSS 2 Mbps long
82  
83  			<enum 3    cck_5_5_mbps_long> CCK 5.5 Mbps long
84  
85  			<enum 4    cck_11_mbps_long> CCK 11 Mbps long
86  
87  			<enum 5    dsss_2_mbps_short> DSSS 2 Mbps short
88  
89  			<enum 6    cck_5_5_mbps_short> CCK 5.5 Mbps short
90  
91  			<enum 7    cck_11_mbps_short> CCK 11 Mbps short
92  
93  			<legal 1-7>
94  */
95  #define L_SIG_B_INFO_0_RATE_OFFSET                                   0x00000000
96  #define L_SIG_B_INFO_0_RATE_LSB                                      0
97  #define L_SIG_B_INFO_0_RATE_MASK                                     0x0000000f
98  
99  /* Description		L_SIG_B_INFO_0_LENGTH
100  
101  			The length indicates the number of octets in this MPDU.
102  
103  			<legal all>
104  */
105  #define L_SIG_B_INFO_0_LENGTH_OFFSET                                 0x00000000
106  #define L_SIG_B_INFO_0_LENGTH_LSB                                    4
107  #define L_SIG_B_INFO_0_LENGTH_MASK                                   0x0000fff0
108  
109  /* Description		L_SIG_B_INFO_0_RESERVED
110  
111  			Reserved: Should be set to 0 by the transmitting MAC and
112  			ignored by the PHY <legal 0>
113  */
114  #define L_SIG_B_INFO_0_RESERVED_OFFSET                               0x00000000
115  #define L_SIG_B_INFO_0_RESERVED_LSB                                  16
116  #define L_SIG_B_INFO_0_RESERVED_MASK                                 0xffff0000
117  
118  
119  #endif // _L_SIG_B_INFO_H_
120