Cirrus Logic EDB9315A
Useful Links and Tips - Various Boot Setup

 

 

Useful Links

Cirrus Logic EP9315

P1052.htm

Redboot User’s Guide

redboot-guide.html

Linux 2.6.8.1 for Cirrus Logic ARM Processors

http://arm.cirrus.com

Cirrus Logic : Public Access for Cirrus Logic EPD ARM Users

http://arm.cirrus.com

HOWTO for EDB93XX board

HOWTO_for_EDB93XX_board_Version_1.doc

How to Boot Linux using RedBoot

linux_1.4.2_9312_Demo_Guide.txt

 

Installing/Configuring TFTP Server

Installing_The_TFTP_Server_Software

tfftp Setup

This quick setup explains how to configure your Linux host machine to support PXE. Take a look at the link described above for a general setup.

Here is my setup:

server=192.168.0.2, EDB9315A=192.168.0.11

My /tftpboot layout:

~/html/cross-stuff/htdocs$ tree /tftpboot/

/tftpboot/

|-- EDB9315A

|   |-- initrd.gz

|   |-- rootfs-jffs2.img

|   `-- zImage

|-- LITE5200

|   |-- flashfs-jffs2-be.img

|   |-- initrd.gz

|   |-- rootfs-jffs2-be.img

|   |-- rootfs-jffs2.img

|   `-- vmlinux.img

|-- PCM3350

|   |-- bzImage

|   |-- initrd.gz

|   `-- rootfs-jffs2.img

|-- pxelinux.0

`-- pxelinux.cfg

      `-- C0A8000C

Full Network Boot (Ramdisk Root Filesystem)

This method describes how to boot both Linux and the root file-system from the Network (tftp):

·        The script build-linux-2.6.18.sh should have build the kernel image as /tftpboot/EDB9315A/bzImage

·        Customize the root filesystem build script as this

·        Then run it, that will generate the file /tftpboot/EDB9315A/initrd.gz

·        Power the EDB9315A board and hit Ctrl-C to stay in RedBoot.

·         Configure RedBoot and reinitialize the Flash:

RedBoot> fis init –f

Run script at boot: true

Boot script:

Enter script, terminate with empty line

>> 

Boot script timeout (1000ms resolution): 10

Use BOOTP for network configuration: false

Gateway IP address: 192.168.0.1

Local IP address: 192.168.0.11

Local IP address mask: 255.255.255.0

Default server IP address: 192.168.0.2

DNS server IP address: 192.168.0.2

Set eth0 network hardware address [MAC]: false

GDB connection port: 9000

Force console for special debug messages: false

Network debug at boot time: false

Update RedBoot non-volatile configuration - continue (y/n)?

·         Load the ramdisk compressed image and the kernel:
load -r -v -b 0x800000 EDB9315A/initrd.gz
load -r -v -b 0x80000 EDB9315A/zImage

·        You now have 2 options:

·         Run the kernel using the console, assuming you have attached a USB keyboard and a CRT to the VGA output:
exec -r 0x800000 -s 0x800000

·         Run the kernel using the serial port:
exec -r 0x800000 -s 0x800000 -c "root=/dev/ram console=ttyAM"

Kernel Network Boot + NFS Root FileSystem

This method describes how to boot Linux from the Network and have the root filesystem mounted through NFS:

·        The script build-linux-2.6.18.sh should have build the kernel image as /tftpboot/EDB9315A/bzImage

·        Customize the root filesystem build script as this

·        Then run it, that will generate the file /tftpboot/EDB9315A/initrd.gz

·        Power the EDB9315A board and hit Ctrl-C to stay in RedBoot.

·        If needed configure

·        Load the ramdisk compressed image and the kernel:
load -r -v -b 0x80000 EDB9315A/zImage
exec -r 0x800000 -s 0x600000 -c "root=/dev/nfs rw nfsroot=192.168.0.2:/home/osingla/sf/cross-stuff/armle/EDB9315A/rootfs ip=192.168.0.20:192.168.0.2::::eth0:off"

·        This would work also as well (use of the serial port instead of the console)
exec -r 0x800000 -s 0x600000 -c "root=/dev/nfs rw nfsroot=192.168.0.2:/home/osingla/sf/cross-stuff/armle/EDB9315A/rootfs ip=192.168.0.20:192.168.0.2::::eth0:off console=ttyAM"

Kernel Flash Boot + NFS Root FileSystem

Reset the board, and put the kernel in Flash:

RedBoot> load -v -r -b 0x80000 EDB9315A/zImage

-

Raw file loaded 0x00080000-0x001849cb, assumed entry at 0x00080000

RedBoot> fis create -b 0x80000 -l 0x00140000 zImage

... Erase from 0x60040000-0x60180000: ..........

... Program from 0x00080000-0x001c0000 at 0x60040000: ..........

... Erase from 0x60fe0000-0x61000000: .

... Program from 0x03fdf000-0x03fff000 at 0x60fe0000: .

RedBoot>

Modify now the startup script to automatically load the kernel from flash, load the ramdisk image from NFS, and then start Linux:

RedBoot> fconfig

Run script at boot: true

Boot script:

Enter script, terminate with empty line

>> fis load zImage

>> exec -c "root=/dev/nfs rw nfsroot=192.168.0.2:/home/osingla/sf/cross-stuff/xcross/EDB9315A/rootfs ip=192.168.0.11:192.168.0.2::::eth0:off"

>> 

Boot script timeout (1000ms resolution): 10

Use BOOTP for network configuration: false

Gateway IP address: 192.168.0.1

Local IP address: 192.168.0.11

Local IP address mask: 255.255.255.0

Default server IP address: 192.168.0.2

DNS server IP address: 192.168.0.2

Set eth0 network hardware address [MAC]: false

GDB connection port: 9000

Force console for special debug messages: false

Network debug at boot time: false

Update RedBoot non-volatile configuration - continue (y/n)? y

... Erase from 0x60fc0000-0x60fc1000: .

... Program from 0x03fde000-0x03fdf000 at 0x60fc0000: .

RedBoot>reset

Kernel Flash Boot + JFFS2 Flash Root FileSystem

Put the root filesystem in Flash (will mounted as a Ramdisk):

RedBoot> load -v -r -b 0xa00000 EDB9315A/rootfs-jffs2.img

-

Raw file loaded 0x00a00000-0x0136ffff, assumed entry at 0x00a00000

RedBoot> fis create -b 0xa00000 -l 0x00A00000 rootfs

... Erase from 0x60180000-0x60b80000: ..........................................

... Program from 0x00a00000-0x01400000 at 0x60180000: ..........................

... Erase from 0x60fe0000-0x61000000: .

... Program from 0x03fdf000-0x03fff000 at 0x60fe0000: .

Modify now the startup script to automatically load the kernel from flash, load the ramdisk image from NFS, and then run Linux:

RedBoot> fconfig

Run script at boot: true

Boot script:

Enter script, terminate with empty line

>> fis load zImage

>> exec -c " root=/dev/mtdblock2 ro rootfstype=jffs2 console=ttyAM"

>> 

Boot script timeout (1000ms resolution): 10

Use BOOTP for network configuration: false

Gateway IP address: 192.168.0.1

Local IP address: 192.168.0.11

Local IP address mask: 255.255.255.0

Default server IP address: 192.168.0.2

DNS server IP address: 192.168.0.2

Set eth0 network hardware address [MAC]: false

GDB connection port: 9000

Force console for special debug messages: false

Network debug at boot time: false

Update RedBoot non-volatile configuration - continue (y/n)? y

... Erase from 0x60fc0000-0x60fc1000: .

... Program from 0x03fde000-0x03fdf000 at 0x60fc0000: .

RedBoot>

 

 

 

 

 

[Contents]