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 23enum HAL_CHIP_TYPE { 24 TEST_CHIP = 0, 25 NORMAL_CHIP = 1, 26 FPGA = 2, 27}; 28 29enum 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 39enum HAL_VENDOR { 40 CHIP_VENDOR_TSMC = 0, 41 CHIP_VENDOR_UMC = 1, 42}; 43 44struct 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