diff options
| -rw-r--r-- | README.hardware | 163 |
1 files changed, 1 insertions, 162 deletions
diff --git a/README.hardware b/README.hardware index 85f033057e..3cdb7a2459 100644 --- a/README.hardware +++ b/README.hardware | |||
| @@ -47,7 +47,6 @@ Hardware Reference Boards | |||
| 47 | The following boards are supported by the meta-yocto-bsp layer: | 47 | The following boards are supported by the meta-yocto-bsp layer: |
| 48 | 48 | ||
| 49 | * Freescale MPC8315E-RDB (mpc8315e-rdb) | 49 | * Freescale MPC8315E-RDB (mpc8315e-rdb) |
| 50 | * Ubiquiti Networks RouterStation Pro (routerstationpro) | ||
| 51 | 50 | ||
| 52 | For more information see the board's section below. The appropriate MACHINE | 51 | For more information see the board's section below. The appropriate MACHINE |
| 53 | variable value corresponding to the board is given in brackets. | 52 | variable value corresponding to the board is given in brackets. |
| @@ -59,6 +58,7 @@ Consumer Devices | |||
| 59 | The following consumer devices are supported by the meta-yocto-bsp layer: | 58 | The following consumer devices are supported by the meta-yocto-bsp layer: |
| 60 | 59 | ||
| 61 | * Intel x86 based PCs and devices (genericx86) | 60 | * Intel x86 based PCs and devices (genericx86) |
| 61 | * Ubiquiti Networks EdgeRouter Lite (edgerouter) | ||
| 62 | 62 | ||
| 63 | For more information see the device's section below. The appropriate MACHINE | 63 | For more information see the device's section below. The appropriate MACHINE |
| 64 | variable value corresponding to the device is given in brackets. | 64 | variable value corresponding to the device is given in brackets. |
| @@ -240,167 +240,6 @@ Load the kernel and dtb (device tree blob), and boot the system as follows: | |||
| 240 | => bootm 1000000 - 2000000 | 240 | => bootm 1000000 - 2000000 |
| 241 | 241 | ||
| 242 | 242 | ||
| 243 | Ubiquiti Networks RouterStation Pro (routerstationpro) | ||
| 244 | ====================================================== | ||
| 245 | |||
| 246 | The RouterStation Pro is an Atheros AR7161 MIPS-based board. Geared towards | ||
| 247 | networking applications, it has all of the usual features as well as three | ||
| 248 | type IIIA mini-PCI slots and an on-board 3-port 10/100/1000 Ethernet switch, | ||
| 249 | in addition to the 10/100/1000 Ethernet WAN port which supports | ||
| 250 | Power-over-Ethernet. | ||
| 251 | |||
| 252 | Setup instructions | ||
| 253 | ------------------ | ||
| 254 | |||
| 255 | You will need the following: | ||
| 256 | * A serial cable - female to female (or female to male + gender changer) | ||
| 257 | NOTE: cable must be straight through, *not* a null modem cable. | ||
| 258 | * USB flash drive or hard disk that is able to be powered from the | ||
| 259 | board's USB port. | ||
| 260 | * tftp server installed on your workstation | ||
| 261 | |||
| 262 | NOTE: in the following instructions it is assumed that /dev/sdb corresponds | ||
| 263 | to the USB disk when it is plugged into your workstation. If this is not the | ||
| 264 | case in your setup then please be careful to substitute the correct device | ||
| 265 | name in all commands where appropriate. | ||
| 266 | |||
| 267 | --- Preparation --- | ||
| 268 | |||
| 269 | 1) Build an image (e.g. core-image-minimal) using "routerstationpro" as the | ||
| 270 | MACHINE | ||
| 271 | |||
| 272 | 2) Partition the USB drive so that primary partition 1 is type Linux (83). | ||
| 273 | Minimum size depends on your root image size - core-image-minimal probably | ||
| 274 | only needs 8-16MB, other images will need more. | ||
| 275 | |||
| 276 | # fdisk /dev/sdb | ||
| 277 | Command (m for help): p | ||
| 278 | |||
| 279 | Disk /dev/sdb: 4011 MB, 4011491328 bytes | ||
| 280 | 124 heads, 62 sectors/track, 1019 cylinders, total 7834944 sectors | ||
| 281 | Units = sectors of 1 * 512 = 512 bytes | ||
| 282 | Sector size (logical/physical): 512 bytes / 512 bytes | ||
| 283 | I/O size (minimum/optimal): 512 bytes / 512 bytes | ||
| 284 | Disk identifier: 0x0009e87d | ||
| 285 | |||
| 286 | Device Boot Start End Blocks Id System | ||
| 287 | /dev/sdb1 62 1952751 976345 83 Linux | ||
| 288 | |||
| 289 | 3) Format partition 1 on the USB as ext3 | ||
| 290 | |||
| 291 | # mke2fs -j /dev/sdb1 | ||
| 292 | |||
| 293 | 4) Mount partition 1 and then extract the contents of | ||
| 294 | tmp/deploy/images/core-image-XXXX.tar.bz2 into it (preserving permissions). | ||
| 295 | |||
| 296 | # mount /dev/sdb1 /media/sdb1 | ||
| 297 | # cd /media/sdb1 | ||
| 298 | # tar -xvjpf tmp/deploy/images/core-image-XXXX.tar.bz2 | ||
| 299 | |||
| 300 | 5) Unmount the USB drive and then plug it into the board's USB port | ||
| 301 | |||
| 302 | 6) Connect the board's serial port to your workstation and then start up | ||
| 303 | your favourite serial terminal so that you will be able to interact with | ||
| 304 | the serial console. If you don't have a favourite, picocom is suggested: | ||
| 305 | |||
| 306 | $ picocom /dev/ttyUSB0 -b 115200 | ||
| 307 | |||
| 308 | 7) Connect the network into eth0 (the one that is NOT the 3 port switch). If | ||
| 309 | you are using power-over-ethernet then the board will power up at this point. | ||
| 310 | |||
| 311 | 8) Start up the board, watch the serial console. Hit Ctrl+C to abort the | ||
| 312 | autostart if the board is configured that way (it is by default). The | ||
| 313 | bootloader's fconfig command can be used to disable autostart and configure | ||
| 314 | the IP settings if you need to change them (default IP is 192.168.1.20). | ||
| 315 | |||
| 316 | 9) Make the kernel (tmp/deploy/images/vmlinux-routerstationpro.bin) available | ||
| 317 | on the tftp server. | ||
| 318 | |||
| 319 | 10) If you are going to write the kernel to flash (optional - see "Booting a | ||
| 320 | kernel directly" below for the alternative), remove the current kernel and | ||
| 321 | rootfs flash partitions. You can list the partitions using the following | ||
| 322 | bootloader command: | ||
| 323 | |||
| 324 | RedBoot> fis list | ||
| 325 | |||
| 326 | You can delete the existing kernel and rootfs with these commands: | ||
| 327 | |||
| 328 | RedBoot> fis delete kernel | ||
| 329 | RedBoot> fis delete rootfs | ||
| 330 | |||
| 331 | --- Booting a kernel directly --- | ||
| 332 | |||
| 333 | 1) Load the kernel using the following bootloader command: | ||
| 334 | |||
| 335 | RedBoot> load -m tftp -h <ip of tftp server> vmlinux-routerstationpro.bin | ||
| 336 | |||
| 337 | You should see a message on it being successfully loaded. | ||
| 338 | |||
| 339 | 2) Execute the kernel: | ||
| 340 | |||
| 341 | RedBoot> exec -c "console=ttyS0,115200 root=/dev/sda1 rw rootdelay=2 board=UBNT-RSPRO" | ||
| 342 | |||
| 343 | Note that specifying the command line with -c is important as linux-yocto does | ||
| 344 | not provide a default command line. | ||
| 345 | |||
| 346 | --- Writing a kernel to flash --- | ||
| 347 | |||
| 348 | 1) Go to your tftp server and gzip the kernel you want in flash. It should | ||
| 349 | halve the size. | ||
| 350 | |||
| 351 | 2) Load the kernel using the following bootloader command: | ||
| 352 | |||
| 353 | RedBoot> load -r -b 0x80600000 -m tftp -h <ip of tftp server> vmlinux-routerstationpro.bin.gz | ||
| 354 | |||
| 355 | This should output something similar to the following: | ||
| 356 | |||
| 357 | Raw file loaded 0x80600000-0x8087c537, assumed entry at 0x80600000 | ||
| 358 | |||
| 359 | Calculate the length by subtracting the first number from the second number | ||
| 360 | and then rounding the result up to the nearest 0x1000. | ||
| 361 | |||
| 362 | 3) Using the length calculated above, create a flash partition for the kernel: | ||
| 363 | |||
| 364 | RedBoot> fis create -b 0x80600000 -l 0x240000 kernel | ||
| 365 | |||
| 366 | (change 0x240000 to your rounded length -- change "kernel" to whatever | ||
| 367 | you want to name your kernel) | ||
| 368 | |||
| 369 | --- Booting a kernel from flash --- | ||
| 370 | |||
| 371 | To boot the flashed kernel perform the following steps. | ||
| 372 | |||
| 373 | 1) At the bootloader prompt, load the kernel: | ||
| 374 | |||
| 375 | RedBoot> fis load -d -e kernel | ||
| 376 | |||
| 377 | (Change the name "kernel" above if you chose something different earlier) | ||
| 378 | |||
| 379 | (-e means 'elf', -d 'decompress') | ||
| 380 | |||
| 381 | 2) Execute the kernel using the exec command as above. | ||
| 382 | |||
| 383 | --- Automating the boot process --- | ||
| 384 | |||
| 385 | After writing the kernel to flash and testing the load and exec commands | ||
| 386 | manually, you can automate the boot process with a boot script. | ||
| 387 | |||
| 388 | 1) RedBoot> fconfig | ||
| 389 | (Answer the questions not specified here as they pertain to your environment) | ||
| 390 | 2) Run script at boot: true | ||
| 391 | Boot script: | ||
| 392 | .. fis load -d -e kernel | ||
| 393 | .. exec | ||
| 394 | Enter script, terminate with empty line | ||
| 395 | >> fis load -d -e kernel | ||
| 396 | >> exec -c "console=ttyS0,115200 root=/dev/sda1 rw rootdelay=2 board=UBNT-RSPRO" | ||
| 397 | >> | ||
| 398 | 3) Answer the remaining questions and write the changes to flash: | ||
| 399 | Update RedBoot non-volatile configuration - continue (y/n)? y | ||
| 400 | ... Erase from 0xbfff0000-0xc0000000: . | ||
| 401 | ... Program from 0x87ff0000-0x88000000 at 0xbfff0000: . | ||
| 402 | 4) Power cycle the board. | ||
| 403 | |||
| 404 | EdgeRouter Lite(edgerouter) | 243 | EdgeRouter Lite(edgerouter) |
| 405 | ===================================== | 244 | ===================================== |
| 406 | 245 | ||
