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 * You should have received a copy of the GNU General Public License along with 15 * this program; if not, write to the Free Software Foundation, Inc., 16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA 17 * 18 * 19 ******************************************************************************/ 20 #ifndef __HAL_VERSION_DEF_H__ 21 #define __HAL_VERSION_DEF_H__ 22 23 enum HAL_CHIP_TYPE { 24 TEST_CHIP = 0, 25 NORMAL_CHIP = 1, 26 FPGA = 2, 27 }; 28 29 enum HAL_CUT_VERSION { 30 A_CUT_VERSION = 0, 31 B_CUT_VERSION = 1, 32 C_CUT_VERSION = 2, 33 D_CUT_VERSION = 3, 34 E_CUT_VERSION = 4, 35 F_CUT_VERSION = 5, 36 G_CUT_VERSION = 6, 37 }; 38 39 enum HAL_VENDOR { 40 CHIP_VENDOR_TSMC = 0, 41 CHIP_VENDOR_UMC = 1, 42 }; 43 44 struct HAL_VERSION { 45 enum HAL_CHIP_TYPE ChipType; 46 enum HAL_CUT_VERSION CUTVersion; 47 enum HAL_VENDOR VendorType; 48 }; 49 50 /* Get element */ 51 #define GET_CVID_CHIP_TYPE(version) (((version).ChipType)) 52 #define GET_CVID_MANUFACTUER(version) (((version).VendorType)) 53 #define GET_CVID_CUT_VERSION(version) (((version).CUTVersion)) 54 55 /* Common Macro. -- */ 56 /* HAL_VERSION VersionID */ 57 58 /* HAL_CHIP_TYPE_E */ 59 #define IS_TEST_CHIP(version) \ 60 ((GET_CVID_CHIP_TYPE(version) == TEST_CHIP) ? true : false) 61 #define IS_NORMAL_CHIP(version) \ 62 ((GET_CVID_CHIP_TYPE(version) == NORMAL_CHIP) ? true : false) 63 64 /* HAL_CUT_VERSION_E */ 65 #define IS_A_CUT(version) \ 66 ((GET_CVID_CUT_VERSION(version) == A_CUT_VERSION) ? true : false) 67 #define IS_B_CUT(version) \ 68 ((GET_CVID_CUT_VERSION(version) == B_CUT_VERSION) ? true : false) 69 #define IS_C_CUT(version) \ 70 ((GET_CVID_CUT_VERSION(version) == C_CUT_VERSION) ? true : false) 71 #define IS_D_CUT(version) \ 72 ((GET_CVID_CUT_VERSION(version) == D_CUT_VERSION) ? true : false) 73 #define IS_E_CUT(version) \ 74 ((GET_CVID_CUT_VERSION(version) == E_CUT_VERSION) ? true : false) 75 76 77 /* HAL_VENDOR_E */ 78 #define IS_CHIP_VENDOR_TSMC(version) \ 79 ((GET_CVID_MANUFACTUER(version) == CHIP_VENDOR_TSMC) ? true : false) 80 #define IS_CHIP_VENDOR_UMC(version) \ 81 ((GET_CVID_MANUFACTUER(version) == CHIP_VENDOR_UMC) ? true : false) 82 83 #endif 84