From mboxrd@z Thu Jan 1 00:00:00 1970 From: Aras Vaichas Date: Wed, 26 Mar 2008 10:49:04 +1100 Subject: [U-Boot-Users] auto-save environment if using default environment? In-Reply-To: <20080325231514.GA19940@leila.ping.de> References: <47E90DE8.15445.1113A3A@w.wegner.astro-kom.de> <20080325201613.8D7E8248BF@gemini.denx.de> <20080325231514.GA19940@leila.ping.de> Message-ID: <47E98F70.5050003@magtech.com.au> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Wolfgang Wegner wrote: > On our board we have an FPGA, and for different applications a different > FPGA file shall be loaded without updating the firmware. For this, the > application has to set an U-Boot environment variable that specifies which > FPGA file to load on next boot. > We use an i2c EEPROM to hold board specific information. I read the EEPROM from U-Boot and set up the MAC address and arch/mach number using the misc_init_r(void) call method. This separates the U-boot environment from the machine specific data. I also use the EEPROM to hold the SDRAM settings so the first bootloader can configure the DRAM on multiple boards without requiring multiple binaries. I have a strange bootcmd. If U-Boot starts with a corrupted environment, it runs the default bootcmd. The default bootcmd creates a bootcmd and then runs saveenv so the next boot will run the new bootcmd.. eg. from my include/configs/board.h file "bootcmd=setenv bootcmd '';saveenv;run bootcmd\0" I then access the U-Boot environment area from Linux and do all the "smart" stuff there. If I didn't do this, then Linux would access the corrupted boot section! Just my 0.02 euros worth. Aras ______________________________________________________________________ This email has been scanned by the MessageLabs Email Security System. For more information please visit http://www.messagelabs.com/email ______________________________________________________________________