adapt->HalFunc.free_hal_data(adapt);
 }
 
-u32 rtw_hal_power_on(struct adapter *adapt)
-{
-       if (adapt->HalFunc.hal_power_on)
-               return adapt->HalFunc.hal_power_on(adapt);
-       return _FAIL;
-}
-
 uint    rtw_hal_init(struct adapter *adapt)
 {
        uint    status = _SUCCESS;
 
        if (!bPseudoTest) {
                int ret = _FAIL;
                if (rtw_IOL_applied(Adapter)) {
-                       rtw_hal_power_on(Adapter);
+                       rtl8188eu_InitPowerOn(Adapter);
 
                        iol_mode_enable(Adapter, 1);
                        ret = iol_read_efuse(Adapter, 0, _offset, _size_byte, pbuf);
 
                                pdvobjpriv->RtNumInPipes, pdvobjpriv->RtNumOutPipes);
 }
 
-static u32 rtl8188eu_InitPowerOn(struct adapter *adapt)
+u32 rtl8188eu_InitPowerOn(struct adapter *adapt)
 {
        u16 value16;
        /*  HW Power on sequence */
                DBG_88E("cant not alloc memory for HAL DATA\n");
        adapt->hal_data_sz = sizeof(struct hal_data_8188e);
 
-       halfunc->hal_power_on = rtl8188eu_InitPowerOn;
        halfunc->hal_init = &rtl8188eu_hal_init;
        halfunc->hal_deinit = &rtl8188eu_hal_deinit;
 
 
 typedef s32 (*c2h_id_filter)(u8 id);
 
 struct hal_ops {
-       u32     (*hal_power_on)(struct adapter *padapter);
        u32     (*hal_init)(struct adapter *padapter);
        u32     (*hal_deinit)(struct adapter *padapter);
 
 void rtl8188eu_init_default_value(struct adapter *adapt);
 void rtl8188e_SetHalODMVar(struct adapter *Adapter,
                           enum hal_odm_variable eVariable, void *pValue1, bool bSet);
+u32 rtl8188eu_InitPowerOn(struct adapter *adapt);
 
 void   rtw_hal_free_data(struct adapter *padapter);
-
-u32 rtw_hal_power_on(struct adapter *padapter);
 uint rtw_hal_init(struct adapter *padapter);
 uint rtw_hal_deinit(struct adapter *padapter);
 void rtw_hal_stop(struct adapter *padapter);