From 933f5dd3fc96bc4cbfa7f51c5d29b839d508ab4f Mon Sep 17 00:00:00 2001 From: XiaoDong Huang Date: Fri, 5 Jul 2019 14:45:16 +0800 Subject: [PATCH] rknpu-lion: bl31: update version to v1.07 Build from ATF commit: fe4778e plat: rk1808: suspend: fix bug for idle bus in pmu fsm Updata features: fe4778e plat: rk1808: suspend: fix bug for idle bus in pmu fsm c15bf5d rockchip: uart: fix uart save/restore flow e1e7f4c plat: rk1808: suspend: save/restore ddr firewall d8c2b50 plat: rk1808: setup ddr firewall cb1bbbb plat: rk1808: ddr: update dcf code to V1.05 Change-Id: I3fa5678aee64788eac16982c7daf93ebfec3dcc4 Signed-off-by: XiaoDong Huang --- RKTRUST/RKNPULIONTRUST.ini | 2 +- ...31_v1.06.elf => rknpu_lion_bl31_v1.07.elf} | Bin 269160 -> 269160 bytes 2 files changed, 1 insertion(+), 1 deletion(-) rename bin/rk33/{rknpu_lion_bl31_v1.06.elf => rknpu_lion_bl31_v1.07.elf} (81%) diff --git a/RKTRUST/RKNPULIONTRUST.ini b/RKTRUST/RKNPULIONTRUST.ini index 00e6d5f7..11d3146b 100644 --- a/RKTRUST/RKNPULIONTRUST.ini +++ b/RKTRUST/RKNPULIONTRUST.ini @@ -5,7 +5,7 @@ MINOR=0 SEC=0 [BL31_OPTION] SEC=1 -PATH=bin/rk33/rknpu_lion_bl31_v1.06.elf +PATH=bin/rk33/rknpu_lion_bl31_v1.07.elf ADDR=0x00010000 [BL32_OPTION] SEC=0 diff --git a/bin/rk33/rknpu_lion_bl31_v1.06.elf b/bin/rk33/rknpu_lion_bl31_v1.07.elf similarity index 81% rename from bin/rk33/rknpu_lion_bl31_v1.06.elf rename to bin/rk33/rknpu_lion_bl31_v1.07.elf index 17ec84ad4a3e8260d97ccde9d95efac73fe97cb2..ccd0131f2464e19d875ee8d120b15de232599f35 100755 GIT binary patch delta 18810 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 Iy$tjI59egk9RL6T delta 15853 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