diff --git a/core/bmi/src/ol_fw.c b/core/bmi/src/ol_fw.c index 71b7217452fc..75081f5d0076 100644 --- a/core/bmi/src/ol_fw.c +++ b/core/bmi/src/ol_fw.c @@ -194,7 +194,13 @@ __ol_transfer_bin_file(struct ol_context *ol_ctx, ATH_BIN_FILE file, break; } #endif - filename = bmi_ctx->fw_files.image_file; + if (cds_get_conparam() == QDF_GLOBAL_IBSS_MODE && + (bmi_ctx->fw_files.ibss_image_file[0] != '\0')) { + filename = bmi_ctx->fw_files.ibss_image_file; + } else { + filename = bmi_ctx->fw_files.image_file; + } + if (SIGNED_SPLIT_BINARY_VALUE) bin_sign = true; break; diff --git a/core/pld/inc/pld_common.h b/core/pld/inc/pld_common.h index 3a9bd1266c11..94854a79f390 100644 --- a/core/pld/inc/pld_common.h +++ b/core/pld/inc/pld_common.h @@ -94,6 +94,7 @@ struct pld_fw_files { char epping_file[PLD_MAX_FILE_NAME]; char evicted_data[PLD_MAX_FILE_NAME]; char setup_file[PLD_MAX_FILE_NAME]; + char ibss_image_file[PLD_MAX_FILE_NAME]; }; /** diff --git a/core/pld/src/pld_sdio.h b/core/pld/src/pld_sdio.h index 5db8bb90e180..c0d4647e7578 100644 --- a/core/pld/src/pld_sdio.h +++ b/core/pld/src/pld_sdio.h @@ -35,19 +35,19 @@ struct pld_fw_files fw_files_qca6174_fw_1_1 = { "qwlan11.bin", "bdwlan11.bin", "otp11.bin", "utf11.bin", - "utfbd11.bin", "qsetup11.bin", "epping11.bin"}; + "utfbd11.bin", "qsetup11.bin", "epping11.bin", ""}; struct pld_fw_files fw_files_qca6174_fw_2_0 = { "qwlan20.bin", "bdwlan20.bin", "otp20.bin", "utf20.bin", - "utfbd20.bin", "qsetup20.bin", "epping20.bin"}; + "utfbd20.bin", "qsetup20.bin", "epping20.bin", ""}; struct pld_fw_files fw_files_qca6174_fw_1_3 = { "qwlan13.bin", "bdwlan13.bin", "otp13.bin", "utf13.bin", - "utfbd13.bin", "qsetup13.bin", "epping13.bin"}; + "utfbd13.bin", "qsetup13.bin", "epping13.bin", ""}; struct pld_fw_files fw_files_qca6174_fw_3_0 = { "qwlan30.bin", "bdwlan30.bin", "otp30.bin", "utf30.bin", - "utfbd30.bin", "qsetup30.bin", "epping30.bin"}; + "utfbd30.bin", "qsetup30.bin", "epping30.bin", "qwlan30i.bin"}; struct pld_fw_files fw_files_default = { "qwlan.bin", "bdwlan.bin", "otp.bin", "utf.bin", - "utfbd.bin", "qsetup.bin", "epping.bin"}; + "utfbd.bin", "qsetup.bin", "epping.bin", ""}; #endif #ifndef CONFIG_SDIO