lib: div64: sync with Linux
[platform/kernel/u-boot.git] / board / freescale / mx6sabresd / README
1 How to use and build U-Boot on mx6sabresd:
2 ----------------------------------
3
4 Currently there are three methods for booting mx6sabresd boards:
5
6 1. Booting via Normal U-Boot (u-boot.imx)
7
8 2. Booting via SPL (SPL and u-boot.img)
9
10 3. Booting via Falcon mode (SPL launches the kernel directly)
11
12
13 1. Booting via Normal U-Boot
14 ----------------------------
15
16 $ make mx6qsabresd_defconfig (If you want to build for mx6qsabresd)
17
18 or
19
20 $ make mx6dlsabresd_defconfig (If you want to build for mx6dlsabresd)
21
22 $ make
23
24 This will generate the image called u-boot.imx.
25
26 - Flash the u-boot.imx binary into the SD card:
27
28 $ sudo dd if=u-boot.imx of=/dev/sdb bs=1K seek=1 && sync
29
30
31 2. Booting via SPL
32 ------------------
33
34 Other method for building U-Boot on mx6qsabresd and mx6qpsabresd is
35 through SPL. In order to do so:
36
37 $ make mx6sabresd_spl_defconfig
38 $ make
39
40 This will generate the SPL image called SPL and the u-boot.img.
41
42 - Flash the SPL image into the SD card:
43
44 $ sudo dd if=SPL of=/dev/sdb bs=1K seek=1 && sync
45
46 - Flash the u-boot.img image into the SD card:
47
48 $ sudo dd if=u-boot.img of=/dev/sdbbs=1K seek=69 && sync
49
50
51 3. Booting via Falcon mode
52 --------------------------
53
54 $ make mx6sabresd_spl_defconfig
55 $ make
56
57 This will generate the SPL image called SPL and the u-boot.img.
58
59 - Flash the SPL image into the SD card:
60
61 $ sudo dd if=SPL of=/dev/sdb bs=1K seek=1 oflag=sync status=none && sync
62
63 - Flash the u-boot.img image into the SD card:
64
65 $ sudo dd if=u-boot.img of=/dev/sdbbs=1K seek=69 oflag=sync status=none && sync
66
67 Create a partition for root file system and extract it there:
68
69 $ sudo tar xvf rootfs.tar.gz -C /media/root
70
71 The SD card must have enough space for raw "args" and "kernel".
72 To configure Falcon mode for the first time, on U-Boot do the following commands:
73
74 - Setup the IP server:
75
76 # setenv serverip <server_ip_address>
77
78 - Download dtb file:
79
80 # dhcp ${fdt_addr} imx6q-sabresd.dtb
81
82 - Download kernel image:
83
84 # dhcp ${loadaddr} uImage
85
86 - Write kernel at 2MB offset:
87
88 # mmc write ${loadaddr} 0x1000 0x4000
89
90 - Setup kernel bootargs:
91
92 # setenv bootargs "console=ttymxc0,115200 root=/dev/mmcblk1p1 rootfstype=ext4 rootwait quiet rw"
93
94 - Prepare args:
95
96 # spl export fdt ${loadaddr} - ${fdt_addr}
97
98 - Write args 1MB data (0x800 sectors) to 1MB offset (0x800 sectors)
99
100 # mmc write 18000000 0x800 0x800
101
102 - Press KEY_VOL_UP key, power up the board and then SPL binary will
103 launch the kernel directly.