From ad416953813a41e81b7a57005fb89f5f87f6d89d Mon Sep 17 00:00:00 2001 From: Finley Xiao Date: Tue, 7 Nov 2023 11:57:42 +0800 Subject: [PATCH] rk3588: bl31: update version to v1.44 Build from ATF commit: 4acbe711b plat: rockchip: rk3588: clock: Add support rk3583 update feature: 4acbe711b plat: rockchip: rk3588: clock: Add support rk3583 4a7bee092 plat: rk3588: otp: support to read secure otp 0b69391a7 plat: rk3588: enable mmu/cache before dmc_restore d93310b26 rockchip: common: add some pmusram functions for mmu/cache Change-Id: I94e22a98d06b9d10be54141c9bc71dfa70297593 Signed-off-by: Finley Xiao --- RKTRUST/RK3588TRUST.ini | 2 +- ...8_bl31_v1.43.elf => rk3588_bl31_v1.44.elf} | Bin 418592 -> 430880 bytes doc/release/RK3588_CN.md | 14 ++++++++++++++ doc/release/RK3588_EN.md | 14 ++++++++++++++ 4 files changed, 29 insertions(+), 1 deletion(-) rename bin/rk35/{rk3588_bl31_v1.43.elf => rk3588_bl31_v1.44.elf} (79%) diff --git a/RKTRUST/RK3588TRUST.ini b/RKTRUST/RK3588TRUST.ini index f4318aa9..4f79580a 100644 --- a/RKTRUST/RK3588TRUST.ini +++ b/RKTRUST/RK3588TRUST.ini @@ -5,7 +5,7 @@ MINOR=0 SEC=0 [BL31_OPTION] SEC=1 -PATH=bin/rk35/rk3588_bl31_v1.43.elf +PATH=bin/rk35/rk3588_bl31_v1.44.elf ADDR=0x00040000 [BL32_OPTION] SEC=1 diff --git a/bin/rk35/rk3588_bl31_v1.43.elf b/bin/rk35/rk3588_bl31_v1.44.elf similarity index 79% rename from bin/rk35/rk3588_bl31_v1.43.elf rename to bin/rk35/rk3588_bl31_v1.44.elf index d402db527647f011f3e8427b6a62db339e005664..3462bab1bd0774df70c1d39bc89593ffcfa6d6d1 100644 GIT binary patch delta 31750 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 Q)y}jF64nsjY8Phy4`UpWYXATM delta 31121 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 gxm!tPl4F1^nuA_*77kute=fP`K@X0fAc26aWAK diff --git a/doc/release/RK3588_CN.md b/doc/release/RK3588_CN.md index 3389ffb0..12eb249f 100644 --- a/doc/release/RK3588_CN.md +++ b/doc/release/RK3588_CN.md @@ -1,5 +1,19 @@ # RK3588 Release Note +## rk3588_bl31_v1.44.elf + +| 时间 | 文件 | 编译 commit | 重要程度 | +| ---------- | :-------------------- | ----------- | -------- | +| 2023-11-07 | rk3588_bl31_v1.44.elf | 4acbe711b | 重要 | + +### New + +1. 增加rk3583 pvtpll 配置。 +2. 支持读取安全的otp。 +3. 优化dmc恢复时间。 + +------ + ## rk3588_pcie_v1.00.bin | 时间 | 文件 | 编译 commit | 重要程度 | diff --git a/doc/release/RK3588_EN.md b/doc/release/RK3588_EN.md index b23fc7b7..0806ef4b 100644 --- a/doc/release/RK3588_EN.md +++ b/doc/release/RK3588_EN.md @@ -1,5 +1,19 @@ # RK3588 Release Note +## rk3588_bl31_v1.44.elf + +| Date | File | Build commit | Severity | +| ---------- | :-------------------- | ------------ | --------- | +| 2023-11-07 | rk3588_bl31_v1.44.elf | 4acbe711b | important | + +### New + +1. Add pvtpll support rk3583. +2. Add support to read secure otp. +3. Optimize the time of dmc restore. + +------ + ## rk3588_pcie_v1.00.bin | Date | File | Build commit | Severity |