All of lore.kernel.org
 help / color / mirror / Atom feed
From: Adarsh Babu <adarshrbpin@yahoo.co.in>
To: u-boot@lists.denx.de
Subject: [U-Boot-Users] Uncompression of image takes time.
Date: Thu, 1 Mar 2007 16:37:25 +0000 (UTC)	[thread overview]
Message-ID: <loom.20070301T173340-351@post.gmane.org> (raw)
In-Reply-To: loom.20070301T070547-407@post.gmane.org

Adarsh Babu <adarshrbpin <at> yahoo.co.in> writes:

> 
> Jerry Van Baren <gerald.vanbaren <at> smiths-aerospace.com> writes:
> 
> > 
> > Adarsh Babu wrote:
> > > Hi,
> > > 
> > > I have an image which is 1.5MB in size after compression, thats is done 
> for 
> > > MCF5271. When i try to load this on a MCF5271 eval board using u-boot 
> 1.2.0 it 
> > > takes about 25 secs to just uncompress. I loaded a MCF5272 eval board 
with 
> U-
> > > Boot 1.2.0 and then tried to start the same image(which was done for 
> MCF5271). 
> > > It was very fast. The checksum verification finish off in a second and 
> > > uncompression in 10 seconds ! 
> > > 
> > > The clock configurations for both are provided below:
> > > M5272C3.h
> > > define CFG_HZ			1000
> > > #define CFG_CLK			66000000
> > > 
> > > M5271EVB.h:
> > > define CFG_HZ			1000000
> > > #define CFG_CLK			100000000
> > > 
> > > What should I do to get the image to uncompress faster in the MCF5271 
EVB?
> > > 
> > > Regards,
> > > Adarsh.
> > 
> > 1) Your CFG_HZ looks like a problem: it should be 1000 and your timer 
> > tick interrupt should be running 1000 times per second to match.  If you 
> > are indeed ticking 1,000,000 times per second, you are spending all of 
> > your processor time in your timer ISR.
> > 
> > 2) Why is your image 1.5MB?  I suspect you have large unused areas of 
> > memory (typically due to ISR vectors, followed by a huge unused gap, 
> > followed by the code).  If you fix your image size (assuming it is 
> > broken), the checksum and uncompress will be much faster.
> > 
> > gvb
> > 
> 
> Hi Jerry,
> 
> I tried the same after modifying the CFG_HZ to 1000. But i still get the 
same 
> result. Its as if there is no effect. The image size is 1.5MB becos its just 
> not a kernel image. Its kernel + our application. Could this be a problem 
with 
> the timer initialization and cofiguration?
> 
> Regards,
> Adarsh.
> 
> -------------------------------------------------------------------------
> Take Surveys. Earn Cash. Influence the Future of IT
> Join SourceForge.net's Techsay panel and you'll get the chance to share your
> opinions on IT & business topics through brief surveys-and earn cash
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> 
Hi Jerry,

The MCF5271EVB.h found in u-boot-1.2.0 is something like this.
#ifndef _M5271EVB_H
#define _M5271EVB_H

#define DEBUG
#undef DEBUG

/*
 * High Level Configuration Options (easy to change)
 */
#define CONFIG_MCF52x2		/* define processor family */
#define CONFIG_M5271		/* define processor type */
#define CONFIG_M5271EVB		/* define board type */

#define CONFIG_IPADDR		192.168.30.1
#define CONFIG_SERVERIP		192.168.1.1
#define CONFIG_ETHADDR		00:06:3b:01:41:55

#define CONFIG_BAUDRATE		19200
#define CFG_BAUDRATE_TABLE	{ 9600 , 19200 , 38400 , 57600, 115200 }

#undef CONFIG_WATCHDOG		/* disable watchdog */

#define CONFIG_BOOTDELAY	5

/* Configuration for environment
 * Environment is embedded in u-boot in the second sector of the flash
 */
#ifndef CONFIG_MONITOR_IS_IN_RAM
#define CFG_ENV_OFFSET		0x4000
#define CFG_ENV_SECT_SIZE	0x2000
#define CFG_ENV_IS_IN_FLASH	1
#else
#define CFG_ENV_ADDR		0xffe04000
#define CFG_ENV_SECT_SIZE	0x2000
#define CFG_ENV_IS_IN_FLASH	1
#endif

#define CONFIG_COMMANDS	 ((CONFIG_CMD_DFL | CFG_CMD_PING | CFG_CMD_NET ) & ~
(CFG_CMD_LOADS | CFG_CMD_LOADB))

/* this must be included AFTER the definition of CONFIG_COMMANDS (if any) */
#include <cmd_confdefs.h>

#define CFG_PROMPT		"=> "
#define CFG_LONGHELP				/* undef to save memory	
	*/

#if (CONFIG_COMMANDS & CFG_CMD_KGDB)
#define CFG_CBSIZE		1024		/* Console I/O Buffer Size
	*/
#else
#define CFG_CBSIZE		256		/* Console I/O Buffer Size
	*/
#endif
#define CFG_PBSIZE (CFG_CBSIZE+sizeof(CFG_PROMPT)+16) /* Print Buffer Size */
#define CFG_MAXARGS		16		/* max number of command args
	*/
#define CFG_BARGSIZE		CFG_CBSIZE	/* Boot Argument Buffer Size
	*/

#define CFG_LOAD_ADDR		0x00100000

#define CFG_MEMTEST_START	0x400
#define CFG_MEMTEST_END		0x380000

#define CFG_HZ			1000
#define CFG_CLK			100000000

/*
 * Low Level Configuration Settings
 * (address mappings, register initial values, etc.)
 * You should know what you are doing if you make changes here.
 */

#define CFG_MBAR		0x40000000	/* Register Base Addrs */

/* Enable FEC ethernet */
#define FEC_ENET
#define CONFIG_NET_RETRY_COUNT	5
#define CFG_ENET_BD_BASE	0x480000

/*
 * Definitions for initial stack pointer and data area (in DPRAM)
 */
#define CFG_INIT_RAM_ADDR	0x20000000
#define CFG_INIT_RAM_END	0x1000	/* End of used area in internal SRAM
	*/
#define CFG_GBL_DATA_SIZE	64	/* size in bytes reserved for initial 
data */
#define CFG_GBL_DATA_OFFSET	(CFG_INIT_RAM_END - CFG_GBL_DATA_SIZE)
#define CFG_INIT_SP_OFFSET	CFG_GBL_DATA_OFFSET

/*
 * Start addresses for the final memory configuration
 * (Set up by the startup code)
 * Please note that CFG_SDRAM_BASE _must_ start at 0
 */
#define CFG_SDRAM_BASE		0x00000000
#define CFG_SDRAM_SIZE		16		/* SDRAM size in MB */
#define CFG_FLASH_BASE		0xffe00000

#ifdef	CONFIG_MONITOR_IS_IN_RAM
#define CFG_MONITOR_BASE	0x20000
#else
#define CFG_MONITOR_BASE	(CFG_FLASH_BASE + 0x400)
#endif

#define CFG_MONITOR_LEN		0x40000
#define CFG_MALLOC_LEN		(256 << 10)
#define CFG_BOOTPARAMS_LEN	(64*1024)

/*
 * For booting Linux, the board info and command line data
 * have to be in the first 8 MB of memory, since this is
 * the maximum mapped by the Linux kernel during initialization ??
 */
#define CFG_BOOTMAPSZ		(8 << 20)	/* Initial Memory map for 
Linux */

/* FLASH organization */
#define CFG_MAX_FLASH_BANKS	1	/* max number of memory banks	
	*/
#define CFG_MAX_FLASH_SECT	11	/* max number of sectors on one chip
	*/
#define CFG_FLASH_ERASE_TOUT	1000

#define CFG_FLASH_CFI		1
#define CFG_FLASH_CFI_DRIVER	1
#define CFG_FLASH_SIZE		0x200000

/* Cache Configuration */
#define CFG_CACHELINE_SIZE	16

/* Port configuration */
#define CFG_FECI2C		0xF0

#endif	/* _M5271EVB_H */

Does anything look odd or our of place in here that might cause the Image 
decompression to be close to 25 seconds??

Reagards,
Adarsh.

  reply	other threads:[~2007-03-01 16:37 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-02-28 16:39 [U-Boot-Users] Uncompression of image takes time Adarsh Babu
2007-02-28 17:07 ` Jerry Van Baren
2007-03-01  6:12   ` Adarsh Babu
2007-03-01 16:37     ` Adarsh Babu [this message]
2007-03-01 18:22     ` Jerry Van Baren
2007-03-02 12:11 Jerry Van Baren
2007-03-05 15:09 ` Adarsh Babu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=loom.20070301T173340-351@post.gmane.org \
    --to=adarshrbpin@yahoo.co.in \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.