]>
Commit | Line | Data |
---|---|---|
ed407be5 T |
1 | Board: Nokia RX-51 aka N900 |
2 | ||
3 | This board definition results in a u-boot.bin which can be chainloaded | |
4 | from NOLO in qemu or on a real N900. It does very little hardware config | |
5 | because NOLO has already configured the board. Only needed is enabling | |
6 | internal eMMC memory via twl4030 regulator which is not enabled by NOLO. | |
7 | ||
8 | NOLO is expecting a kernel image and will treat any image it finds in | |
9 | onenand as such. This u-boot is intended to be flashed to the N900 like | |
10 | a kernel. In order to transparently boot the original kernel, it will be | |
11 | appended to u-boot.bin at 0x40000. NOLO will load the entire image into | |
12 | (random) memory and execute u-boot, which saves hw revision, boot reason | |
13 | and boot mode ATAGs set by NOLO. Then the bootscripts will attempt to load | |
14 | uImage or boot.scr from a fat, ext2/ext3 or ext4 filesystem in external | |
15 | SD card or internal eMMC memory. If this fails or keyboard is closed then | |
16 | the appended kernel image will be booted using some generated and some | |
17 | stored ATAGs (see boot order). | |
18 | ||
19 | There is support for hardware watchdog. Hardware watchdog is started by | |
20 | NOLO so u-boot must kick watchdog to prevent reboot device (but not very | |
21 | often, max every 2 seconds). There is also support for framebuffer display | |
22 | output with ANSI espace codes and the N900 HW keyboard input. USB tty works | |
23 | but is disabled because it prevents the current Maemo kernel from booting. | |
24 | ||
25 | When U-Boot is starting it enable IBE bit in Auxiliary Control Register, | |
26 | which is needed for Thumb-2 ISA support. It is workaround for errata 430973. | |
27 | ||
28 | Default boot order: | |
29 | ||
30 | * 0. if keyboard is closed boot automatically attached kernel image | |
31 | * 1. try boot from external SD card | |
32 | * 2. try boot from internal eMMC memory | |
33 | * 3. try boot from attached kernel image | |
34 | ||
35 | Boot from SD or eMMC in this order: | |
36 | ||
37 | * 1. | |
38 | * 1.1 find boot.scr on first fat partition | |
39 | * 1.2 find uImage on first fat parition | |
40 | * 1.3 same order for 2. - 4. fat partition | |
41 | * 2. same as 1. but for ext2/3 partition | |
42 | * 3. same as 1. but for ext4 partition | |
43 | ||
44 | ||
45 | Available additional commands/variables: | |
46 | ||
47 | * run sercon - Use serial port for control | |
48 | * run usbcon - Use usbtty for control | |
49 | * run vgacon - Use framebuffer and HW keyboard for control (default) | |
50 | ||
51 | * run sdboot - Boot from external SD card (see boot order) | |
52 | * run emmcboot - Boot from internal eMMC memory (see boot order) | |
53 | * run attachboot - Boot attached kernel image (attached to U-Boot binary) | |
54 | ||
55 | * run scriptload - Load boot script ${mmcscriptfile} | |
56 | * run scriptboot - Run loaded boot script | |
57 | * run kernload - Load kernel image ${mmckernfile} | |
58 | * run initrdload - Load initrd image ${mmcinitrdfile} | |
59 | * run kernboot - Boot loaded kernel image | |
60 | * run kerninitrdboot - Boot loaded kernel image with loaded initrd image | |
61 | ||
62 | * run trymmcscriptboot - Try to load and boot script ${mmcscriptfile} | |
63 | * run trymmckernboot - Try to load and boot kernel image ${mmckernfile} | |
64 | * run trymmckerninitrdboot - Try to load and boot kernel image ${mmckernfile} | |
93e14596 | 65 | with initrd image ${mmcinitrdfile} |
ed407be5 T |
66 | |
67 | Additional variables for loading files from mmc: | |
68 | ||
69 | * mmc ${mmcnum} (0 - external, 1 - internal) | |
70 | * partition number ${mmcpart} (1 - 4) | |
71 | * parition type ${mmctype} (fat, ext2) | |
72 | ||
73 | Additional varuables for booting kernel: | |
74 | ||
75 | * setup_omap_atag - Add OMAP table into atags structure (needs maemo kernel) | |
76 | * setup_console_atag - Enable serial console in OMAP table | |
77 | * setup_boot_reason_atag - Change boot reason in OMAP table | |
78 | * setup_boot_mode_atag - Change boot mode in OMAP table | |
79 | ||
80 | USB TTY: | |
81 | ||
82 | Maemo kernel 2.6.28 will crash if u-boot enable usb tty. So USB TTY is disabled. | |
83 | For enabling USB TTY just add this line to file include/configs/nokia_rx51.h | |
84 | ||
85 | #define CONFIG_USB_TTY | |
86 | ||
87 | ||
88 | ONENAND support: | |
89 | ||
90 | ONENAND support is disabled because not working yet and cause linux kernel to | |
91 | crash or no access to mtd. For enabling ONENAND support add this line at begin | |
92 | of file include/configs/nokia_rx51.h | |
93 | ||
94 | #define ONENAND_SUPPORT | |
95 | ||
96 | ||
97 | UBIFS support: | |
98 | ||
99 | UBIFS support is disabled, because U-Boot image is too big and cannot be | |
100 | flashed with attached zImage to RX-51 kernel nand area. For enabling UBIFS | |
101 | support first enable ONENAND support and then add this line at begin of file | |
102 | include/configs/nokia_rx51.h | |
103 | ||
104 | #define UBIFS_SUPPORT |