[U-Boot] wassup
Look what I found http://javilesa.com/meds.htm ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] uboot redundancy.
Hi All, Before i start using your ( Joakim )approach. I would like to get some tips from Wolfgang or someone who can assist me here. I am working on nor flash which is 128 mb flash for the PPC4XX. My goal is to make uboot redundant. having other copy of uboot if one fails to boot. Architechure follows like this. Totally there will be 3 uboots. *Golden uboot *is the one which has basic logic to pick which uboot from *uboot 1 or uboot 2 (different copy)*. uboot 1 and uboot 2 is flashed into some location of 16mb nor flash. Steps follows like this. 1)G-boot picks up uboot1/uboot2 based on environment variable. Basically we jumps to that uboot and start booting it from there. When i analysed the approach what Joakim implemented in http://www.mail-archive.com/u-boot@lists.denx.de/msg26918.html. He uses something like link_off() for each of the global data. * There will be too many link_offs() i have to use in uboot to make sure each of the global data. * As i will have 2 uboots which resides into seperate partitions. This requies to build 2 uboots with different relotate_code logic/something . I have read comments about this approach in the link what i pasted above. I would really appriciate if anyone replies (especially Wolfgang ) about whether to go head with this approach before i spent much time on this. Also if anyone has already done similar implentation for any of the boards let me know. -Sagar On Mon, Jul 19, 2010 at 4:36 PM, Joakim Tjernlund joakim.tjernl...@transmode.se wrote: Sagar Heroorkar sagar.heroor...@gmail.com wrote on 2010/07/19 15:26:20: Hi Wlfgang, resending this. Please do reply -Sagar On Fri, Jul 16, 2010 at 3:12 PM, Sagar Heroorkar sagar.heroor...@gmail.com wrote: Hi Joakim, Graeme referred me to contact you for this. I am working on U-boot making it PIC for ppc 405ex based boards. I see in the following link http://www.mail-archive.com/u-boot@lists.denx.de/ msg26918.html that you have implemented similar thing on 83xx board. I have downloaded latest u-boot from ftp server of denx. I dont see the functions what you have modified like LINKF_OFF() etc. I would like to know where is the source code for that. Also is there any document other than the mail thread that explains what you have chagned. Hi Sagar The source isn't in u-boot. It is only available as the patches I sent at the time. I don't have the patches handy as I am on vacation for 2 more weeks. Thanks in advance. -Sagar ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] uboot redundancy.
Hi, Is there a other way that without building the 2 different linking address for the uboot to make the 2 uboots PIC in the same nor flash. -Sagar On Wed, Jul 21, 2010 at 12:27 PM, Joakim Tjernlund joakim.tjernl...@transmode.se wrote: Sagar Heroorkar sagar.heroor...@gmail.com wrote on 2010/07/21 17:21:31: Hi All, Before i start using your ( Joakim )approach. I would like to get some tips from Wolfgang or someone who can assist me here. I am working on nor flash which is 128 mb flash for the PPC4XX. My goal is to make uboot redundant. having other copy of uboot if one fails to boot. Architechure follows like this. Totally there will be 3 uboots. Golden uboot is the one which has basic logic to pick which uboot from uboot 1 or uboot 2 (different copy). uboot 1 and uboot 2 is flashed into some location of 16mb nor flash. Seems sane. Steps follows like this. 1)G-boot picks up uboot1/uboot2 based on environment variable. Basically we jumps to that uboot and start booting it from there. Doesn't need to be an env var. I image one could mark each image (uboot 1 or uboot 2) with a flag instead. That way you don't need to parse the env. When i analysed the approach what Joakim implemented in http://www.mail- archive.com/u-boot@lists.denx.de/msg26918.html. He uses something like link_off() for each of the global data. * There will be too many link_offs() i have to use in uboot to make sure each of the global data. There are a few link_offs() but not too many IMHO. Remember that my patches were complete for my board. * As i will have 2 uboots which resides into seperate partitions. This requies to build 2 uboots with different relotate_code logic/something . Yes, this is the other way, you need to build two images linked to different addresses and select the right one at install. I have read comments about this approach in the link what i pasted above. I would really appriciate if anyone replies (especially Wolfgang ) about whether to go head with this approach before i spent much time on this. Also if anyone has already done similar implentation for any of the boards let me know. -Sagar On Mon, Jul 19, 2010 at 4:36 PM, Joakim Tjernlund joakim.tjernl...@transmode.se wrote: Sagar Heroorkar sagar.heroor...@gmail.com wrote on 2010/07/19 15:26:20: Hi Wlfgang, resending this. Please do reply -Sagar On Fri, Jul 16, 2010 at 3:12 PM, Sagar Heroorkar sagar.heroor...@gmail.com wrote: Hi Joakim, Graeme referred me to contact you for this. I am working on U-boot making it PIC for ppc 405ex based boards. I see in the following link http://www.mail-archive.com/u-boot@lists.denx.de/ msg26918.html that you have implemented similar thing on 83xx board. I have downloaded latest u-boot from ftp server of denx. I dont see the functions what you have modified like LINKF_OFF() etc. I would like to know where is the source code for that. Also is there any document other than the mail thread that explains what you have chagned. Hi Sagar The source isn't in u-boot. It is only available as the patches I sent at the time. I don't have the patches handy as I am on vacation for 2 more weeks. Thanks in advance. -Sagar ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] uboot redundancy.
Dear Wolfgang, Thanks you for the reply. -Sagar On Wed, Jul 21, 2010 at 3:37 PM, Wolfgang Denk w...@denx.de wrote: Dear Sagar Heroorkar, In message aanlktilwlzwhnidqal1vdqascjzjkzmbnoswmyw2b...@mail.gmail.com you wrote: Is there any other way to make the u-boot redundant other than what i have sent in the email earliar. I still fail to understand where your requirements are coming from, resp. which exact goal you are trying to achieve. If it's all about reliability, you should consider never updating / replacing U-Boot at all, and then a single copy is all you need in most cases. If you have really paranoid reliability requirements, you cannot do without adequate support from the hardware design. Tyically such systems come with two separate, identical banks of NOR flash that are attached through some switch logic to two different chip select signals. In addition, they need a hardware watchdog (I mean a real one, that starts automatically and that cannot be stopped by software), and logic that allows to detect the a watchdog reset. Assume in normal position the switch connects flash bank 1 as boot device (say, chip select CS0), and flash bank 2 to another device (say, chip select 1). You would then install the same copy of U-Boot into both flash banks 1 and 2. Upon power-on, the watchdog starts running, and the system will boot from the image in flash bank 1. If it's working fine, it will trigger the watchdog, and everything is fine. In case of errors (image corrupt, flash broken, ...) the watchdog will time out and cause a watchdog reset, which gets detected by the board logic. After a predetermined number of such watchdog resets (N=1 is of course also an option) the board logic will flip the switch, so the next reset will see flach bank 2 connected to CS0 and thus being the boot device, i. e. the alternative image will be booted. This is simple, reliable, and doe snot require any special measures in the software, which is completly agnostic to such toggeling. You may even locate several copies of the environment in both flash banks, so that you have a fully redundant system. Whether the switch can also be controlled by software or not etc. are details that allow for fine tuning, but I think you get the idea. But you need a certain level of hardware support - all attempts of nested first and second and third stage loaders and toggeling in software is error prone, because you can be pretty sure that the first problem that will bite you once the systems have been shipped to customers all over the world is not in one of the redundant images, but in the golden master copy... Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de You got to learn three things. What's real, what's not real, and what's the difference. - Terry Pratchett, _Witches Abroad_ ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] uboot redundancy.
resending this. Please do reply -Sagar On Fri, Jul 16, 2010 at 3:12 PM, Sagar Heroorkar sagar.heroor...@gmail.comwrote: Hi Joakim, Graeme referred me to contact you for this. I am working on U-boot making it PIC for ppc 405ex based boards. I see in the following link http://www.mail-archive.com/u-boot@lists.denx.de/msg26918.html that you have implemented similar thing on 83xx board. I have downloaded latest u-boot from ftp server of denx. I dont see the functions what you have modified like LINKF_OFF() etc. I would like to know where is the source code for that. Also is there any document other than the mail thread that explains what you have chagned. Thanks in advance. -Sagar On Sat, Jul 10, 2010 at 7:11 AM, Graeme Russ graeme.r...@gmail.comwrote: 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 fffa (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 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] uboot redundancy.
Hi Joakim, Graeme referred me to contact you for this. I am working on U-boot making it PIC for ppc 405ex based boards. I see in the following link http://www.mail-archive.com/u-boot@lists.denx.de/msg26918.html that you have implemented similar thing on 83xx board. I have downloaded latest u-boot from ftp server of denx. I dont see the functions what you have modified like LINKF_OFF() etc. I would like to know where is the source code for that. Also is there any document other than the mail thread that explains what you have chagned. Thanks in advance. -Sagar On Sat, Jul 10, 2010 at 7:11 AM, Graeme Russ graeme.r...@gmail.com wrote: 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 fffa (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 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] (imp) uboot image size
i am working on Powerpc. sorry for the late response. -SAgar On Wed, Jul 14, 2010 at 6:37 PM, Albert ARIBAUD albert.arib...@free.frwrote: Le 15/07/2010 00:35, Albert ARIBAUD a écrit : Le 14/07/2010 23:49, Wolfgang Denk a écrit : Dear Albert ARIBAUD, why not keeping the list on Cc:? Wrong and unintended action on my part, sorry: I hit the wrong reply button (maybe there's a Thunderbird plugin that helps avoiding this?). As I don't know if you meant this reply of yours to be made public eventually, I'm replying in private. If you want to switch back to the list, no problem for me. Argh. Seems like I'm cursed :( -- Apologies for going back to the list when I say I don't. Amicalement, -- Albert. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] (imp) uboot image size
I am trying to relocate the uboot code to different address in the norflash. -Sagar On Wed, Jul 14, 2010 at 2:10 AM, Wolfgang Denk w...@denx.de wrote: Dear Sagar Heroorkar, In message aanlktinffetcecool9xw-e3dthx3pxy-vlol3hcu4...@mail.gmail.com you wrote: I changed the TEXT_BASE address to something different. I see that the image size of the uboot is changed so much. It seems you did not really understand what your change is doing, so maybe you explain why you made this change in the first place? What did you try to acchive? let me know what else i should change so that it will hve image size as 384k Undo your changes to TEXT_BASE. Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de Living on Earth may be expensive, but it includes an annual free trip around the Sun. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] (imp) uboot image size
I changed the TEXT_BASE to implement the uboot redundancy. I got in to problem of having image size. See this: 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 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 fffa (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? Any pointers will help me if any one already did this kind of approach making uboot redundant. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] (imp) uboot image size
Hi All, I changed the TEXT_BASE address to something different. I see that the image size of the uboot is changed so much. Image size became to 28MB. I dotn know how to make it to 384k. Earliar text base was at address fffa now i changed to fe40 let me know what else i should change so that it will hve image size as 384k -Sagar ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] uboot redundancy.
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 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 fffa (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? Any pointers will help me if any one already did this kind of approach making uboot redundant. -Sagar ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] creating partition for bam405ex board
Hi , I was exploring the ways to add partition into the blob dynamically. I followd the following steps. 1) say we have 5 partitions. Flash size is 128mb norfl...@0,0{ 1-- 2-- 3 5 partit...@f8 { label = u_booot; reg = 0xf8 0x6; }; 2) i am trying to add 6th partition dynamically in uboot. I used the the nodeoffset of norfl...@0,0 which is parent offset wher i want to create 6th partiton. I passed this parent offset to ret = fdt_add_subnode(blob,nodeoffset, partit...@680); nodeoffset = ret; ptr[0] = 0x680; ptr[1] = 0x80; offset = 0x680; regs[0] += size_delta; memcpy(regs, ptr, plen); ret = fdt_setprop(blob, nodeoffset, reg, regs, plen); I am printing the the blob later. i see that node is created but the last partition ie u-boot @ f8 is going away. the blob size is 8000 byes which we built using the dtc -S 8000 -R 7 -I dts -O dtb -o file.dtb file.dts Let me know if we need to increase size of the blob or something which i m missing. This is going to help a lot if you can reply. -Sagar ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] Adding new partition in uboot
Hi David, I was exploring the ways to add partition into the blob dynamically. I followd the following steps. 1) say we have 5 partitions. Flash size is 128mb norfl...@0,0{ 1-- 2-- 3 5 partit...@f8 { label = u_booot; reg = 0xf8 0x6; }; 2) i am trying to add 6th partition dynamically in uboot. I used the the nodeoffset of norfl...@0,0 which is parent offset wher i want to create 6th partiton. I passed this parent offset to ret = fdt_add_subnode(blob,nodeoffset, partit...@680); nodeoffset = ret; ptr[0] = 0x680; ptr[1] = 0x80; offset = 0x680; regs[0] += size_delta; memcpy(regs, ptr, plen); ret = fdt_setprop(blob, nodeoffset, reg, regs, plen); I am printing the the blob later. i see that node is created but the last partition ie u-boot @ f8 is going away. the blob size is 8000 byes which we built using the dtc -S 8000 -R 7 -I dts -O dtb -o file.dtb file.dts Let me know if we need to increase size of the blob or something which i m missing. This is going to help a lot if you can reply. -Sagar ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot