/******************************************************************************
 *
 * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved.
 *
 * This program is free software; you can redistribute it and/or modify it
 * under the terms of version 2 of the GNU General Public License as
 * published by the Free Software Foundation.
 *
 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
 * more details.
 *
 ******************************************************************************/

#ifndef	__ODM_REGDEFINE11N_H__
#define __ODM_REGDEFINE11N_H__


/* 2 RF REG LIST */
#define	ODM_REG_RF_MODE_11N			0x00
#define	ODM_REG_RF_0B_11N			0x0B
#define	ODM_REG_CHNBW_11N			0x18
#define	ODM_REG_T_METER_11N			0x24
#define	ODM_REG_RF_25_11N			0x25
#define	ODM_REG_RF_26_11N			0x26
#define	ODM_REG_RF_27_11N			0x27
#define	ODM_REG_RF_2B_11N			0x2B
#define	ODM_REG_RF_2C_11N			0x2C
#define	ODM_REG_RXRF_A3_11N			0x3C
#define	ODM_REG_T_METER_92D_11N			0x42
#define	ODM_REG_T_METER_88E_11N			0x42



/* 2 BB REG LIST */
/* PAGE 8 */
#define	ODM_REG_BB_CTRL_11N			0x800
#define	ODM_REG_RF_PIN_11N			0x804
#define	ODM_REG_PSD_CTRL_11N			0x808
#define	ODM_REG_TX_ANT_CTRL_11N			0x80C
#define	ODM_REG_BB_PWR_SAV5_11N			0x818
#define	ODM_REG_CCK_RPT_FORMAT_11N		0x824
#define	ODM_REG_RX_DEFUALT_A_11N		0x858
#define	ODM_REG_RX_DEFUALT_B_11N		0x85A
#define	ODM_REG_BB_PWR_SAV3_11N			0x85C
#define	ODM_REG_ANTSEL_CTRL_11N			0x860
#define	ODM_REG_RX_ANT_CTRL_11N			0x864
#define	ODM_REG_PIN_CTRL_11N			0x870
#define	ODM_REG_BB_PWR_SAV1_11N			0x874
#define	ODM_REG_ANTSEL_PATH_11N			0x878
#define	ODM_REG_BB_3WIRE_11N			0x88C
#define	ODM_REG_SC_CNT_11N			0x8C4
#define	ODM_REG_PSD_DATA_11N			0x8B4
/* PAGE 9 */
#define	ODM_REG_ANT_MAPPING1_11N		0x914
#define	ODM_REG_ANT_MAPPING2_11N		0x918
/* PAGE A */
#define	ODM_REG_CCK_ANTDIV_PARA1_11N		0xA00
#define	ODM_REG_CCK_CCA_11N			0xA0A
#define	ODM_REG_CCK_ANTDIV_PARA2_11N		0xA0C
#define	ODM_REG_CCK_ANTDIV_PARA3_11N		0xA10
#define	ODM_REG_CCK_ANTDIV_PARA4_11N		0xA14
#define	ODM_REG_CCK_FILTER_PARA1_11N		0xA22
#define	ODM_REG_CCK_FILTER_PARA2_11N		0xA23
#define	ODM_REG_CCK_FILTER_PARA3_11N		0xA24
#define	ODM_REG_CCK_FILTER_PARA4_11N		0xA25
#define	ODM_REG_CCK_FILTER_PARA5_11N		0xA26
#define	ODM_REG_CCK_FILTER_PARA6_11N		0xA27
#define	ODM_REG_CCK_FILTER_PARA7_11N		0xA28
#define	ODM_REG_CCK_FILTER_PARA8_11N		0xA29
#define	ODM_REG_CCK_FA_RST_11N			0xA2C
#define	ODM_REG_CCK_FA_MSB_11N			0xA58
#define	ODM_REG_CCK_FA_LSB_11N			0xA5C
#define	ODM_REG_CCK_CCA_CNT_11N			0xA60
#define	ODM_REG_BB_PWR_SAV4_11N			0xA74
/* PAGE B */
#define	ODM_REG_LNA_SWITCH_11N			0xB2C
#define	ODM_REG_PATH_SWITCH_11N			0xB30
#define	ODM_REG_RSSI_CTRL_11N			0xB38
#define	ODM_REG_CONFIG_ANTA_11N			0xB68
#define	ODM_REG_RSSI_BT_11N			0xB9C
/* PAGE C */
#define	ODM_REG_OFDM_FA_HOLDC_11N		0xC00
#define	ODM_REG_RX_PATH_11N			0xC04
#define	ODM_REG_TRMUX_11N			0xC08
#define	ODM_REG_OFDM_FA_RSTC_11N		0xC0C
#define	ODM_REG_RXIQI_MATRIX_11N		0xC14
#define	ODM_REG_TXIQK_MATRIX_LSB1_11N		0xC4C
#define	ODM_REG_IGI_A_11N			0xC50
#define	ODM_REG_ANTDIV_PARA2_11N		0xC54
#define	ODM_REG_IGI_B_11N			0xC58
#define	ODM_REG_ANTDIV_PARA3_11N		0xC5C
#define	ODM_REG_BB_PWR_SAV2_11N			0xC70
#define	ODM_REG_RX_OFF_11N			0xC7C
#define	ODM_REG_TXIQK_MATRIXA_11N		0xC80
#define	ODM_REG_TXIQK_MATRIXB_11N		0xC88
#define	ODM_REG_TXIQK_MATRIXA_LSB2_11N		0xC94
#define	ODM_REG_TXIQK_MATRIXB_LSB2_11N		0xC9C
#define	ODM_REG_RXIQK_MATRIX_LSB_11N		0xCA0
#define	ODM_REG_ANTDIV_PARA1_11N		0xCA4
#define	ODM_REG_OFDM_FA_TYPE1_11N		0xCF0
/* PAGE D */
#define	ODM_REG_OFDM_FA_RSTD_11N		0xD00
#define	ODM_REG_OFDM_FA_TYPE2_11N		0xDA0
#define	ODM_REG_OFDM_FA_TYPE3_11N		0xDA4
#define	ODM_REG_OFDM_FA_TYPE4_11N		0xDA8
/* PAGE E */
#define	ODM_REG_TXAGC_A_6_18_11N		0xE00
#define	ODM_REG_TXAGC_A_24_54_11N		0xE04
#define	ODM_REG_TXAGC_A_1_MCS32_11N		0xE08
#define	ODM_REG_TXAGC_A_MCS0_3_11N		0xE10
#define	ODM_REG_TXAGC_A_MCS4_7_11N		0xE14
#define	ODM_REG_TXAGC_A_MCS8_11_11N		0xE18
#define	ODM_REG_TXAGC_A_MCS12_15_11N		0xE1C
#define	ODM_REG_FPGA0_IQK_11N			0xE28
#define	ODM_REG_TXIQK_TONE_A_11N		0xE30
#define	ODM_REG_RXIQK_TONE_A_11N		0xE34
#define	ODM_REG_TXIQK_PI_A_11N			0xE38
#define	ODM_REG_RXIQK_PI_A_11N			0xE3C
#define	ODM_REG_TXIQK_11N			0xE40
#define	ODM_REG_RXIQK_11N			0xE44
#define	ODM_REG_IQK_AGC_PTS_11N			0xE48
#define	ODM_REG_IQK_AGC_RSP_11N			0xE4C
#define	ODM_REG_BLUETOOTH_11N			0xE6C
#define	ODM_REG_RX_WAIT_CCA_11N			0xE70
#define	ODM_REG_TX_CCK_RFON_11N			0xE74
#define	ODM_REG_TX_CCK_BBON_11N			0xE78
#define	ODM_REG_OFDM_RFON_11N			0xE7C
#define	ODM_REG_OFDM_BBON_11N			0xE80
#define ODM_REG_TX2RX_11N			0xE84
#define	ODM_REG_TX2TX_11N			0xE88
#define	ODM_REG_RX_CCK_11N			0xE8C
#define	ODM_REG_RX_OFDM_11N			0xED0
#define	ODM_REG_RX_WAIT_RIFS_11N		0xED4
#define	ODM_REG_RX2RX_11N			0xED8
#define	ODM_REG_STANDBY_11N			0xEDC
#define	ODM_REG_SLEEP_11N			0xEE0
#define	ODM_REG_PMPD_ANAEN_11N			0xEEC







/* 2 MAC REG LIST */
#define	ODM_REG_BB_RST_11N			0x02
#define	ODM_REG_ANTSEL_PIN_11N			0x4C
#define	ODM_REG_EARLY_MODE_11N			0x4D0
#define	ODM_REG_RSSI_MONITOR_11N		0x4FE
#define	ODM_REG_EDCA_VO_11N			0x500
#define	ODM_REG_EDCA_VI_11N			0x504
#define	ODM_REG_EDCA_BE_11N			0x508
#define	ODM_REG_EDCA_BK_11N			0x50C
#define	ODM_REG_TXPAUSE_11N			0x522
#define	ODM_REG_RESP_TX_11N			0x6D8
#define	ODM_REG_ANT_TRAIN_PARA1_11N		0x7b0
#define	ODM_REG_ANT_TRAIN_PARA2_11N		0x7b4


/* DIG Related */
#define	ODM_BIT_IGI_11N				0x0000007F

#endif
