diff options
Diffstat (limited to 'drivers/net/wireless/bcmdhd/dhd_pno.c')
-rw-r--r-- | drivers/net/wireless/bcmdhd/dhd_pno.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/wireless/bcmdhd/dhd_pno.c b/drivers/net/wireless/bcmdhd/dhd_pno.c index 384386e..5f7657d 100644 --- a/drivers/net/wireless/bcmdhd/dhd_pno.c +++ b/drivers/net/wireless/bcmdhd/dhd_pno.c @@ -1838,8 +1838,14 @@ int dhd_pno_deinit(dhd_pub_t *dhd) { int err = BCME_OK; dhd_pno_status_info_t *_pno_state = PNO_GET_PNOSTATE(dhd); + dhd_pno_params_t *_params; NULL_CHECK(dhd, "dhd is NULL", err); DHD_PNO(("%s enter\n", __FUNCTION__)); + if (_pno_state->pno_mode & DHD_PNO_BATCH_MODE) { + _params = &_pno_state->pno_params_arr[INDEX_OF_BATCH_PARAMS]; + /* clear resource if the BATCH MODE is on */ + _dhd_pno_reinitialize_prof(dhd, _params, DHD_PNO_BATCH_MODE); + } cancel_work_sync(&_pno_state->work); if (dhd->pno_state) MFREE(dhd->osh, dhd->pno_state, sizeof(dhd_pno_status_info_t)); |