From 94f46104f8101a30afdcc5d09138ab22ce772265 Mon Sep 17 00:00:00 2001 From: YouMin Chen Date: Wed, 14 Nov 2018 11:49:34 +0800 Subject: [PATCH] rk3326: ddr: update version to v1.10 Build from RK3326 ddr init project commit: 23e863a rk3326: ddr: init code update to v1.10 Update features: add set ddr params Change-Id: Id7220a8f58acda8e752b25733f6cd3681b43c0b9 Signed-off-by: YouMin Chen --- RKBOOT/RK3326MINIALL.ini | 6 +++--- bin/rk33/rk3326_ddr_333MHz_v1.09.bin | Bin 9460 -> 0 bytes bin/rk33/rk3326_ddr_333MHz_v1.10.bin | Bin 0 -> 9880 bytes 3 files changed, 3 insertions(+), 3 deletions(-) delete mode 100644 bin/rk33/rk3326_ddr_333MHz_v1.09.bin create mode 100644 bin/rk33/rk3326_ddr_333MHz_v1.10.bin diff --git a/RKBOOT/RK3326MINIALL.ini b/RKBOOT/RK3326MINIALL.ini index 54ae9c98..c6e61158 100644 --- a/RKBOOT/RK3326MINIALL.ini +++ b/RKBOOT/RK3326MINIALL.ini @@ -5,7 +5,7 @@ MAJOR=1 MINOR=7 [CODE471_OPTION] NUM=1 -Path1=bin/rk33/rk3326_ddr_333MHz_v1.09.bin +Path1=bin/rk33/rk3326_ddr_333MHz_v1.10.bin Sleep=1 [CODE472_OPTION] NUM=1 @@ -14,7 +14,7 @@ Path1=bin/rk33/rk3326_usbplug_v1.12.bin NUM=2 LOADER1=FlashData LOADER2=FlashBoot -FlashData=bin/rk33/rk3326_ddr_333MHz_v1.09.bin +FlashData=bin/rk33/rk3326_ddr_333MHz_v1.10.bin FlashBoot=bin/rk33/rk3326_miniloader_v1.12.bin [OUTPUT] -PATH=rk3326_loader_v1.09.112.bin +PATH=rk3326_loader_v1.10.112.bin diff --git a/bin/rk33/rk3326_ddr_333MHz_v1.09.bin b/bin/rk33/rk3326_ddr_333MHz_v1.09.bin deleted file mode 100644 index 564fab75b1d4387fb4e3c341529bba5984546c3b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9460 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 diff --git a/bin/rk33/rk3326_ddr_333MHz_v1.10.bin b/bin/rk33/rk3326_ddr_333MHz_v1.10.bin new file mode 100644 index 0000000000000000000000000000000000000000..4eaad55f9a1dc628d165bc6c76bbd55fa23b2b0e GIT binary patch literal 9880 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