Hi Peter, On 17 September 2015 at 21:54, Simon Glass <s...@chromium.org> wrote: > > Hi Peter, > > On 9 September 2015 at 15:13, Peter Griffin <peter.grif...@linaro.org> wrote: > > The README had a few mistakes, and one of the URL's > > had changed. Also update the boot log with the latest > > boot trace from ATF, which now includes the mcuimage.bin. > > > > Signed-off-by: Peter Griffin <peter.grif...@linaro.org> > > --- > > board/hisilicon/hikey/README | 197 > > ++++++++++++++++++++++++++++++++----------- > > 1 file changed, 147 insertions(+), 50 deletions(-) > > > > diff --git a/board/hisilicon/hikey/README b/board/hisilicon/hikey/README > > index 25c8143..36adbdb 100644 > > --- a/board/hisilicon/hikey/README > > +++ b/board/hisilicon/hikey/README > > @@ -25,8 +25,12 @@ Currently the u-boot port supports: - > > Compile u-boot > > ============== > > > > -make CROSS_COMPILE=aarch64-linux-gnu- hikey_config > > -make CROSS_COMPILE=aarch64-linux-gnu- > > + > mkdir -p ./aarch64/bin > > + > cd ./aarch64 > > Do you really want the above? It seems odd that the 'cp' below expects > another level of subdir. > > > + > git clone http://git.denx.de/u-boot.git > > + > make CROSS_COMPILE=aarch64-linux-gnu- hikey_config > > + > make CROSS_COMPILE=aarch64-linux-gnu- > > + > cp u-boot.bin ./aarch64/bin/u-boot-hikey.bin > > > > ARM Trusted Firmware (ATF) & l-loader > > ===================================== > > @@ -34,27 +38,34 @@ ARM Trusted Firmware (ATF) & l-loader > > This u-boot port has been tested with l-loader, booting ATF, which then > > boots > > u-boot as the bl33.bin executable. > > > > +Get the BL30 mcu binary. > > + > wget -P aarch64/bin > > https://builds.96boards.org/releases/hikey/linaro/binaries/15.05/mcuimage.bin > > + > > 1. Get ATF source code > > -git clone https://github.com/96boards/arm-trusted-firmware.git > > + > cd ./aarch64 > > + > git clone https://github.com/96boards/arm-trusted-firmware.git > > + > cd ./arm-trusted-firmware > > > > -2. Compile ATF I use the makefile here > > -http://people.linaro.org/~peter.griffin/hikey/hikey-u-boot-release_r1/build-tf.mak > > +2. Compile ATF, I use the build-tf.mak in the directory with this README, > > and copy it to ATF directory > > + > cp ../u-boot/board/hisilicon/hikey/build-tf.mak . > > + > make -f build-tf.mak build > > > > 3. Get l-loader > > -git clone https://github.com/96boards/l-loader.git > > - > > -4. Make sym links to ATF bip / fip binaries > > -ln -s /home/griffinp/aarch64/bl1-hikey.bin bl1.bin > > -ln -s /home/griffinp/aarch64/fip-hikey.bin fip.bin > > + > cd ../ > > + > git clone https://github.com/96boards/l-loader.git > > + > cd ./l-loader > > > > -arm-linux-gnueabihf-gcc -c -o start.o start.S > > -arm-linux-gnueabihf-gcc -c -o debug.o debug.S > > -arm-linux-gnueabihf-ld -Bstatic -Tl-loader.lds -Ttext 0xf9800800 start.o > > debug.o -o loader > > -arm-linux-gnueabihf-objcopy -O binary loader temp > > +4. Make sym links to ATF bl1 / fip binaries > > + > ln -s ../bin/bl1-hikey.bin bl1.bin > > + > ln -s ../bin/fip-hikey.bin fip.bin > > > > -python gen_loader.py -o l-loader.bin --img_loader=temp --img_bl1=bl1.bin > > -sudo bash -x generate_ptable.sh > > -python gen_loader.py -o ptable.img --img_prm_ptable=prm_ptable.img > > --img_sec_ptable=sec_ptable.img > > + > arm-linux-gnueabihf-gcc -c -o start.o start.S > > + > arm-linux-gnueabihf-gcc -c -o debug.o debug.S > > + > arm-linux-gnueabihf-ld -Bstatic -Tl-loader.lds -Ttext 0xf9800800 > > start.o debug.o -o loader > > + > arm-linux-gnueabihf-objcopy -O binary loader temp > > + > python gen_loader.py -o ../bin/l-loader.bin --img_loader=temp > > --img_bl1=bl1.bin > > + > sudo bash -x generate_ptable.sh > > + > python gen_loader.py -o ../bin/ptable.img > > --img_prm_ptable=./prm_ptable.img --img_sec_ptable=./sec_ptable.img > > > > These instructions are adapted from > > https://github.com/96boards/documentation/wiki/HiKeyUEFI > > @@ -62,37 +73,49 @@ https://github.com/96boards/documentation/wiki/HiKeyUEFI > > FLASHING > > ======== > > > > -1. Connect jumper J2 to go into recovery mode and flash l-loader.bin with > > - fastboot using the hisi-idt.py utility > > +1. Connect the second jumper on J15 BOOT SEL, to go into recovery mode and > > flash l-loader.bin with > > +fastboot using the hisi-idt.py utility. > > + > > + > cd ../ > > + > git clone https://github.com/96boards/burn-boot.git > > > > -> git clone https://github.com/96boards/burn-boot.git > > -> sudo python /home/griffinp/Software/hikey/burn-boot/hisi-idt.py -d > > /dev/ttyUSB0 --img1=/tmp/l-loader.bin > > +The command below assumes HiKey enumerated as the first USB serial port > > + > sudo ./burn-boot/hisi-idt.py -d /dev/ttyUSB0 --img1=./bin/l-loader.bin > > > > -2. Once LED 0 comes on solid, it should be detected as a fastboot device > > - (on some boards I've found this to be unreliable) > > +2. Once LED 0 comes on solid, it should be detected as a fastboot device > > by plugging a USB A to mini B > > + cable from your PC to the USB OTG port of HiKey (on some boards I've > > found this to be unreliable). > > > > -sudo fastboot devices > > + > sudo fastboot devices > > + > > +0123456789ABCDEF fastboot > > > > 3. Flash the images > > -wget https://builds.96boards.org/releases/hikey/nvme.img > > -sudo fastboot flash ptable ptable.img > > -sudo fastboot flash fastboot fip.bin > > -sudo fastboot flash nvme nvme.img > > + > wget -P aarch64/bin wget > > https://builds.96boards.org/releases/hikey/linaro/binaries/latest/nvme.img > > + > sudo fastboot flash ptable ./bin/ptable.img > > + > sudo fastboot flash fastboot ./bin/fip-hikey.bin > > + > sudo fastboot flash nvme ./bin/nvme.img > > > > -4. Disconnect jumper J2, and reset the board and you will now (hopefully) > > +4. Disconnect second jumper on J15 BOOT SEL, and reset the board and you > > will now (hopefully) > > have ATF, booting u-boot from eMMC. On 'new' boards I've had to do the > > flashing twice in the past to avoid an ATF error. > > > > + Note: To get USB host working, also disconnect the USB OTG cable used > > for flashing. Otherwise you > > + will get 'dwc_otg_core_host_init: Timeout!' errors. > > + > > This time I was able to make progress and build everything. My board > doesn't boot past fastboot start-up but I'm going to try again in case > I got something wrong. It might be worth you trying out your > instructions from start to finish again just to be sure. > > BTW the 2mm 1.8v UART header on the board is genius! No one would > every think of that :-) It took me a month to get a special serial > UART from China and then I got to practice soldering.
And this is what I did wrong. I think it's a great idea to change to UART3 though. I got it booting correctly once. Sadly I think this means that I need both UARTs connected to see what is happening with fastboot. I think it is quite hard to figure out from the instructions is what I need to do each time I change U-Boot. IOW what is the dev cycle with U-Boot? I insert the jumper and boot, hoping that 'fastboot devices' will show something. It does not. I try running hisi-idt.py. It prints 'failed' repeatedly. After a lot of trial and error I got it to work with these steps: - build U-Boot - make -f build-tf.bin - insert jumper - disconnect USB - power board off and on - wait for it to say 'Switch to UART download...' on UART0 - run hisi-idt.py... - connect USB - run ;fastboot flash fip-hikey.bin' - remove jumper - power board on and off - it boots into U-Boot on UART3 I've only done this once and it is pretty tedious. Is there any shortcut please? Regards, Simon _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot