*pbuf = (u8)(value32 & 0xff);
 }
 
-/*  */
-/*     Description: */
-/*             1. Execute E-Fuse read byte operation according as map offset and */
-/*                 save to E-Fuse table. */
-/*             2. Referred from SD1 Richard. */
-/*  */
-/*     Assumption: */
-/*             1. Boot from E-Fuse and successfully auto-load. */
-/*             2. PASSIVE_LEVEL (USB interface) */
-/*  */
-/*     Created by Roger, 2008.10.21. */
-/*  */
-/*     2008/12/12 MH   1. Reorganize code flow and reserve bytes. and add description. */
-/*                                     2. Add efuse utilization collect. */
-/*     2008/12/22 MH   Read Efuse must check if we write section 1 data again!!! Sec1 */
-/*                                     write addr must be after sec5. */
-/*  */
-
-void EFUSE_GetEfuseDefinition(struct adapter *pAdapter, u8 efuseType, u8 type, void *pOut, bool pseudo
-       )
-{
-       pAdapter->HalFunc.EFUSEGetEfuseDefinition(pAdapter, efuseType, type, pOut, pseudo);
-}
-
 /*-----------------------------------------------------------------------------
  * Function:   EFUSE_Read1Byte
  *
        u32 k = 0;
        u16 contentLen = 0;
 
-       EFUSE_GetEfuseDefinition(Adapter, EFUSE_WIFI, TYPE_EFUSE_REAL_CONTENT_LEN, (void *)&contentLen, false);
+       rtl8188e_EFUSE_GetEfuseDefinition(Adapter, EFUSE_WIFI, TYPE_EFUSE_REAL_CONTENT_LEN, (void *)&contentLen, false);
 
        if (Address < contentLen) {     /* E-fuse 512Byte */
                /* Write E-fuse Register address bit0~7 */
        u8 res = _FAIL;
        u8 (*rw8)(struct adapter *, u16, u8*);
 
-       EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_EFUSE_REAL_CONTENT_LEN, (void *)&real_content_len, false);
-       EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_available_size, false);
+       rtl8188e_EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_EFUSE_REAL_CONTENT_LEN, (void *)&real_content_len, false);
+       rtl8188e_EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_available_size, false);
 
        if (start_addr > real_content_len)
                return _FAIL;
 u16 efuse_GetMaxSize(struct adapter *padapter)
 {
        u16 max_size;
-       EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_size, false);
+       rtl8188e_EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_size, false);
        return max_size;
 }
 /*  */
 {
        u16 mapLen = 0;
 
-       EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_EFUSE_MAP_LEN, (void *)&mapLen, false);
+       rtl8188e_EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_EFUSE_MAP_LEN, (void *)&mapLen, false);
 
        if ((addr + cnts) > mapLen)
                return _FAIL;
 {
        u16 mapLen = 0;
 
-       EFUSE_GetEfuseDefinition(padapter, EFUSE_BT, TYPE_EFUSE_MAP_LEN, (void *)&mapLen, false);
+       rtl8188e_EFUSE_GetEfuseDefinition(padapter, EFUSE_BT, TYPE_EFUSE_MAP_LEN, (void *)&mapLen, false);
 
        if ((addr + cnts) > mapLen)
                return _FAIL;
        u8 ret = _SUCCESS;
        u16 mapLen = 0;
 
-       EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_EFUSE_MAP_LEN, (void *)&mapLen, false);
+       rtl8188e_EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_EFUSE_MAP_LEN, (void *)&mapLen, false);
 
        if ((addr + cnts) > mapLen)
                return _FAIL;
        u8 ret = _SUCCESS;
        u16 mapLen = 0;
 
-       EFUSE_GetEfuseDefinition(padapter, EFUSE_BT, TYPE_EFUSE_MAP_LEN, (void *)&mapLen, false);
+       rtl8188e_EFUSE_GetEfuseDefinition(padapter, EFUSE_BT, TYPE_EFUSE_MAP_LEN, (void *)&mapLen, false);
 
        if ((addr + cnts) > mapLen)
                return _FAIL;
 
        rtl8188e_EfusePowerSwitch(pAdapter, false, true);
 
-       EFUSE_GetEfuseDefinition(pAdapter, efuseType, TYPE_EFUSE_MAP_LEN, (void *)&mapLen, pseudo);
+       rtl8188e_EFUSE_GetEfuseDefinition(pAdapter, efuseType, TYPE_EFUSE_MAP_LEN, (void *)&mapLen, pseudo);
 
        rtl8188e_ReadEFuse(pAdapter, efuseType, 0, mapLen, Efuse, pseudo);
 
        struct eeprom_priv *pEEPROM = GET_EEPROM_EFUSE_PRIV(pAdapter);
        u16 mapLen = 0;
 
-       EFUSE_GetEfuseDefinition(pAdapter, efuseType, TYPE_EFUSE_MAP_LEN, (void *)&mapLen, pseudo);
+       rtl8188e_EFUSE_GetEfuseDefinition(pAdapter, efuseType, TYPE_EFUSE_MAP_LEN, (void *)&mapLen, pseudo);
 
        if (pEEPROM->bautoload_fail_flag)
                memset(pEEPROM->efuse_eeprom_data, 0xFF, mapLen);
 
        cnts = pefuse->cnts;
        data = pefuse->data;
 
-       EFUSE_GetEfuseDefinition(Adapter, EFUSE_WIFI, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_available_size, false);
+       rtl8188e_EFUSE_GetEfuseDefinition(Adapter, EFUSE_WIFI, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_available_size, false);
 
        if ((addr + cnts) > max_available_size)
                return NDIS_STATUS_NOT_ACCEPTED;
        cnts = pefuse->cnts;
        data = pefuse->data;
 
-       EFUSE_GetEfuseDefinition(Adapter, EFUSE_WIFI, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_available_size, false);
+       rtl8188e_EFUSE_GetEfuseDefinition(Adapter, EFUSE_WIFI, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_available_size, false);
 
        if ((addr + cnts) > max_available_size)
                return NDIS_STATUS_NOT_ACCEPTED;
        struct adapter *Adapter = (struct adapter *)(poid_par_priv->adapter_context);
        u16     maplen = 0;
 
-       EFUSE_GetEfuseDefinition(Adapter, EFUSE_WIFI, TYPE_EFUSE_MAP_LEN, (void *)&maplen, false);
+       rtl8188e_EFUSE_GetEfuseDefinition(Adapter, EFUSE_WIFI, TYPE_EFUSE_MAP_LEN, (void *)&maplen, false);
 
        *poid_par_priv->bytes_rw = 0;
 
 
        }
 }
 
-static void rtl8188e_EFUSE_GetEfuseDefinition(struct adapter *pAdapter, u8 efuseType, u8 type, void *pOut, bool bPseudoTest)
+void rtl8188e_EFUSE_GetEfuseDefinition(struct adapter *pAdapter, u8 efuseType, u8 type, void *pOut, bool bPseudoTest)
 {
        if (bPseudoTest)
                Hal_EFUSEGetEfuseDefinition_Pseudo88E(pAdapter, efuseType, type, pOut);
        u8 max_section = 0;
        u8 tmp_header = 0;
 
-       EFUSE_GetEfuseDefinition(pAdapter, EFUSE_WIFI, TYPE_EFUSE_MAX_SECTION, (void *)&max_section, bPseudoTest);
+       rtl8188e_EFUSE_GetEfuseDefinition(pAdapter, EFUSE_WIFI, TYPE_EFUSE_MAX_SECTION, (void *)&max_section, bPseudoTest);
 
        if (!data)
                return false;
        u8 pg_header = 0, tmp_header = 0, pg_header_temp = 0;
        u8 repeatcnt = 0;
 
-       EFUSE_GetEfuseDefinition(pAdapter, efuseType, TYPE_AVAILABLE_EFUSE_BYTES_BANK, (void *)&efuse_max_available_len, bPseudoTest);
+       rtl8188e_EFUSE_GetEfuseDefinition(pAdapter, efuseType, TYPE_AVAILABLE_EFUSE_BYTES_BANK, (void *)&efuse_max_available_len, bPseudoTest);
 
        while (efuse_addr < efuse_max_available_len) {
                pg_header = ((pTargetPkt->offset & 0x07) << 5) | 0x0F;
        u16     startAddr = 0, efuse_max_available_len = 0, efuse_max = 0;
        struct pgpkt curPkt;
 
-       EFUSE_GetEfuseDefinition(pAdapter, efuseType, TYPE_AVAILABLE_EFUSE_BYTES_BANK, (void *)&efuse_max_available_len, bPseudoTest);
-       EFUSE_GetEfuseDefinition(pAdapter, efuseType, TYPE_EFUSE_REAL_CONTENT_LEN, (void *)&efuse_max, bPseudoTest);
+       rtl8188e_EFUSE_GetEfuseDefinition(pAdapter, efuseType, TYPE_AVAILABLE_EFUSE_BYTES_BANK, (void *)&efuse_max_available_len, bPseudoTest);
+       rtl8188e_EFUSE_GetEfuseDefinition(pAdapter, efuseType, TYPE_EFUSE_REAL_CONTENT_LEN, (void *)&efuse_max, bPseudoTest);
 
        if (efuseType == EFUSE_WIFI) {
                if (bPseudoTest) {
        u16     efuse_max_available_len = 0;
 
        /* Change to check TYPE_EFUSE_MAP_LEN , because 8188E raw 256, logic map over 256. */
-       EFUSE_GetEfuseDefinition(pAdapter, EFUSE_WIFI, TYPE_EFUSE_MAP_LEN, (void *)&efuse_max_available_len, false);
+       rtl8188e_EFUSE_GetEfuseDefinition(pAdapter, EFUSE_WIFI, TYPE_EFUSE_MAP_LEN, (void *)&efuse_max_available_len, false);
 
        if (Efuse_GetCurrentSize(pAdapter, efuseType, bPseudoTest) >= efuse_max_available_len)
                return false;
        pHalFunc->write_rfreg = &rtl8188e_PHY_SetRFReg;
 
        /*  Efuse related function */
-       pHalFunc->EFUSEGetEfuseDefinition = &rtl8188e_EFUSE_GetEfuseDefinition;
        pHalFunc->EfuseGetCurrentSize = &rtl8188e_EfuseGetCurrentSize;
        pHalFunc->Efuse_PgPacketRead = &rtl8188e_Efuse_PgPacketRead;
        pHalFunc->Efuse_PgPacketWrite = &rtl8188e_Efuse_PgPacketWrite;
 
                               enum rf_radio_path eRFPath, u32 RegAddr,
                               u32 BitMask, u32 Data);
 
-       void (*EFUSEGetEfuseDefinition)(struct adapter *padapter, u8 efuseType,
-                                       u8 type, void *pOut, bool bPseudoTest);
        u16     (*EfuseGetCurrentSize)(struct adapter *padapter, u8 efuseType,
                                       bool bPseudoTest);
        int     (*Efuse_PgPacketRead)(struct adapter *adapter, u8 offset,
 void rtl8188e_ReadEFuse(struct adapter *Adapter, u8 efuseType,
                        u16 _offset, u16 _size_byte, u8 *pbuf,
                        bool bPseudoTest);
+void rtl8188e_EFUSE_GetEfuseDefinition(struct adapter *pAdapter, u8 efuseType,
+                                      u8 type, void *pOut, bool bPseudoTest);
 
 void   rtw_hal_free_data(struct adapter *padapter);
 uint rtw_hal_init(struct adapter *padapter);
 
 u16 Efuse_GetCurrentSize(struct adapter *adapter, u8 efusetype, bool test);
 u8 Efuse_CalculateWordCnts(u8 word_en);
 void ReadEFuseByte(struct adapter *adapter, u16 _offset, u8 *pbuf, bool test);
-void EFUSE_GetEfuseDefinition(struct adapter *adapt, u8 type, u8 type1,
-                             void *out, bool bPseudoTest);
 u8 efuse_OneByteRead(struct adapter *adapter, u16 addr, u8 *data, bool test);
 u8 efuse_OneByteWrite(struct adapter *adapter, u16 addr, u8 data, bool test);
 
 
                }
                DBG_88E("%s: cnts =%d\n", __func__, cnts);
 
-               EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_available_size, false);
+               rtl8188e_EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_available_size, false);
                if ((addr + cnts) > max_available_size) {
                        DBG_88E("%s: addr(0x%X)+cnts(%d) parameter error!\n", __func__, addr, cnts);
                        err = -EINVAL;
        } else if (strcmp(tmp[0], "mac") == 0) {
                cnts = 6;
 
-               EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_available_size, false);
+               rtl8188e_EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_available_size, false);
                if ((addr + cnts) > max_available_size) {
                        DBG_88E("%s: addr(0x%02x)+cnts(%d) parameter error!\n", __func__, addr, cnts);
                        err = -EFAULT;
        } else if (strcmp(tmp[0], "vidpid") == 0) {
                cnts = 4;
 
-               EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_available_size, false);
+               rtl8188e_EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_available_size, false);
                if ((addr + cnts) > max_available_size) {
                        DBG_88E("%s: addr(0x%02x)+cnts(%d) parameter error!\n", __func__, addr, cnts);
                        err = -EFAULT;
                }
                DBG_88E("%s: cnts =%d\n", __func__, cnts);
 
-               EFUSE_GetEfuseDefinition(padapter, EFUSE_BT, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_available_size, false);
+               rtl8188e_EFUSE_GetEfuseDefinition(padapter, EFUSE_BT, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_available_size, false);
                if ((addr + cnts) > max_available_size) {
                        DBG_88E("%s: addr(0x%X)+cnts(%d) parameter error!\n", __func__, addr, cnts);
                        err = -EFAULT;
                for (jj = 0, kk = 0; jj < cnts; jj++, kk += 2)
                        setdata[jj] = key_2char2num(tmp[2][kk], tmp[2][kk + 1]);
                /* Change to check TYPE_EFUSE_MAP_LEN, because 8188E raw 256, logic map over 256. */
-               EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_EFUSE_MAP_LEN, (void *)&max_available_size, false);
+               rtl8188e_EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_EFUSE_MAP_LEN, (void *)&max_available_size, false);
                if ((addr + cnts) > max_available_size) {
                        DBG_88E("%s: addr(0x%X)+cnts(%d) parameter error!\n", __func__, addr, cnts);
                        err = -EFAULT;
                for (jj = 0, kk = 0; jj < cnts; jj++, kk += 2)
                        setdata[jj] = key_2char2num(tmp[1][kk], tmp[1][kk + 1]);
                /* Change to check TYPE_EFUSE_MAP_LEN, because 8188E raw 256, logic map over 256. */
-               EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_EFUSE_MAP_LEN, (void *)&max_available_size, false);
+               rtl8188e_EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_EFUSE_MAP_LEN, (void *)&max_available_size, false);
                if ((addr + cnts) > max_available_size) {
                        DBG_88E("%s: addr(0x%X)+cnts(%d) parameter error!\n", __func__, addr, cnts);
                        err = -EFAULT;
                for (jj = 0, kk = 0; jj < cnts; jj++, kk += 2)
                        setdata[jj] = key_2char2num(tmp[1][kk], tmp[1][kk + 1]);
 
-               EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_available_size, false);
+               rtl8188e_EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_available_size, false);
                if ((addr + cnts) > max_available_size) {
                        DBG_88E("%s: addr(0x%X)+cnts(%d) parameter error!\n", __func__, addr, cnts);
                        err = -EFAULT;
                for (jj = 0, kk = 0; jj < cnts; jj++, kk += 2)
                        setdata[jj] = key_2char2num(tmp[2][kk], tmp[2][kk + 1]);
 
-               EFUSE_GetEfuseDefinition(padapter, EFUSE_BT, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_available_size, false);
+               rtl8188e_EFUSE_GetEfuseDefinition(padapter, EFUSE_BT, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_available_size, false);
                if ((addr + cnts) > max_available_size) {
                        DBG_88E("%s: addr(0x%X)+cnts(%d) parameter error!\n", __func__, addr, cnts);
                        err = -EFAULT;
        } else if (strcmp(tmp[0], "btfk2map") == 0) {
                memcpy(pEfuseHal->BTEfuseModifiedMap, pEfuseHal->fakeBTEfuseModifiedMap, EFUSE_BT_MAX_MAP_LEN);
 
-               EFUSE_GetEfuseDefinition(padapter, EFUSE_BT, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_available_size, false);
+               rtl8188e_EFUSE_GetEfuseDefinition(padapter, EFUSE_BT, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_available_size, false);
                if (max_available_size < 1) {
                        err = -EFAULT;
                        goto exit;
                        goto exit;
                }
        } else if (strcmp(tmp[0], "wlfk2map") == 0) {
-               EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_available_size, false);
+               rtl8188e_EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_available_size, false);
                if (max_available_size < 1) {
                        err = -EFAULT;
                        goto exit;
        Hal_GetThermalMeter(padapter, &val);
 
        if (bwrite == 0) {
-               EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_available_size, false);
+               rtl8188e_EFUSE_GetEfuseDefinition(padapter, EFUSE_WIFI, TYPE_AVAILABLE_EFUSE_BYTES_TOTAL, (void *)&max_available_size, false);
                if (2 > max_available_size) {
                        DBG_88E("no available efuse!\n");
                        return -EFAULT;