qcacmn: Enable mission mode through qmi signalling
Enable mission mode in fw through qmi signalling. Change-Id: I539d7b8bb1f38b2cb526704c225bf4535fcc8543 CRs-Fixed: 2504541
This commit is contained in:

committed by
nshrivas

parent
a310bf4609
commit
f24399cc78
@@ -37,6 +37,7 @@
|
||||
#include "hif_sdio_dev.h"
|
||||
#include "if_sdio.h"
|
||||
#include "regtable_sdio.h"
|
||||
#include <transfer/transfer.h>
|
||||
|
||||
#define ATH_MODULE_NAME hif_sdio
|
||||
|
||||
@@ -53,8 +54,16 @@ uint32_t hif_start(struct hif_opaque_softc *hif_ctx)
|
||||
struct hif_sdio_softc *scn = HIF_GET_SDIO_SOFTC(hif_ctx);
|
||||
struct hif_sdio_dev *hif_device = scn->hif_handle;
|
||||
struct hif_sdio_device *htc_sdio_device = hif_dev_from_hif(hif_device);
|
||||
struct hif_softc *hif_sc = HIF_GET_SOFTC(hif_ctx);
|
||||
int ret = 0;
|
||||
|
||||
HIF_ENTER();
|
||||
ret = hif_sdio_bus_configure(hif_sc);
|
||||
if (ret) {
|
||||
HIF_ERROR("%s: hif_sdio_bus_configure failed", __func__);
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
|
||||
hif_dev_enable_interrupts(htc_sdio_device);
|
||||
HIF_EXIT();
|
||||
return QDF_STATUS_SUCCESS;
|
||||
|
@@ -144,6 +144,30 @@ QDF_STATUS hif_dev_map_service_to_pipe(struct hif_sdio_dev *pdev, uint16_t svc,
|
||||
return status;
|
||||
}
|
||||
|
||||
/**
|
||||
* hif_bus_configure() - configure the bus
|
||||
* @hif_sc: pointer to the hif context.
|
||||
*
|
||||
* return: 0 for success. nonzero for failure.
|
||||
*/
|
||||
int hif_sdio_bus_configure(struct hif_softc *hif_sc)
|
||||
{
|
||||
struct pld_wlan_enable_cfg cfg;
|
||||
enum pld_driver_mode mode;
|
||||
uint32_t con_mode = hif_get_conparam(hif_sc);
|
||||
|
||||
if (con_mode == QDF_GLOBAL_FTM_MODE)
|
||||
mode = PLD_FTM;
|
||||
else if (con_mode == QDF_GLOBAL_COLDBOOT_CALIB_MODE)
|
||||
mode = PLD_COLDBOOT_CALIBRATION;
|
||||
else if (QDF_IS_EPPING_ENABLED(con_mode))
|
||||
mode = PLD_EPPING;
|
||||
else
|
||||
mode = PLD_MISSION;
|
||||
|
||||
return pld_wlan_enable(hif_sc->qdf_dev->dev, &cfg, mode);
|
||||
}
|
||||
|
||||
/** hif_dev_setup_device() - Setup device specific stuff here required for hif
|
||||
* @pdev : HIF layer object
|
||||
*
|
||||
|
@@ -98,12 +98,20 @@ static inline uint32_t hif_get_send_buffer_flags(struct hif_sdio_device *pdev)
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline int hif_sdio_bus_configure(struct hif_softc *hif_sc)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
#elif defined(CONFIG_SDIO_TRANSFER_ADMA)
|
||||
static inline uint32_t hif_get_send_buffer_flags(struct hif_sdio_device *pdev)
|
||||
{
|
||||
/* ADAM-TODO */
|
||||
return (uint32_t)HIF_WR_ASYNC_BLOCK_FIX;
|
||||
}
|
||||
|
||||
int hif_sdio_bus_configure(struct hif_softc *hif_sc);
|
||||
#endif
|
||||
|
||||
#endif /* __TRANSFER_H__ */
|
||||
|
Reference in New Issue
Block a user