mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-12-24 20:13:39 +00:00
fe482b886d
`egrep` has been deprecated in GNU grep since 2007, and since 3.8 it emits obsolescence warnings: https://git.savannah.gnu.org/cgit/grep.git/commit/?id=a9515624709865d480e3142fd959bccd1c9372d1 Acked-by: Dhruva Gole <d-gole@ti.com>
170 lines
4.9 KiB
ReStructuredText
170 lines
4.9 KiB
ReStructuredText
.. SPDX-License-Identifier: GPL-2.0+
|
|
.. sectionauthor:: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
|
|
|
|
Edison
|
|
======
|
|
|
|
Build Instructions for U-Boot as main bootloader
|
|
------------------------------------------------
|
|
|
|
Simple you can build U-Boot and obtain u-boot.bin::
|
|
|
|
$ make edison_defconfig
|
|
$ make all
|
|
|
|
Updating U-Boot on Edison
|
|
-------------------------
|
|
|
|
By default Intel Edison boards are shipped with preinstalled heavily
|
|
patched U-Boot v2014.04. Though it supports DFU which we may be able to
|
|
use.
|
|
|
|
1. Prepare u-boot.bin as described in chapter above. You still need one
|
|
more step (if and only if you have original U-Boot), i.e. run the
|
|
following command::
|
|
|
|
$ truncate -s %4096 u-boot.bin
|
|
|
|
2. Run your board and interrupt booting to U-Boot console. In the console
|
|
call::
|
|
|
|
=> run do_force_flash_os
|
|
|
|
3. Wait for few seconds, it will prepare environment variable and runs
|
|
DFU. Run DFU command from the host system::
|
|
|
|
$ dfu-util -v -d 8087:0a99 --alt u-boot0 -D u-boot.bin
|
|
|
|
4. Return to U-Boot console and following hint. i.e. push Ctrl+C, and
|
|
reset the board::
|
|
|
|
=> reset
|
|
|
|
Updating U-Boot using xFSTK
|
|
---------------------------
|
|
|
|
You can also update U-Boot using the xfstk-dldr-solo tool if you can build it.
|
|
One way to do that is to follow the `xFSTK`_ instructions. In short, after you
|
|
install all necessary dependencies and clone repository, it will look like this:
|
|
|
|
.. code-block:: sh
|
|
|
|
cd xFSTK
|
|
export DISTRIBUTION_NAME=ubuntu20.04
|
|
export BUILD_VERSION=1.8.5
|
|
git checkout v$BUILD_VERSION
|
|
...
|
|
|
|
Once you have built it, you can copy xfstk-dldr-solo to /usr/local/bin and
|
|
libboost_program_options.so.1.54.0 to /usr/lib/i386-linux-gnu/ and with luck
|
|
it will work. You might find this `drive`_ helpful.
|
|
|
|
If it does, then you can download and unpack the Edison recovery image,
|
|
install dfu-util, reset your board and flash U-Boot like this:
|
|
|
|
.. code-block:: sh
|
|
|
|
xfstk-dldr-solo --gpflags 0x80000007 \
|
|
--osimage u-boot-edison.img \
|
|
--fwdnx recover/edison_dnx_fwr.bin \
|
|
--fwimage recover/edison_ifwi-dbg-00.bin \
|
|
--osdnx recover/edison_dnx_osr.bin
|
|
|
|
This should show the following
|
|
|
|
.. code-block:: none
|
|
|
|
XFSTK Downloader Solo 1.8.5
|
|
Copyright (c) 2015 Intel Corporation
|
|
Build date and time: Aug 15 2020 15:07:13
|
|
|
|
.Intel SoC Device Detection Found
|
|
Parsing Commandline....
|
|
Registering Status Callback....
|
|
.Initiating Download Process....
|
|
.......(lots of dots)........XFSTK-STATUS--Reconnecting to device - Attempt #1
|
|
.......(even more dots)......................
|
|
|
|
You have about 10 seconds after resetting the board to type the above command.
|
|
If you want to check if the board is ready, type:
|
|
|
|
.. code-block:: none
|
|
|
|
lsusb | grep -E "8087|8086"
|
|
Bus 001 Device 004: ID 8086:e005 Intel Corp.
|
|
|
|
If you see a device with the same ID as above, the board is waiting for your
|
|
command.
|
|
|
|
After about 5 seconds you should see some console output from the board:
|
|
|
|
.. code-block:: none
|
|
|
|
******************************
|
|
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 ***
|
|
|
|
After another 10 seconds the xFSTK tool completes and the board resets. About
|
|
10 seconds after that should see the above message again and then within a few
|
|
seconds U-Boot should start on your board:
|
|
|
|
.. code-block:: none
|
|
|
|
U-Boot 2020.10-rc3 (Sep 03 2020 - 18:44:28 -0600)
|
|
|
|
CPU: Genuine Intel(R) CPU 4000 @ 500MHz
|
|
DRAM: 980.6 MiB
|
|
WDT: Started with servicing (60s timeout)
|
|
MMC: mmc@ff3fc000: 0, mmc@ff3fa000: 1
|
|
Loading Environment from MMC... OK
|
|
In: serial
|
|
Out: serial
|
|
Err: serial
|
|
Saving Environment to MMC... Writing to redundant MMC(0)... OK
|
|
Saving Environment to MMC... Writing to MMC(0)... OK
|
|
Net: No ethernet found.
|
|
Hit any key to stop autoboot: 0
|
|
Target:blank
|
|
Partitioning using GPT
|
|
Writing GPT: success!
|
|
Saving Environment to MMC... Writing to redundant MMC(0)... OK
|
|
Flashing already done...
|
|
5442816 bytes read in 238 ms (21.8 MiB/s)
|
|
Valid Boot Flag
|
|
Setup Size = 0x00003c00
|
|
Magic signature found
|
|
Using boot protocol version 2.0c
|
|
Linux kernel version 3.10.17-poky-edison+ (ferry@kalamata) #1 SMP PREEMPT Mon Jan 11 14:54:18 CET 2016
|
|
Building boot_params at 0x00090000
|
|
Loading bzImage at address 100000 (5427456 bytes)
|
|
Magic signature found
|
|
Kernel command line: "rootwait ..."
|
|
Magic signature found
|
|
|
|
Starting kernel ...
|
|
|
|
...
|
|
|
|
Poky (Yocto Project Reference Distro) 1.7.2 edison ttyMFD2
|
|
|
|
edison login:
|
|
|
|
.. _xFSTK: https://github.com/edison-fw/xFSTK
|
|
.. _drive: https://drive.google.com/drive/u/0/folders/1URPHrOk9-UBsh8hjv-7WwC0W6Fy61uAJ
|