Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

If you do not specify a load address, then the value will be taken from the loadaddr environment variable. On the NXP i.MX RT1050 EVK RT10XX EVKB board, loadaddr is set as follows, placing the download buffer into the on-module SDRAM:

...

Let's use netboot to boot Linux via TFTP from the sample Linux image (rootfs.uImage) included in the Emcraft software distribution. Copy rootfs.uImage to the appropriate (tftpdir) TFTP directory on the host and then from U-Boot on the target set the image environment variable to point to the image:

Code Block
=> setenv image imxrt1050/rootfs.uImage
=> saveenv
Saving Environment to MMC... Writing to MMC(0)... OK
=> run netboot
Using ethernet@402D8000ethernet@402d8000 device
TFTP from server 192.168.1.96; our IP address is 192.168.1.86
Filename 'imxrt1050/rootfs.uImage'.
Load address: 0x80007fc0
...

         #########################################################
         109.4 KiB/s
done
Bytes transferred = 82774628661287 (7e4dd6842927 hex)
## Booting kernel from Legacy Image at 80007fc0 ...
   Image Name:   Linux-56.156.7136
   Image Type:   ARM Linux Multi-File Image (uncompressed)
   Data Size:    82773988661223 Bytes = 78.93 MiB
   Load Address: 80008000
   Entry Point:  80008001
   Contents:
      Image 0: 82698568649380 Bytes = 78.92 MiB
      Image 1: 753011831 Bytes = 711.46 KiB
   Verifying Checksum ... OK
## Flattened Device Tree from multi component Image at 80007FC0
   Booting using the fdt at 0x807eb02c0x80847ab0
Working FDT set to 80847ab0
   Loading Multi-File Image to 80008000
   Loading Device Tree to 81e8100081dfa000, end 81e85d6981dffe36 ... OK
Working FDT set to 81dfa000

Starting kernel ...

Booting Linux on physical CPU 0x0
Linux version 5.15.71 (sasha@workbench.emcraft.com) (arm-none-eabi-gcc 
(GNU Arm Embedded Toolchain 10.3-2021.10) 10.3.1 20210824 (release), 
GNU ld (GNU Arm Embedded Toolchain 10.3-2021.10) 2.36.1.20210621) #2 
Mon Sep 25 08:03:11 UTC 2023
CPU: ARMv7-M [411fc271] revision 1 (ARMv7M), cr=00000000
CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
OF: fdt: Machine
model: NXP IMXRT1050-evk board
...
This
architecture does not have kernel memory protection.
Run /init as init process
[7151] Jan 01 0004:0019:0158 Running in background
/ # mmc0: new high speed SDHC card at address 0007
mmcblk0: mmc0:0007 SD8GB 7.42 GiB
 mmcblk0: p1
Micrel KSZ8081 or KSZ8091 402d8000.ethernet-1:02: attached PHY  driver (mii_bus:phy_addr=402d8000.ethernet-1:02, irq=POLL)
fec 402d8000.ethernet eth0: Link is Up - 100Mbps/Full - flow control off
random: crng init done
/ # ps

 PID USER       VSZ STAT COMMAND
    1 root       872876 S    init
    2 root         0 SW   [kthreadd]
    3 root         0 SW   [pool_workqueue_]
    4 root         0 IW<  [kworker/0:0H-kbR-rcu_g]
    5 root         0 IWIW<   [kworker/u2:0-evR-rcu_p]
    6 root         0 IW<  [mm_percpu_wqkworker/R-slub_]
    7 root         0 SW IW<  [ksoftirqdkworker/0R-netns]
    8 root         0 SWIW   [kdevtmpfskworker/0:0-eve]
    9 root         0 IW<  [inet_frag_wqkworker/0:0H-ev]
   10 root         0 IW<IW   [writebackkworker/0:1-dev]
   3411 root         0 IW IW<  [kblockdkworker/u2:0-ev]
   3512 root         0 IWIW<   [kworker/0:1-pmR-mm_pe]
   3613 root         0 IW<SW   [rpciodksoftirqd/0]
   3714 root         0 IW IW<  [kworker/u3:0rcu_preempt]
   3815 root         0 SW IW<  [xprtiodkdevtmpfs]
   3916 root         0 IW<  [cfg80211kworker/R-inet_]
   4017 root         0 SWIW   [kswapd0kworker/u2:1-ev]
   4118 root         0 IW IW<  [kworker/R-write]
   19 root         0 IW<  [kworker/u2:1R-evkbloc]
   4220 root         0 IW<  [nfsiodkworker/0:1H-kb]
   4621 root         0 IW<  [uaskworker/R-rpcio]
   4722 root         0 SW<IW<  [krfcommdkworker/R-xprti]
   4823 root         0 IW<  [sdhcikworker/R-cfg80]
   4924 root         0 SW   [irq/37-mmc0kswapd0]
   5125 root         0 IW<  [ci_otgkworker/R-nfsio]
   5227 root         0 IW<  [ci_power_lostkworker/R-uas]
   5428 root         0 IW<  [ci_power_lostkworker/u3:0]
   5629 root         0 IWIW<   [kworker/0:3R-evesdhci]
   7130 root       728 S 0 SW  dropbear -R[irq/190-mmc0]
   7331 root       884 S 0 SW<  -/bin/hush[krfcommd]
   8032 root         0 IW<  [mmc_completekworker/R-mmc_c]
   33 root         0 IW   [kworker/u2:2]
   8234 root         0 IW<  [kworker/0:1HR-evft5x0]
   9635 root         0 IW   [kworker/0:2-pm]
   36 root         0-eve]
   97 IW<  [kworker/R-ci_ot]
   51 root       728 S    dropbear -R
   53 root       888 S    -/bin/hush
   74 root       880884 R    ps
/ #

Here are some troubleshooting tips, in case tftpboot does not work for you from U-Boot:

...