mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-17 10:04:26 +00:00
fix(nxp-ddr): fix firmware buffer re-mapping issue
Firmware buffer has already been mapped when loading 1D firmware, so the same buffer address will be re-mapped when loading 2D firmware. Move the buffer mapping to be out of load_fw(). Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com> Change-Id: Idb29d504bc482a1e7ca58bc51bec09ffe6068324
This commit is contained in:
parent
0938847fc7
commit
742c23aab7
1 changed files with 9 additions and 8 deletions
|
@ -2216,14 +2216,6 @@ static int load_fw(uint16_t **phy_ptr,
|
|||
|
||||
size = PHY_GEN2_MAX_IMAGE_SIZE;
|
||||
image_buf = (uintptr_t)phy_gen2_fw_img_buf;
|
||||
ret = mmap_add_dynamic_region(phy_gen2_fw_img_buf,
|
||||
phy_gen2_fw_img_buf,
|
||||
PHY_GEN2_MAX_IMAGE_SIZE,
|
||||
MT_MEMORY | MT_RW | MT_SECURE);
|
||||
if (ret != 0) {
|
||||
ERROR("Failed to add dynamic memory region.\n");
|
||||
return ret;
|
||||
}
|
||||
ret = img_loadr(imem_id, &image_buf, &size);
|
||||
if (ret != 0) {
|
||||
ERROR("Failed to load %d firmware.\n", imem_id);
|
||||
|
@ -2592,6 +2584,15 @@ int compute_ddr_phy(struct ddr_info *priv)
|
|||
}
|
||||
} else {
|
||||
#endif
|
||||
/* Mapping IMG buffer firstly */
|
||||
ret = mmap_add_dynamic_region(priv->phy_gen2_fw_img_buf,
|
||||
priv->phy_gen2_fw_img_buf,
|
||||
PHY_GEN2_MAX_IMAGE_SIZE,
|
||||
MT_MEMORY | MT_RW | MT_SECURE);
|
||||
if (ret != 0) {
|
||||
ERROR("Failed to add dynamic memory region.\n");
|
||||
return ret;
|
||||
}
|
||||
|
||||
debug("Load 1D firmware\n");
|
||||
ret = load_fw(priv->phy, &input, 0, &msg_1d,
|
||||
|
|
Loading…
Add table
Reference in a new issue