1 /*
2  * Copyright (c) 2019, 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 #ifndef _RX_TIMING_OFFSET_INFO_H_
18 #define _RX_TIMING_OFFSET_INFO_H_
19 #if !defined(__ASSEMBLER__)
20 #endif
21 
22 
23 // ################ START SUMMARY #################
24 //
25 //	Dword	Fields
26 //	0	residual_phase_offset[11:0], reserved[31:12]
27 //
28 // ################ END SUMMARY #################
29 
30 #define NUM_OF_DWORDS_RX_TIMING_OFFSET_INFO 1
31 
32 struct rx_timing_offset_info {
33              uint32_t residual_phase_offset           : 12, //[11:0]
34                       reserved                        : 20; //[31:12]
35 };
36 
37 /*
38 
39 residual_phase_offset
40 
41 			Cumulative reference frequency error at end of RX
42 
43 			<legal all>
44 
45 reserved
46 
47 			<legal 0>
48 */
49 
50 
51 /* Description		RX_TIMING_OFFSET_INFO_0_RESIDUAL_PHASE_OFFSET
52 
53 			Cumulative reference frequency error at end of RX
54 
55 			<legal all>
56 */
57 #define RX_TIMING_OFFSET_INFO_0_RESIDUAL_PHASE_OFFSET_OFFSET         0x00000000
58 #define RX_TIMING_OFFSET_INFO_0_RESIDUAL_PHASE_OFFSET_LSB            0
59 #define RX_TIMING_OFFSET_INFO_0_RESIDUAL_PHASE_OFFSET_MASK           0x00000fff
60 
61 /* Description		RX_TIMING_OFFSET_INFO_0_RESERVED
62 
63 			<legal 0>
64 */
65 #define RX_TIMING_OFFSET_INFO_0_RESERVED_OFFSET                      0x00000000
66 #define RX_TIMING_OFFSET_INFO_0_RESERVED_LSB                         12
67 #define RX_TIMING_OFFSET_INFO_0_RESERVED_MASK                        0xfffff000
68 
69 
70 #endif // _RX_TIMING_OFFSET_INFO_H_
71