]> Git Repo - linux.git/blob - drivers/staging/rtl8723au/include/HalVerDef.h
selinux: Remove security_ops extern
[linux.git] / drivers / staging / rtl8723au / include / HalVerDef.h
1 /******************************************************************************
2  *
3  * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved.
4  *
5  * This program is free software; you can redistribute it and/or modify it
6  * under the terms of version 2 of the GNU General Public License as
7  * published by the Free Software Foundation.
8  *
9  * This program is distributed in the hope that it will be useful, but WITHOUT
10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11  * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12  * more details.
13  *
14  ******************************************************************************/
15 #ifndef __HAL_VERSION_DEF_H__
16 #define __HAL_VERSION_DEF_H__
17
18 enum hal_ic_type {
19         CHIP_8192S              =       0,
20         CHIP_8188C      =       1,
21         CHIP_8192C      =       2,
22         CHIP_8192D      =       3,
23         CHIP_8723A      =       4,
24         CHIP_8188E      =       5,
25         CHIP_8881A      =       6,
26         CHIP_8812A      =       7,
27         CHIP_8821A      =       8,
28         CHIP_8723B      =       9,
29         CHIP_8192E              =       10,
30 };
31
32 enum hal_chip_type {
33         TEST_CHIP               =       0,
34         NORMAL_CHIP             =       1,
35         FPGA                    =       2,
36 };
37
38 enum hal_cut_version {
39         A_CUT_VERSION           =       0,
40         B_CUT_VERSION           =       1,
41         C_CUT_VERSION           =       2,
42         D_CUT_VERSION           =       3,
43         E_CUT_VERSION           =       4,
44         F_CUT_VERSION           =       5,
45         G_CUT_VERSION           =       6,
46 };
47
48 /*  HAL_Manufacturer */
49 enum hal_vendor {
50         CHIP_VENDOR_TSMC        =       0,
51         CHIP_VENDOR_UMC         =       1,
52 };
53
54 enum hal_rf_type {
55         RF_TYPE_1T1R    =       0,
56         RF_TYPE_1T2R    =       1,
57         RF_TYPE_2T2R    =       2,
58         RF_TYPE_2T3R    =       3,
59         RF_TYPE_2T4R    =       4,
60         RF_TYPE_3T3R    =       5,
61         RF_TYPE_3T4R    =       6,
62         RF_TYPE_4T4R    =       7,
63 };
64
65 struct hal_version {
66         enum hal_ic_type        ICType;
67         enum hal_chip_type      ChipType;
68         enum hal_cut_version    CUTVersion;
69         enum hal_vendor         VendorType;
70         enum hal_rf_type        RFType;
71         u8                      ROMVer;
72 };
73
74 /*  Get element */
75 #define GET_CVID_IC_TYPE(version)       ((version).ICType)
76 #define GET_CVID_CHIP_TYPE(version)     ((version).ChipType)
77 #define GET_CVID_RF_TYPE(version)       ((version).RFType)
78 #define GET_CVID_MANUFACTUER(version)   ((version).VendorType)
79 #define GET_CVID_CUT_VERSION(version)   ((version).CUTVersion)
80 #define GET_CVID_ROM_VERSION(version)   (((version).ROMVer) & ROM_VERSION_MASK)
81
82 /* Common Macro. -- */
83
84 #define IS_81XXC(version)                       \
85         (((GET_CVID_IC_TYPE(version) == CHIP_8192C) ||  \
86          (GET_CVID_IC_TYPE(version) == CHIP_8188C)) ? true : false)
87 #define IS_8723_SERIES(version)                 \
88         ((GET_CVID_IC_TYPE(version) == CHIP_8723A) ? true : false)
89
90 #define IS_TEST_CHIP(version)                   \
91         ((GET_CVID_CHIP_TYPE(version) == TEST_CHIP) ? true : false)
92 #define IS_NORMAL_CHIP(version)                 \
93         ((GET_CVID_CHIP_TYPE(version) == NORMAL_CHIP) ? true : false)
94
95 #define IS_A_CUT(version)                       \
96         ((GET_CVID_CUT_VERSION(version) == A_CUT_VERSION) ? true : false)
97 #define IS_B_CUT(version)                       \
98         ((GET_CVID_CUT_VERSION(version) == B_CUT_VERSION) ? true : false)
99 #define IS_C_CUT(version)                       \
100         ((GET_CVID_CUT_VERSION(version) == C_CUT_VERSION) ? true : false)
101 #define IS_D_CUT(version)                       \
102         ((GET_CVID_CUT_VERSION(version) == D_CUT_VERSION) ? true : false)
103 #define IS_E_CUT(version)                       \
104         ((GET_CVID_CUT_VERSION(version) == E_CUT_VERSION) ? true : false)
105
106 #define IS_CHIP_VENDOR_TSMC(version)            \
107         ((GET_CVID_MANUFACTUER(version) == CHIP_VENDOR_TSMC) ? true : false)
108 #define IS_CHIP_VENDOR_UMC(version)             \
109         ((GET_CVID_MANUFACTUER(version) == CHIP_VENDOR_UMC) ? true : false)
110
111 #define IS_1T1R(version)                        \
112         ((GET_CVID_RF_TYPE(version) == RF_TYPE_1T1R) ? true : false)
113 #define IS_1T2R(version)                        \
114         ((GET_CVID_RF_TYPE(version) == RF_TYPE_1T2R) ? true : false)
115 #define IS_2T2R(version)                        \
116         ((GET_CVID_RF_TYPE(version) == RF_TYPE_2T2R) ? true : false)
117
118 /* Chip version Macro. -- */
119
120 #define IS_92C_SERIAL(version)                                  \
121         ((IS_81XXC(version) && IS_2T2R(version)) ? true : false)
122 #define IS_81xxC_VENDOR_UMC_A_CUT(version)                      \
123         (IS_81XXC(version)?(IS_CHIP_VENDOR_UMC(version) ?       \
124         (IS_A_CUT(version) ? true : false) : false) : false)
125 #define IS_81xxC_VENDOR_UMC_B_CUT(version)                      \
126         (IS_81XXC(version) ? (IS_CHIP_VENDOR_UMC(version) ?     \
127          (IS_B_CUT(version) ? true : false) : false): false)
128 #define IS_81xxC_VENDOR_UMC_C_CUT(version)                      \
129         (IS_81XXC(version)?(IS_CHIP_VENDOR_UMC(version) ?       \
130         (IS_C_CUT(version) ? true : false) : false) : false)
131 #define IS_8723A_A_CUT(version)                         \
132         ((IS_8723_SERIES(version)) ? (IS_A_CUT(version) ? true : false) : false)
133 #define IS_8723A_B_CUT(version)                                 \
134         ((IS_8723_SERIES(version)) ? (IS_B_CUT(version) ? true : false) : false)
135
136 #endif
This page took 0.041974 seconds and 4 git commands to generate.