From 63baca6b5e4a1c16abc7c1f57dc8ad5d1396f5cb Mon Sep 17 00:00:00 2001 From: XiaoDong Huang Date: Tue, 22 May 2018 17:58:27 +0800 Subject: [PATCH] px30: bl31: update version to v1.12 Build from ATF commit: beb0831 plat: px30: support cluster idle update feature: beb0831 plat: px30: support cluster idle 4654e39 plat: rockchip: support bl32/bl33 fixup by platform 1e2e0a8 px30: enable CONFIG_PLAT_WARMBOOT_ADDR_NOT_ALIGN 9f2cf03 rockchip: common: make warmboot address 64 align optional eff4387 plat: px30: dfs: close DDR standby during change DDR frequency a933e5a plat: px30: ddr: fix ddr4 tCCD_L set error 2e3014a plat: px30: dfs: add ddr_update_lowpower 65aa5ce rockchip: fix bugs of disable uart fiq Change-Id: Iba22bbe055cb3f50f4a43af8048bca4311919424 Signed-off-by: XiaoDong Huang --- RKTRUST/PX30TRUST.ini | 2 +- ...x30_bl31_v1.11.elf => px30_bl31_v1.12.elf} | Bin 275152 -> 209616 bytes 2 files changed, 1 insertion(+), 1 deletion(-) rename bin/rk33/{px30_bl31_v1.11.elf => px30_bl31_v1.12.elf} (58%) diff --git a/RKTRUST/PX30TRUST.ini b/RKTRUST/PX30TRUST.ini index 43bf70dd..6b4a9d6b 100644 --- a/RKTRUST/PX30TRUST.ini +++ b/RKTRUST/PX30TRUST.ini @@ -5,7 +5,7 @@ MINOR=0 SEC=0 [BL31_OPTION] SEC=1 -PATH=bin/rk33/px30_bl31_v1.11.elf +PATH=bin/rk33/px30_bl31_v1.12.elf ADDR=0x00010000 [BL32_OPTION] SEC=1 diff --git a/bin/rk33/px30_bl31_v1.11.elf b/bin/rk33/px30_bl31_v1.12.elf similarity index 58% rename from bin/rk33/px30_bl31_v1.11.elf rename to bin/rk33/px30_bl31_v1.12.elf index 11d73a0405621ec91bf412bdb3c4cc67cdb4715a..ecd96d5ee43a5e4172c82b7577b5e6688a5a06e4 100644 GIT binary patch delta 17623 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

@$w|tV#Ncq=(N3UlrjTGD;4^@@Go(EF! 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 on6Y6WKUPz}<{9 delta 16533 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 IdHRt52j8~^&j0`b