blob: 0ca8f9ae5e458754c7b19390ca48097d287d500d (
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
Kernel and initrd Images
---------------------------
The bootloader running on the DreamPlug (u-boot) expects raw, uncompressed
kernel and initrd images, usually named uImage and uInitrd. The appropriate
device tree file (dtb) must also be overlaid on the kernel to boot
successfully.
By default Debian (and the Debian Live build process) generates compressed
images, eg initrd.img-3.2.0-4-kirkwood and vmlinuz-3.2.0-4-kirkwood.
The scripts ./config/hooks/kernel-image.sh.chroot and
./config/hooks/kernel-image.sh.binary repack the image files and copy them over
to the /live directory in the final binary filesystem.
DreamPlug u-Boot Overview
---------------------------
Many factory-configured DreamPlugs need their internal u-boot firmware updated
and re-configured to boot from the external SD card.
You may want to remove the internal microSD card for the sake of simplicity.
This will result in u-boot and linux boot warnings (eg, media not ready), but
these can be ignored.
The desired u-boot configuration is:
x_bootcmd_usb 'usb start'
baudrate 115200
bootcmd '${x_bootcmd_usb}; ${x_bootcmd_kernel}; ${x_bootcmd_initrd}; setenv bootargs ${x_bootargs} ${x_bootargs_root} ${x_bootargs_console}; bootm 0x6400000 0x6900000;'
x_bootcmd_kernel ext2load usb 1:1 0x6400000 live/uImage
x_bootcmd_initrd ext2load usb 1:1 0x6900000 live/uInitrd
x_bootargs_root root=/dev/sdb1
x_bootargs_console console=ttyS0,115200
x_bootargs boot=live config username=torouter hostname=torouter live-media=/dev/sdb1 live-media-timeout=10 debug plainroot nonetworking
HOWTO: flash and configure u-boot
-----------------------------------
The default SD card images include the u-boot firmware required to boot from
the card. Insert a flashed SD card into the DreamPlug and connect with screen:
$ screen /dev/ttyUSB0 115200
Power up the DreamPlug and quickly press enter in the screen session to
interrupt boot. Then enter the following commands into the running u-boot
session (change the last argument of the 'sf write' line, in hex, if the .kwb
file size changes from exactly 196076 bytes):
usb start
fatload usb 1 0x6400000 uboot.2012.04.01-2_armel.kwb
sf probe 0
sf erase 0x0 0x80000
sf write 0x6400000 0x0 0x2fdec
setenv baudrate 115200
setenv bootcmd '${x_bootcmd_usb}; ${x_bootcmd_kernel}; ${x_bootcmd_initrd}; setenv bootargs ${x_bootargs} ${x_bootargs_root} ${x_bootargs_console}; bootm 0x6400000 0x6900000;'
setenv x_bootcmd_usb 'usb start'
setenv x_bootcmd_kernel ext2load usb 1:1 0x6400000 live/uImage
setenv x_bootcmd_initrd ext2load usb 1:1 0x6900000 live/uInitrd
setenv x_bootargs_root root=/dev/sdb1
setenv x_bootargs_console console=ttyS0,115200
setenv x_bootargs boot=live config username=torouter hostname=torouter live-media=/dev/sdb1 live-media-timeout=10 debug plainroot nonetworking
saveenv
reset
NOTE: it's possible the above directions are out of date and need to be
refreshed
Background Info, Links
--------------------------
See the DreamPlug.jpg photo in this folder.
Random notes on the DreamPlug:
http://www.madore.org/~david/linux/dreamplug.html
|