From 1b01185cbb03dd918f10eab6dfaa06220c65925f Mon Sep 17 00:00:00 2001 From: Peter Zotov Date: Sat, 4 Dec 2010 04:51:45 +0300 Subject: [PATCH] Add USB bootloader stage2 firmware. --- COPYING | 2 +- usb_boot.bin | Bin 0 -> 32276 bytes 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 usb_boot.bin diff --git a/COPYING b/COPYING index b438b7f..78d994c 100644 --- a/COPYING +++ b/COPYING @@ -1,4 +1,4 @@ -fw.bin is (c) Ingenic Semiconductor Co., Ltd. +fw.bin, usb_boot.bin are (c) Ingenic Semiconductor Co.,Ltd. ingenic.h is based on code by Ingenic Semiconductor Co.,Ltd. All other files have their authors and licenses described at their beginning. diff --git a/usb_boot.bin b/usb_boot.bin new file mode 100644 index 0000000000000000000000000000000000000000..56eabed9ff4da73db8204e5671d3d452b642c53d GIT binary patch literal 32276 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