1  /* SPDX-License-Identifier: GPL-2.0 */
2  /******************************************************************************
3   *
4   * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved.
5   *
6   ******************************************************************************/
7  
8  
9  #ifndef	__ODM_INTERFACE_H__
10  #define __ODM_INTERFACE_H__
11  
12  
13  
14  /*  =========== Macro Define */
15  
16  #define _reg_all(_name)			ODM_##_name
17  #define _reg_ic(_name, _ic)		ODM_##_name##_ic
18  #define _bit_all(_name)			BIT_##_name
19  #define _bit_ic(_name, _ic)		BIT_##_name##_ic
20  
21  /*===================================
22  
23  #define ODM_REG_DIG_11N		0xC50
24  #define ODM_REG_DIG_11AC	0xDDD
25  
26  ODM_REG(DIG, _pDM_Odm)
27  =====================================*/
28  
29  #define _reg_11N(_name)			ODM_REG_##_name##_11N
30  #define _bit_11N(_name)			ODM_BIT_##_name##_11N
31  
32  #define _cat(_name, _ic_type, _func) _func##_11N(_name)
33  
34  /*  _name: name of register or bit. */
35  /*  Example: "ODM_REG(R_A_AGC_CORE1, pDM_Odm)" */
36  /*         gets "ODM_R_A_AGC_CORE1" or "ODM_R_A_AGC_CORE1_8192C", depends on SupportICType. */
37  #define ODM_REG(_name, _pDM_Odm)	_cat(_name, _pDM_Odm->SupportICType, _reg)
38  #define ODM_BIT(_name, _pDM_Odm)	_cat(_name, _pDM_Odm->SupportICType, _bit)
39  
40  #endif	/*  __ODM_INTERFACE_H__ */
41