4 Replies Latest reply on Nov 15, 2016 1:07 PM by 0andriy

    How to recompile and flash U-Boot only.


      In case some people are interested (done on Ubuntu 14.04)



      git clone git://git.yoctoproject.org/meta-intel-edison
      ln -s meta-intel-edison/utils/Makfile.mk Makefile
      make setup



      cd out/linux64
      source poky/oe-init-build-env


      Files edition:

      bitbake -c devshell u-boot

      You get a new shell in u-boot sources directories. Modify the files as you need.



      bitbake -f -c compile u-boot


      Gernerate images:

      bitbake -c build u-boot
      ../../../meta-intel-edison/utils/flash/postBuild.sh .

      Note: Don't forget the . at the end of the line above!



      sudo toFlash/flashall.sh

      To simplify and accelerate the flashing, you can comment the lines related to "Flashing boot partition (kernel)" and "Flashing rootfs".


      In the end, your Edison board should boot your new U-Boot.

        • 1. Re: How to recompile and flash U-Boot only.

          Thanks for this, do you have the instructions how to do this having only the U-Boot Git repository clone? And just out of curiosity what is the version have you got at the end?

          • 2. Re: How to recompile and flash U-Boot only.

            Thx for sharing this ...

            but can I do this on Windows ... and what if my Edison is not booting at all anymore. i.e. this is my problem


            When reverting back to an older image the u-boot of my edison got damaged and now is stopping to boot after the PSH kernel boot



            PSH KERNEL VERSION: b0182b2b

                            WR: 20104000



            SCU IPC: 0x800000d0  0xfffce92c


            PSH miaHOB version: TNG.B0.VVBD.0000000c


            microkernel built 11:24:08 Feb  5 2015


            ******* PSH loader *******

            PCM page cache size = 192 KB

            Cache Constraint = 0 Pages

            Arming IPC driver ..

            Adding page store pool ..

            PagestoreAddr(IMR Start Address) = 0x04899000

            pageStoreSize(IMR Size)          = 0x00080000



            *** Ready to receive application ***



            So the kernel is not booting anymore and all the scripts that run on the edison won't work anymore





            • 3. Re: How to recompile and flash U-Boot only.

              The minimal thing you need to do to flash a new u-boot is:


              In u-boot:

              => run do_dfu_alt_info_mmc
              => dfu 0 mmc 0 10 # may need to be done more than once


              On host machine:

              # dfu-util --verbose --device 0x8087:0x0a99 --alt "u-boot0" --download u-boot.bin
              # dfu-util --verbose --device 0x8087:0x0a99 --alt "u-boot-env0" ---download edison-blankcdc.bin
              # dfu-util --verbose --device 0x8087:0x0a99 --alt "u-boot-env1" ---download edison-blankcdc.bin -R


              `u-boot.bin` and `edison-blankcdc.bin` (and other environments) are found in `build/tmp/deply/images/edison/`.  The `--alt` argument is the partition name; these are defined in the u-boot variable `dfu-alt-info`.  The `-R` causes a reboot on success.

              • 4. Re: How to recompile and flash U-Boot only.

                jpkotta yeah, thanks, I'm playing with U-Boot v2016.11 itself right now, seems I'm about to get it working.