Commit afb88917 authored by Eran Harary's avatar Eran Harary Committed by Emmanuel Grumbach
Browse files

iwlwifi: pcie: support secured boot flow for family 8000 B step



The driver loads the 2 CPU sections, then it needs to let
the firmware know to start the authentication of the
sections. This is done by writing the relevants bits to
FH_UCODE_LOAD_STATUS.

For CPU1, the driver sets the lower 16 bits. For both CPUs,
the driver sets all the 32 bits.

Signed-off-by: default avatarEran Harary <eran.harary@intel.com>
Signed-off-by: default avatarEmmanuel Grumbach <emmanuel.grumbach@intel.com>
parent 2f15a829
Loading
Loading
Loading
Loading
+5 −3
Original line number Diff line number Diff line
@@ -722,6 +722,11 @@ static int iwl_pcie_load_cpu_sections_8000b(struct iwl_trans *trans,

	*first_ucode_section = last_read_idx;

	if (cpu == 1)
		iwl_write_direct32(trans, FH_UCODE_LOAD_STATUS, 0xFFFF);
	else
		iwl_write_direct32(trans, FH_UCODE_LOAD_STATUS, 0xFFFFFFFF);

	return 0;
}

@@ -911,9 +916,6 @@ static int iwl_pcie_load_given_ucode_8000b(struct iwl_trans *trans,
	if (trans->dbg_dest_tlv)
		iwl_pcie_apply_destination(trans);

	/* Notify FW loading is done */
	iwl_write_direct32(trans, FH_UCODE_LOAD_STATUS, 0xFFFFFFFF);

	/* wait for image verification to complete  */
	ret = iwl_poll_prph_bit(trans, LMPM_SECURE_BOOT_CPU1_STATUS_ADDR_B0,
				LMPM_SECURE_BOOT_STATUS_SUCCESS,