From mboxrd@z Thu Jan 1 00:00:00 1970 From: Graeme Russ Date: Sat, 10 Jul 2010 21:11:17 +1000 Subject: [U-Boot] uboot redundancy. In-Reply-To: References: Message-ID: <4C385555.2080801@gmail.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 10/07/10 00:03, Sagar Heroorkar wrote: > Hi All, > > I am planning to implement uboot redundancy. > This means having the following idea which we thought. > > Golden-Uboot which is flashed in the NOR-FLASH. This is not field > upgradable. > This golden uboot is going to have logic to pick the other uboot based on > certain flags or env vriables > > As i mentioned i wanted the uboot to be redundant. > So i will have 2 copies of uboot now. > Uboot1 > Uboot2 I have a similar plan for x86 although the rationale was to enable rapid load-reset-test(-write to boot ROM on pass). The x86 port has the ability to load a new version of U-Boot into an arbitrary location in RAM and 'boot-strap' directly into it. I was planning on doing something similar to what you propose - All that is needed is a little bit of code in the low-level boot-strap to choose whether to continue loading the main image, or a secondary image. Note that at this point, there is no environment and no CFI driver so any decision would need to be based on NVRAM data. > > Golden uboot will pick either of one uboots mentioned above. If the uboot1 > which is picked fails to boot, then we will have uboot2 as back up to boot. > vice versa. > > Golden uboot recides in the address fffa0000 (start.s). > There is a relocation code which copies the code from flash to ram. if the > uboot which i have picked addressess will change , hence how can i do the > relocation? x86 port has 'proper' relocation. It does not matter where the target image resides, it will reload itself into the highest available memory location and run from there. > > Any pointers will help me if any one already did this kind of approach > making uboot redundant. > There were some posts a little while ago (search for posts by Joakim Tjernlund - he was working on a 100% position independent U-Boot) My work on U-Boot has been very slow of late, but I would be really interested in working through this idea in a platform independent way. -- Graeme