@@ -654,6 +654,11 @@ static int ath10k_core_get_board_id_from
u8 board_id, chip_id;
int ret;
+ if (ar->cal_file) {
+ ath10k_dbg(ar, ATH10K_DBG_BOOT, "boot skipping board id, cal data present\n");
+ return 0;
+ }
+
address = ar->hw_params.patch_load_addr;
if (!ar->normal_mode_fw.fw_file.otp_data ||
@@ -1073,6 +1078,11 @@ static int ath10k_core_fetch_board_file(
char boardname[100];
int ret;
+ if (ar->cal_file) {
+ ath10k_dbg(ar, ATH10K_DBG_BOOT, "boot skipping board file, cal data present\n");
+ return 0;
+ }
+
ret = ath10k_core_create_board_name(ar, boardname, sizeof(boardname));
if (ret) {
ath10k_err(ar, "failed to create board name: %d", ret);
@@ -169,8 +169,8 @@ void ath10k_debug_print_board_info(struc
ath10k_info(ar, "board_file api %d bmi_id %s crc32 %08x",
ar->bd_api,
boardinfo,
- crc32_le(0, ar->normal_mode_fw.board->data,
- ar->normal_mode_fw.board->size));
+ ar->normal_mode_fw.board ? crc32_le(0, ar->normal_mode_fw.board->data,
+ ar->normal_mode_fw.board->size) : 0);
}
void ath10k_debug_print_boot_info(struct ath10k *ar)
@@ -2314,10 +2314,14 @@ static ssize_t ath10k_debug_fw_checksums
"codeswap\t\t%08x\n",
crc32_le(0, ar->normal_mode_fw.fw_file.codeswap_data,
ar->normal_mode_fw.fw_file.codeswap_len));
- len += scnprintf(buf + len, buf_len - len,
+
+ if (ar->normal_mode_fw.board) {
+ len += scnprintf(buf + len, buf_len - len,
"board-N.bin\t\t%08x\n",
crc32_le(0, ar->normal_mode_fw.board->data,
ar->normal_mode_fw.board->size));
+ }
+
len += scnprintf(buf + len, buf_len - len,
"board\t\t\t%08x\n",
crc32_le(0, ar->normal_mode_fw.board_data,