From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shinya Kuribayashi Date: Sat, 04 Dec 2010 11:32:14 +0900 Subject: [U-Boot] [RFC 0/2] Add support for bootstrap stage and compressed U-Boot image In-Reply-To: <201011301535.09312.luigi.mantellini@idf-hit.com> References: <1291113049-4176-1-git-send-email-luigi.mantellini@idf-hit.com> <201011301535.09312.luigi.mantellini@idf-hit.com> Message-ID: <4CF9A82E.8030005@pobox.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi, On 11/30/2010 11:35 PM, Luigi 'Comio' Mantellini wrote: > Look the following benchmark (qemu-mips board): > > U-Boot Vanilla > 179600 bytes u-boot.bin > > Bootstrap code w/o compresion (memcpy) > 189224 bytes u-boot-bootstrap.bin > --> size 105% > > Bootstrap code using BZIP2 compression > 114388 bytes u-boot-bootstrap.bin > -->size 64% > > Bootstrap code using GZIP compression > 114204 bytes u-boot-bootstrap.bin > -->size 64% > > Bootstrap code using LZMA compression > 89456 bytes u-boot-bootstrap.bin > -->size 50% <-- BEST > > Bootstrap code using LZO compression > 104388 bytes u-boot-bootstrap.bin > -->size 58% Personally, I don't much care about the size of U-Boot bin itself (179kB or 104kB), but it depends. And I'd like to see how much boot time of U-Boot improved on your environment. > >> The following patches introduce the bootstrap support that enable to have a >> compressed U-Boot image. The bootstrap code supports the uncompressed as >> well as compressed payloads, using LZMA, GZIP, BZIP2 and LZO. >> >> Actually I developed just the mips version (using qemu-mips board)... >> >> Please see the Patch #1 for the required defines to enable the required >> features. Not having a closer look at the patch yet, some general comments: * Two patches posted, but contains multiple logical changes: - CONFIG_BOOTSTRAP* build infrastructure (main body) - common: Introduce console_bootstrap - MIPS: Separate _machine_restart() and do_reset() into reset.c - MIPS: config.mk: Append -g debug option to PLATFORM_CPPFLAGS, which is already provided by $(TOPDIR)/config.mk. - MIPS: qemu_mips: bootstrap support enablement (experimental) Please break into logical changes, please. * '_bootstrap' suffixed files are almost identical to the original ones: - arch/mips/cpu/reset{,_bootstrap}.c - arch/mips/cpu/start{,_bootstrap}.S - board/qemu-mips/u-boot{,_bootstrap}.lds Is there any way not to duplicate them? Do we really need to have _bootstrap files separated? Once this bootstrap feature approved as general U-Boot feature, I'd like to take MIPS-related changes. Thanks, Ralf