Community
cancel
Showing results for 
Search instead for 
Did you mean: 
CGrah4
Novice
1,633 Views

u-boot1 partition

Hi,

What is the purpose of the second u-boot partition, "u-boot1" (/dev/disk/by-partlabel/u-boot1 in Linux)?

Is it possible to load u-boot from this partition? And can it be used as a fallback in case the copy of u-boot on /dev/disk/by-partlabel/u-boot0 doesn't work?

Thank you

16 Replies
idata
Community Manager
66 Views

Hi Grahn,

 

 

The purpose of the Edison partitions was explained some time ago (/thread/77357 https://communities.intel.com/thread/77357), this was the answer:

 

"Edison Yocto's recipes generate two different U-Boot binaries. One is being used by xfstk-downloader while flashing the IFWI (u-boot.img), the other one is used to flash U-Boot from U-Boot (standard u-boot.bin). and those are the partitions u-boot0 and u-boot1. For each U-Boot binary there are environment variables that stored in partitions u-boot-env0 and u-boot-env1.

 

The factory is also called rootfs is type ext4 and mounted as the root partition "/". The panic is a small partition of 25M and it can be used for the kernel panic logs. If the OS you are creating handle kernel panic differently then you can delete that partition."

 

 

So, taking that into account I believe it wouldn't be possible to load u-boot fomo this partition as it is executing a different task.

 

 

Regards,

 

-Pablo
CGrah4
Novice
66 Views

Thanks for replying.

The reason for my question is because I would like to update the boot loader remotely. To do that safely, I wanted to change the edison to load u-boot off of u-boot1, then flash u-boot0 with the new bootloader. If the flash was successful, I could then switch the edison back to loading u-boot off of u-boot0 and flash u-boot1 with the new bootloader.

Was the original idea of having a u-boot1 partition to allow following back to it in case the boot loader on u-boot0 didn't work? Or was it to allow switching between loading u-boot off of either partition?

Otherwise I don't see the point of having the u-boot1 partition since it would do nothing more than hold a copy of u-boot0 but be more or less unusable during the boot process.

When you say u-boot1 is executing a different task, what task is that?

idata
Community Manager
66 Views

Hi grahn,

 

 

This partition lets the Edison hook-up to the DFU utility and stops it from booting until the download and upload of the firmware has completed. You can go ahead and try it, however, we can't specify or guarantee what would be the module's behavior after this.

 

 

Regards,

 

-Pablo
CGrah4
Novice
66 Views

I'm fairly certain that the u-boot1 partition is not used at all. u-boot gets loaded off of the u-boot0 partition. This can be verified by dding random data to the u-boot0 partition and seeing the Edison fail to boot.

If you look at the scripts that are used to flash the edison, particularly the sections in the scripts where u-boot is flashed, http://git.yoctoproject.org/cgit/cgit.cgi/meta-intel-edison/tree/utils/flash/flashall.sh# n192 http://git.yoctoproject.org/cgit/cgit.cgi/meta-intel-edison/tree/utils/flash/flashall.sh# n192 and http://git.yoctoproject.org/cgit/cgit.cgi/meta-intel-edison/tree/utils/flash/flashall.bat# n111 http://git.yoctoproject.org/cgit/cgit.cgi/meta-intel-edison/tree/utils/flash/flashall.bat# n111, the u-boot1 partition doesn't even get flashed. Hence why I don't think this partition is being used.

What I'm trying to figure out is why this partition was even put on the Edison. Was it meant to be used as a fallback in case the boot loader on the u-boot0 partition failed to load? And is there any way to make the Intel firmware load the boot loader off of the u-boot1 partition?

idata
Community Manager
66 Views

Hi grahn,

 

 

Thank you for letting us know of your tests. We will investigate this a little bit more and will get back to you soon. We appreciate your patience in the meantime.

 

 

Regards,

 

-Pablo
idata
Community Manager
66 Views

Hi Grahn,

 

 

We deeply apologize for the delay in our reply, we just want to let you know that we already have some new information.

 

The partition was intended to be a backup of u-boot, but right now it is not being used, so yes, as you mentioned it was meant to be a fallback. However, it is currently not supported so we wouldn't be able to say if it is possible to make the firmware load the boot loader off of the u-boot1 partition, you can try it yourself but we can't guarantee it will work.

 

 

Regards,

 

-Pablo
CGrah4
Novice
66 Views

Thank you, I would love to try this myself. Where can I find the source code for the firmware? Or maybe you can just e-mail it to me? If you need my email address, send me a PM.

idata
Community Manager
66 Views

Hi Grahn,

 

 

You're welcome!

 

You can download the Board Support Packages here:

 

https://downloadcenter.intel.com/download/23197/Intel-Quark-SoC-X1000-Board-Support-Package-BSP- https://downloadcenter.intel.com/download/23197/Intel-Quark-SoC-X1000-Board-Support-Package-BSP-.

 

Let me know if everything you need is in there, I'll be waiting for your reply.

 

 

Regards,

 

-Pablo
CGrah4
Novice
66 Views

Hi,

The link you sent me is a board support package for the wrong product.

I'm wondering where I can find the source code for the Intel FirmWare Interface (ifwi) for the edison. That is what first runs when the edison powers on and it loads u-boot from the u-boot0 partition. I cannot load u-boot from the u-boot1 partition without access to the ifwi source code.

Thank you

idata
Community Manager
66 Views

Hi Grahn,

 

 

I'm really sorry for the confusion. For some reason I thought this was a Galileo thread, that's why I provided the Intel Quark SoC X1000 BSP.

 

All information related to the Edison u-boot is in this link https://github.com/01org/edison-u-boot https://github.com/01org/edison-u-boot. Hopefully this is what you're looking for.

 

 

Regards,

 

-Pablo
CGrah4
Novice
66 Views

That is not what I am looking for.

I'm wondering where I can find the source code for the Intel FirmWare Interface (ifwi) for the edison. That is what first runs when the edison powers on and what loads u-boot from the u-boot0 partition. I cannot load u-boot from the u-boot1 partition without access to the ifwi source code.

idata
Community Manager
66 Views

Hi Grahn,

 

 

I've been looking for the files you were looking for to edit the u-boot1 partition, however, there is no access for the Intel Firmware Interface (IFWI). I'm wondering if this project has something to do with your company's project, is this the case?

 

 

Regards,

 

-Pablo

 

idata
Community Manager
66 Views

Hi Grahn,

 

 

I would like to know if you checked the question in my previous reply (which you can see above). Is this something you need for a bigger project or something similar?

 

 

Regards,

 

-Pablo
CGrah4
Novice
66 Views

Yes, this is for a commercial project.

I want a way to do a safe update of the bootloader and have the IFWI fall back to ⁠⁠⁠⁠u-boot1⁠⁠⁠⁠ if something goes wrong.

Thank you

idata
Community Manager
66 Views

Hi Grahn,

 

 

I just sent you a private message with some questions. I would appreciate if you can help us with that.

 

 

Regards,

 

-Pablo
idata
Community Manager
66 Views

Hi Grahn,

 

 

Were you able to check our PM?

 

 

Regards,

 

-Pablo
Reply