--- a/src/g997/drv_dsl_cpe_api_g997_danube.c +++ b/src/g997/drv_dsl_cpe_api_g997_danube.c @@ -2524,6 +2524,7 @@ DSL_Error_t DSL_DRV_DEV_G997_PowerManage else { /* read L3 request failure reason */ + DSL_uint8_t nErrCodeL3; nErrCode = DSL_DRV_DANUBE_CmvRead(pContext, DSL_CMV_GROUP_STAT, DSL_CMV_ADDRESS_STAT_L3_FAILURE_REASON, 0, 1, &nVal); DSL_DEBUG(DSL_DBG_MSG, @@ -2537,11 +2538,13 @@ DSL_Error_t DSL_DRV_DEV_G997_PowerManage nErrCode = DSL_ERR_MSG_EXCHANGE; break; } - if (((nVal >> 4) & 0x15) == 0x5) + + nErrCodeL3 = (nVal >> 4) & 0x15; + if (nErrCodeL3 == 0x5) { nErrCode = DSL_ERR_L3_NOT_IN_L0; } - else if (((nVal >> 4) & 0x15) == 0x9) + else if (nErrCodeL3 == 0x9) { nErrCode = DSL_ERR_L3_TIMED_OUT; }