aboutsummaryrefslogtreecommitdiffstats
path: root/docs/BOOT.tftp
blob: 5b6d3386a0c5ab619d2b2ae49016350244f96fe5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Boot Linux via TFTP (using U-Boot)
==================================

Note: This boot flow requires a TFTP server.

Boot your system into U-Boot, using an alternative boot method (e.g. JTAG, SD).

Place the following images into the root of the TFTP server directory:
	* core-image-minimal-<machine name>.cpio.gz.u-boot (RootFS)
	* linux.bin.ub or uImage (Linux Kernel)
	* <kernel binary>-<machine name>.dtb (DTB)

The serial console of the target board will display the U-Boot console.
Configure the 'ipaddr' and 'serverip' of the U-Boot environment.
	U-Boot> set serverip <server ip>
	U-Boot> set ipaddr <board ip>

Using the U-Boot console; load the Kernel, RootFS and the DTB into memory.
And then boot Linux using the 'bootm' command. (Note the load addresses will
be dependant on machine used)

For MicroBlaze (kc705-microblazeel):
	U-Boot> tftpboot 0x85000000 linux.bin.ub
	U-Boot> tftpboot 0x86000000 core-image-minimal-<machine name>.cpio.gz.u-boot
	U-Boot> tftpboot 0x84000000 <machine name>.dtb
	U-Boot> bootm 0x85000000 0x86000000 0x84000000

For Zynq:
	U-Boot> tftpboot 0x2000000 uImage
	U-Boot> tftpboot 0x3000000 core-image-minimal-<machine name>.cpio.gz.u-boot
	U-Boot> tftpboot 0x2A00000 uImage-<machine name>.dtb
	U-Boot> bootm 0x2000000 0x3000000 0x2A00000

U-Boot will prepare the Kernel for boot and then it will being to initialize.