=============================================================================

	     U-Boot port on the LEOX's ELPT860 CPU board
	     -------------------------------------------

LEOX.org is about the development of free hardware and software resources
	 for system on chip.

For more information, contact The LEOX team <team@leox.org>

References:
~~~~~~~~~~
    1) Get the last stable release from denx.de:
	   o ftp://ftp.denx.de/pub/u-boot/u-boot-0.2.0.tar.bz2
    2) Get the current CVS snapshot:
	   o cvs -d:pserver:anonymous@cvs.u-boot.sourceforge.net:/cvsroot/u-boot login
	   o cvs -z6 -d:pserver:anonymous@cvs.u-boot.sourceforge.net:/cvsroot/u-boot co -P u-boot

=============================================================================

The ELPT860 CPU board has the following features:

Processor:	- MPC860T @ 50MHz
		- PowerPC Core
		- 65 MIPS
		- Caches: D->4KB, I->4KB
		- CPM: 4 SCCs, 2 SMCs
		- Ethernet 10/100
		- SPI, I2C, PCMCIA, Parallel

CPU board:	- DRAM:   16 MB
		- FLASH: 512 KB + (2 * 4 MB)
		- NVRAM: 128 KB
		- 1 Serial link
		- 2 Ethernet 10 BaseT Channels

On power-up the processor jumps to the address of 0x02000100

Thus, U-Boot is configured to reside in flash starting at the address of
0x02001000.  The environment space is located in NVRAM separately from
U-Boot, at the address of 0x03000000.

=============================================================================

			U-Boot test results

=============================================================================


##################################################
# Operation on the serial console (SMC1)
##############################

U-Boot 0.2.2 (Jan 19 2003 - 11:08:39)

CPU:   XPC860xxZPnnB at 50 MHz: 4 kB I-Cache 4 kB D-Cache FEC present
	 *** Warning: CPU Core has Silicon Bugs -- Check the Errata ***
Board: ### No HW ID - assuming ELPT860
DRAM:  16 MB
FLASH: 512 kB
In:    serial
Out:   serial
Err:   serial
Net:   SCC ETHERNET

Type "run nfsboot" to mount root filesystem over NFS

Hit any key to stop autoboot:  0
LEOX_elpt860: help
askenv  - get environment variables from stdin
base    - print or set address offset
bdinfo  - print Board Info structure
bootm   - boot application image from memory
bootp   - boot image via network using BootP/TFTP protocol
bootd   - boot default, i.e., run 'bootcmd'
cmp     - memory compare
coninfo - print console devices and informations
cp      - memory copy
crc32   - checksum calculation
echo    - echo args to console
erase   - erase FLASH memory
flinfo  - print FLASH memory information
go      - start application at address 'addr'
help    - print online help
iminfo  - print header information for application image
loadb   - load binary file over serial line (kermit mode)
loads   - load S-Record file over serial line
loop    - infinite loop on address range
md      - memory display
mm      - memory modify (auto-incrementing)
mtest   - simple RAM test
mw      - memory write (fill)
nm      - memory modify (constant address)
printenv- print environment variables
protect - enable or disable FLASH write protection
rarpboot- boot image via network using RARP/TFTP protocol
reset   - Perform RESET of the CPU
run     - run commands in an environment variable
saveenv - save environment variables to persistent storage
setenv  - set environment variables
sleep   - delay execution for some time
source  - run script from memory
tftpboot- boot image via network using TFTP protocol
	       and env variables ipaddr and serverip
version - print monitor version
?       - alias for 'help'

##################################################
# Environment Variables (CONFIG_ENV_IS_IN_NVRAM)
##############################

LEOX_elpt860: printenv
bootdelay=5
loads_echo=1
baudrate=9600
stdin=serial
stdout=serial
stderr=serial
ethaddr=00:03:ca:00:64:df
ipaddr=192.168.0.30
netmask=255.255.255.0
serverip=192.168.0.1
nfsserverip=192.168.0.1
preboot=echo;echo Type "run nfsboot" to mount root filesystem over NFS;echo
gatewayip=192.168.0.1
ramargs=setenv bootargs root=/dev/ram rw
rootargs=setenv rootpath /tftp/${ipaddr}
nfsargs=setenv bootargs root=/dev/nfs rw nfsroot=${nfsserverip}:${rootpath}
addip=setenv bootargs ${bootargs} ip=${ipaddr}:${nfsserverip}:${gatewayip}:${netmask}:${hostname}:eth0:
ramboot=tftp 400000 /home/leox/pMulti;run ramargs;bootm
nfsboot=tftp 400000 /home/leox/uImage;run rootargs;run nfsargs;run addip;bootm
bootcmd=run ramboot
clocks_in_mhz=1

Environment size: 730/16380 bytes

##################################################
# Flash Memory Information
##############################

LEOX_elpt860: flinfo

Bank # 1: AMD AM29F040   (4 Mbits)
  Size: 512 KB in 8 Sectors
  Sector Start Addresses:
    02000000 (RO) 02010000 (RO) 02020000 (RO) 02030000 (RO) 02040000
    02050000      02060000      02070000

##################################################
# Board Information Structure
##############################

LEOX_elpt860: bdinfo
memstart    = 0x00000000
memsize     = 0x01000000
flashstart  = 0x02000000
flashsize   = 0x00080000
flashoffset = 0x00030000
sramstart   = 0x00000000
sramsize    = 0x00000000
immr_base   = 0xFF000000
bootflags   = 0x00000001
intfreq     =     50 MHz
busfreq     =     50 MHz
ethaddr     = 00:03:ca:00:64:df
IP addr     = 192.168.0.30
baudrate    =   9600 bps

##################################################
# Image Download and run over serial port
#    hello_world (S-Record image)
#    ===> 1) Enter "loads" command into U-Boot monitor
#    ===> 2) From TeraTerm's bar menu, Select 'File/Send file...'
#            Then select 'hello_world.srec' with the file browser
##############################

U-Boot 0.2.2 (Jan 19 2003 - 11:08:39)

CPU:   XPC860xxZPnnB at 50 MHz: 4 kB I-Cache 4 kB D-Cache FEC present
	 *** Warning: CPU Core has Silicon Bugs -- Check the Errata ***
Board: ### No HW ID - assuming ELPT860
DRAM:  16 MB
FLASH: 512 kB
In:    serial
Out:   serial
Err:   serial
Net:   SCC ETHERNET

Type "run nfsboot" to mount root filesystem over NFS

Hit any key to stop autoboot:  0
LEOX_elpt860: loads
## Ready for S-Record download ...
S804040004F3050154000501709905014C000501388D
## First Load Addr = 0x00040000
## Last  Load Addr = 0x0005018B
## Total Size      = 0x0001018C = 65932 Bytes
## Start Addr      = 0x00040004
LEOX_elpt860: go 40004 This is a test !!!
## Starting application at 0x00040004 ...
Hello World
argc = 6
argv[0] = "40004"
argv[1] = "This"
argv[2] = "is"
argv[3] = "a"
argv[4] = "test"
argv[5] = "!!!"
argv[6] = "<NULL>"
Hit any key to exit ...

## Application terminated, rc = 0x0

##################################################
# Image download and run over ethernet interface
#    Linux-2.4.4 (uImage) + Root filesystem mounted over NFS
##############################

U-Boot 0.2.2 (Jan 19 2003 - 11:08:39)

CPU:   XPC860xxZPnnB at 50 MHz: 4 kB I-Cache 4 kB D-Cache FEC present
	 *** Warning: CPU Core has Silicon Bugs -- Check the Errata ***
Board: ### No HW ID - assuming ELPT860
DRAM:  16 MB
FLASH: 512 kB
In:    serial
Out:   serial
Err:   serial
Net:   SCC ETHERNET

Type "run nfsboot" to mount root filesystem over NFS

Hit any key to stop autoboot:  0
LEOX_elpt860: run nfsboot
ARP broadcast 1
TFTP from server 192.168.0.1; our IP address is 192.168.0.30
Filename '/home/leox/uImage'.
Load address: 0x400000
Loading: #################################################################
	 #############################
done
Bytes transferred = 477294 (7486e hex)
## Booting image at 00400000 ...
   Image Name:   Linux-2.4.4
   Image Type:   PowerPC Linux Kernel Image (gzip compressed)
   Data Size:    477230 Bytes = 466 kB = 0 MB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
   Uncompressing Kernel Image ... OK
Linux version 2.4.4-rthal5 (leox@p5ak6650) (gcc version 2.95.3 20010315 (release/MontaVista)) #1 Wed Jul 3 10:23:53 CEST 2002
On node 0 totalpages: 4096
zone(0): 4096 pages.
zone(1): 0 pages.
zone(2): 0 pages.
Kernel command line: root=/dev/nfs rw nfsroot=192.168.0.1:/tftp/192.168.0.30 ip=192.168.0.30:192.168.0.1:192.168.0.1:255.255.255.0::eth0:
rtsched version <20010618.1050.24>
Decrementer Frequency: 3125000
Warning: real time clock seems stuck!
Calibrating delay loop... 49.76 BogoMIPS
Memory: 14720k available (928k kernel code, 384k data, 44k init, 0k highmem)
Dentry-cache hash table entries: 2048 (order: 2, 16384 bytes)
Buffer-cache hash table entries: 1024 (order: 0, 4096 bytes)
Page-cache hash table entries: 4096 (order: 2, 16384 bytes)
Inode-cache hash table entries: 1024 (order: 1, 8192 bytes)
POSIX conformance testing by UNIFIX
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Starting kswapd v1.8
CPM UART driver version 0.03
ttyS0 on SMC1 at 0x0280, BRG1
block: queued sectors max/low 9701kB/3233kB, 64 slots per queue
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
eth0: CPM ENET Version 0.2 on SCC1, 00:03:ca:00:64:df
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP
IP: routing cache hash table of 512 buckets, 4Kbytes
TCP: Hash tables configured (established 1024 bind 1024)
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
Looking up port of RPC 100003/2 on 192.168.0.1
Looking up port of RPC 100005/2 on 192.168.0.1
VFS: Mounted root (nfs filesystem).
Freeing unused kernel memory: 44k init
INIT: version 2.78 booting
		Welcome to DENX Embedded Linux Environment
		Press 'I' to enter interactive startup.
Mounting proc filesystem:  [  OK  ]
Configuring kernel parameters:  [  OK  ]
Cannot access the Hardware Clock via any known method.
Use the --debug option to see the details of our search for an access method.
Setting clock : Wed Dec 31 19:00:11 EST 1969 [  OK  ]
Activating swap partitions:  [  OK  ]
Setting hostname 192.168.0.30:  [  OK  ]
Finding module dependencies:
[  OK  ]
Checking filesystems
Checking all file systems.
[  OK  ]
Mounting local filesystems:  [  OK  ]
Enabling swap space:  [  OK  ]
INIT: Entering runlevel: 3
Entering non-interactive startup
Starting system logger: [  OK  ]
Starting kernel logger: [  OK  ]
Starting xinetd: [  OK  ]

192 login: root
Last login: Wed Dec 31 19:00:41 on ttyS0
bash-2.04#

##################################################
# Image download and run over ethernet interface
#    Linux-2.4.4 + Root filesystem mounted from RAM (pMulti)
##############################

U-Boot 0.2.2 (Jan 19 2003 - 11:08:39)

CPU:   XPC860xxZPnnB at 50 MHz: 4 kB I-Cache 4 kB D-Cache FEC present
	 *** Warning: CPU Core has Silicon Bugs -- Check the Errata ***
Board: ### No HW ID - assuming ELPT860
DRAM:  16 MB
FLASH: 512 kB
In:    serial
Out:   serial
Err:   serial
Net:   SCC ETHERNET

Type "run nfsboot" to mount root filesystem over NFS

Hit any key to stop autoboot:  0
LEOX_elpt860: run ramboot
ARP broadcast 1
TFTP from server 192.168.0.1; our IP address is 192.168.0.30
Filename '/home/leox/pMulti'.
Load address: 0x400000
Loading: #################################################################
	 #################################################################
	 #################################################################
	 #################################################################
	 #################################################################
	 ########################################################
done
Bytes transferred = 1947816 (1db8a8 hex)
## Booting image at 00400000 ...
   Image Name:   linux-2.4.4-2002-03-21 Multiboot
   Image Type:   PowerPC Linux Multi-File Image (gzip compressed)
   Data Size:    1947752 Bytes = 1902 kB = 1 MB
   Load Address: 00000000
   Entry Point:  00000000
   Contents:
   Image 0:   477230 Bytes = 466 kB = 0 MB
   Image 1:  1470508 Bytes = 1436 kB = 1 MB
   Verifying Checksum ... OK
   Uncompressing Multi-File Image ... OK
   Loading Ramdisk to 00e44000, end 00fab02c ... OK
Linux version 2.4.4-rthal5 (leox@p5ak6650) (gcc version 2.95.3 20010315 (release/MontaVista)) #1 Wed Jul 3 10:23:53 CEST 2002
On node 0 totalpages: 4096
zone(0): 4096 pages.
zone(1): 0 pages.
zone(2): 0 pages.
Kernel command line: root=/dev/ram rw
rtsched version <20010618.1050.24>
Decrementer Frequency: 3125000
Warning: real time clock seems stuck!
Calibrating delay loop... 49.76 BogoMIPS
Memory: 13280k available (928k kernel code, 384k data, 44k init, 0k highmem)
Dentry-cache hash table entries: 2048 (order: 2, 16384 bytes)
Buffer-cache hash table entries: 1024 (order: 0, 4096 bytes)
Page-cache hash table entries: 4096 (order: 2, 16384 bytes)
Inode-cache hash table entries: 1024 (order: 1, 8192 bytes)
POSIX conformance testing by UNIFIX
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Starting kswapd v1.8
CPM UART driver version 0.03
ttyS0 on SMC1 at 0x0280, BRG1
block: queued sectors max/low 8741kB/2913kB, 64 slots per queue
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
eth0: CPM ENET Version 0.2 on SCC1, 00:03:ca:00:64:df
RAMDISK: Compressed image found at block 0
Freeing initrd memory: 1436k freed
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP
IP: routing cache hash table of 512 buckets, 4Kbytes
TCP: Hash tables configured (established 1024 bind 1024)
IP-Config: Incomplete network configuration information.
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
VFS: Mounted root (ext2 filesystem).
Freeing unused kernel memory: 44k init
init started:  BusyBox v0.60.2 (2002.07.01-12:06+0000) multi-call Configuring hostname
Configuring lo...
Configuring eth0...
Configuring Gateway...

Please press Enter to activate this console.

ELPT860 login: root
Password:
Welcome to Linux-2.4.4 for ELPT CPU board (MPC860T @ 50MHz)

					      a8888b.
					     d888888b.
					     8P"YP"Y88
     _      _                                8|o||o|88
    | |    |_|                               8'    .88
    | |     _ ____  _   _  _  _              8`._.' Y8.
    | |    | |  _ \| | | |\ \/ /            d/      `8b.
    | |___ | | | | | |_| |/    \          .dP   .     Y8b.
    |_____||_|_| |_|\____|\_/\_/         d8:'   "   `::88b.
					d8"           `Y88b
				       :8P     '       :888
					8a.    :      _a88P
				      ._/"Yaa_ :    .| 88P|
				      \    YP"      `| 8P  `.
				      /     \._____.d|    .'
				      `--..__)888888P`._.'
login[21]: root login  on `ttyS0'



BusyBox v0.60.3 (2002.07.20-10:39+0000) Built-in shell (ash)
Enter 'help' for a list of built-in commands.

root@ELPT860:~ #
