From mboxrd@z Thu Jan 1 00:00:00 1970 From: Luigi 'Comio' Mantellini Date: Thu, 03 Apr 2008 00:12:43 +0200 Subject: [U-Boot-Users] help - u-boot header & compression In-Reply-To: <393980.79147.qm@web39503.mail.mud.yahoo.com> References: <393980.79147.qm@web39503.mail.mud.yahoo.com> Message-ID: <1207174363.3671.58.camel@cassini.comioland> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Il giorno mer, 02/04/2008 alle 14.57 -0700, Avinash Vijayvergia ha scritto: > Hi Luigi > > Thank you for your mail and comments. I should have explain why I want > to compress u-boot. My target processor is Atmel AT91SAM9260. I am > having a 64Mb Dataflash which is interfaced on SPI bus. The Atmel ARM9 > copies the first 4kB to internal SRAM and then boots from there. So we > need a loader of size <4kb which will be copied to SRAM. I have got > this loader. This loader will invoke u-boot, and u-boot will invoke > kernel. So I can compress loader and it will still work. > > I'll compare nrv2b and lzma and then will be in a better position to > comment. I chose nrv2b because I need a compression algo which can be > as small as 600B (I have size restriction of 4kB). > Ok. Now I understand the problem. U-boot is a pure binary file, you need to compile it fixing the TEXT_BASE address in order to fit your RAM. Your "pre-bootloader" should setup the ram and the dataflash in order to decompress/copy u-boot (vetctors+text+data) from the dataflash space addresses to the ram addresses. After the copy/decompress just jump to u-boot address. To achieve this you needn't to know the u-boot header structure. You should analyze the board/atmel/at91rm9200dk/u-boot.lds and cpu/arm920t/start.S files to understand how u-boot works (at initialization time). Best regards, luigi > Thanks > Avinash > > > ----- Original Message ---- > From: Luigi 'Comio' Mantellini > To: Avinash Vijayvergia > Cc: u-boot-users at lists.sourceforge.net > Sent: Wednesday, April 2, 2008 2:37:20 PM > Subject: Re: [U-Boot-Users] help - u-boot header & compression > > Hi Avinash, > > see inline. > > Il giorno mer, 02/04/2008 alle 14.26 -0700, Avinash Vijayvergia ha > scritto: > > > Hi LuigI > > > > > > > Thank you for your mail. I actually have two questions: > > 1. What is the format of u-boot header? Can you refer me to > > some documentation? > > > What do you intend for "u-boot header"? U-boot uses the uImage format > for the kernels images. You can check the file include/image.h (row > 175) to understand the (old) uImage format. See this link: > http://www.denx.de/cgi-bin/gitweb.cgi?p=u-boot.git;a=blob;f=include/image.h;h=36143e25acfe3684a751a4ee6a5cf945524ef424;hb=74d1e66d22dac91388bc538b2fe19f735edc5b82 > > > > > > 1. I want to compress u-boot. I have picked up nrv2b.c from > > Koders.com which is in use by many people :). I couldn't > > understand how it does encoding and decoding. I wanted to > > use this algo and do compression and decompression of my > > binaries. You can search google for nrv2b.c and you will get > > it from Koder.com. > > > U-boot is the object code, the bootloader... how can you compress it? > it is a non-sense for me. Anyway, if you need to compress the kernel > image, you need to use the uImage format and the utility mkimage (see > tools directory). I recently posted a patch to support the lzma > compression algorithm (that works better than bzip2 and gzip): you can > search in the mailing list archive to retrieve this patch. > > Are you sure that nrv2b is better than powerful lzma or bzip2? Do you > have benchmarks on this point? If you demonstrate me that nrv2b is a > good choice I can consider to make the patch for the community... I > have an application that has a very small flash memory... nrv2b should > be a choice... > > Best regards, > > luigi > > > > Thanks for your help > > Avinash > > > > ----- Original Message ---- > > From: Luigi 'Comio' Mantellini > > To: Avinash Vijayvergia > > Cc: u-boot-users at lists.sourceforge.net > > Sent: Wednesday, April 2, 2008 2:19:36 PM > > Subject: Re: [U-Boot-Users] help - u-boot header & compression > > > > Hi Avinash, > > > > I'm not undestanding if you want compress the U-Boot code or if you > > want compress the uImage image. > > Anyway, I don't know the nrv2b algorithm, can you give me any links? > > > > thanks, > > > > luigi > > > > Il giorno mer, 02/04/2008 alle 13.54 -0700, Avinash Vijayvergia ha > > scritto: > > > > > Hi All > > > > > > I am working on AT91SAM9260 ARM9 core. I have very small flash > > > memory and hence need to compress the u-boot. I have picked nrv2b > > > algo for that. Can someone suggest me how to put the compression > > > info in the u-boot header. I want to know the details of u-boot > > > header too. > > > > > > Thanks > > > Avinash > > > > > > > > > __________________________________________________________________ > > > > > > > > > You rock. That's why Blockbuster's offering you one month of > > > Blockbuster Total Access, No Cost. > > > > > > ------------------------------------------------------------------------- > > > Check out the new SourceForge.net Marketplace. > > > It's the best place to buy or sell services for > > > just about anything Open Source. > > > http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace > > > _______________________________________________ U-Boot-Users mailing list U-Boot-Users at lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users > > > > > > > > Ing. Luigi Mantellini > > Industrie Dial Face S.p.A. > > Via Canzo, 4 > > 20068 Peschiera Borromeo (MI) > > Tel.: +39 02 5167 2813 > > Fax: +39 02 5167 2459 > > E-mail: > > luigi.mantellini at idf-hit.com > > > > > > > > > > > > > > > > > > ____________________________________________________________________ > > > > You rock. That's why Blockbuster's offering you one month of > > Blockbuster Total Access, No Cost. > > > Ing. Luigi Mantellini > Industrie Dial Face S.p.A. > Via Canzo, 4 > 20068 Peschiera Borromeo (MI) > Tel.: +39 02 5167 2813 > Fax: +39 02 5167 2459 > E-mail: > luigi.mantellini at idf-hit.com > > > > > > > > > > ______________________________________________________________________ > You rock. That's why Blockbuster's offering you one month of > Blockbuster Total Access, No Cost. Ing. Luigi Mantellini Industrie Dial Face S.p.A. Via Canzo, 4 20068 Peschiera Borromeo (MI) Tel.: +39 02 5167 2813 Fax: +39 02 5167 2459 E-mail: luigi.mantellini at idf-hit.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.denx.de/pipermail/u-boot/attachments/20080403/a25b9368/attachment.htm