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