Linux 2.4 on the CRIS architecture
==================================
$Id: README,v 1.7 2001/04/19 12:38:32 bjornw Exp $

This is a port of Linux 2.4 to Axis Communications ETRAX 100LX embedded 
network CPU. For more information about CRIS and ETRAX please see further
below.

In order to compile this you need a version of gcc with support for the
ETRAX chip family. Please see this link for more information on how to 
download the compiler and other tools useful when building and booting
software for the ETRAX platform:

http://developer.axis.com/doc/software/devboard_lx/install-howto.html

<more specific information should come in this document later>

What is CRIS ?
--------------

CRIS is an acronym for 'Code Reduced Instruction Set'. It is the CPU
architecture in Axis Communication AB's range of embedded network CPU's,
called ETRAX. The latest CPU is called ETRAX 100LX, where LX stands for
'Linux' because the chip was designed to be a good host for the Linux
operating system.

The ETRAX 100LX chip
--------------------

For reference, please see the press-release:

http://www.axis.com/news/us/001101_etrax.htm

The ETRAX 100LX is a 100 MIPS processor with 8kB cache, MMU, and a very broad 
range of  built-in interfaces, all with modern scatter/gather DMA.

Memory interfaces:

	* SRAM
	* NOR-flash/ROM
	* EDO or page-mode DRAM
	* SDRAM

I/O interfaces:

	* one 10/100 Mbit/s ethernet controller
	* four serial-ports (up to 6 Mbit/s)
	* two synchronous serial-ports for multimedia codec's etc.
	* USB host controller and USB slave
	* ATA
	* SCSI
	* two parallel-ports
	* two generic 8-bit ports
	
	(not all interfaces are available at the same time due to chip pin 
         multiplexing)

The previous version of the ETRAX, the ETRAX 100, sits in almost all of
Axis shipping thin-servers like the Axis 2100 web camera or the ETRAX 100
developer-board. It lacks an MMU so the Linux we run on that is a version
of uClinux (Linux 2.0 without MM-support) ported to the CRIS architecture.
The new Linux 2.4 port has full MM and needs a CPU with an MMU, so it will
not run on the ETRAX 100.

A version of the Axis developer-board with ETRAX 100LX (running Linux
2.4) is now available. For more information please see developer.axis.com.


Bootlog
-------

Just as an example, this is the debug-output from a boot of Linux 2.4 on
a board with ETRAX 100LX. The displayed BogoMIPS value is 5 times too small :)
At the end you see some user-mode programs booting like telnet and ftp daemons.

Linux version 2.4.1 (bjornw@godzilla.axis.se) (gcc version 2.96 20000427 (experimental)) #207 Wed Feb 21 15:48:15 CET 2001
ROM fs in RAM, size 1376256 bytes
Setting up paging and the MMU.
On node 0 totalpages: 2048
zone(0): 2048 pages.
zone(1): 0 pages.
zone(2): 0 pages.
Linux/CRIS port on ETRAX 100LX (c) 2001 Axis Communications AB
Kernel command line: 
Calibrating delay loop... 19.91 BogoMIPS
Memory: 13872k/16384k available (587k kernel code, 2512k reserved, 44k data, 24k init)
kmem_create: Forcing size word alignment - vm_area_struct
kmem_create: Forcing size word alignment - filp
Dentry-cache hash table entries: 2048 (order: 1, 16384 bytes)
Buffer-cache hash table entries: 2048 (order: 0, 8192 bytes)
Page-cache hash table entries: 2048 (order: 0, 8192 bytes)
kmem_create: Forcing size word alignment - kiobuf
kmem_create: Forcing size word alignment - bdev_cache
Inode-cache hash table entries: 1024 (order: 0, 8192 bytes)
kmem_create: Forcing size word alignment - inode_cache
POSIX conformance testing by UNIFIX
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Starting kswapd v1.8
kmem_create: Forcing size word alignment - file lock cache
kmem_create: Forcing size word alignment - blkdev_requests
block: queued sectors max/low 9109kB/3036kB, 64 slots per queue
ETRAX 100LX 10/100MBit ethernet v2.0 (c) 2000 Axis Communications AB
eth0 initialized
eth0: changed MAC to 00:40:8C:CD:00:00
ETRAX 100LX serial-driver $Revision: 1.7 $, (c) 2000 Axis Communications AB
ttyS0 at 0xb0000060 is a builtin UART with DMA
ttyS1 at 0xb0000068 is a builtin UART with DMA
ttyS2 at 0xb0000070 is a builtin UART with DMA
ttyS3 at 0xb0000078 is a builtin UART with DMA
Axis flash mapping: 200000 at 50000000
Axis flash: Found 1 x16 CFI device at 0x0 in 16 bit mode
 Amd/Fujitsu Extended Query Table v1.0 at 0x0040
Axis flash: JEDEC Device ID is 0xC4. Assuming broken CFI table.
Axis flash: Swapping erase regions for broken CFI table.
number of CFI chips: 1
 Using default partition table
I2C driver v2.2, (c) 1999-2001 Axis Communications AB
ETRAX 100LX GPIO driver v2.1, (c) 2001 Axis Communications AB
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP
kmem_create: Forcing size word alignment - ip_dst_cache
IP: routing cache hash table of 1024 buckets, 8Kbytes
TCP: Hash tables configured (established 2048 bind 2048)
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
VFS: Mounted root (cramfs filesystem) readonly.
Init starts up...
Mounted none on /proc ok.
Setting up eth0 with ip 10.13.9.116 and mac 00:40:8c:18:04:60
eth0: changed MAC to 00:40:8C:18:04:60
Setting up lo with ip 127.0.0.1
Default gateway is 10.13.9.1
Hostname is bbox1
Telnetd starting, using port 23.
  using /bin/sash as shell.
sftpd[15]: sftpd $Revision: 1.7 $ starting up



And here is how some /proc entries look:

17# cd /proc
17# cat cpuinfo
cpu             : CRIS
cpu revision    : 10
cpu model       : ETRAX 100LX
cache size      : 8 kB
fpu             : no
mmu             : yes
ethernet        : 10/100 Mbps
token ring      : no
scsi            : yes
ata             : yes
usb             : yes
bogomips        : 99.84

17# cat meminfo
        total:    used:    free:  shared: buffers:  cached:
Mem:   7028736   925696  6103040   114688        0   229376
Swap:        0        0        0
MemTotal:         6864 kB
MemFree:          5960 kB
MemShared:         112 kB
Buffers:             0 kB
Cached:            224 kB
Active:            224 kB
Inact_dirty:         0 kB
Inact_clean:         0 kB
Inact_target:        0 kB
HighTotal:           0 kB
HighFree:            0 kB
LowTotal:         6864 kB
LowFree:          5960 kB
SwapTotal:           0 kB
SwapFree:            0 kB
17# ls -l /bin
-rwxr-xr-x  1 342      100         10356  Jan 01 00:00 ifconfig
-rwxr-xr-x  1 342      100         17548  Jan 01 00:00 init
-rwxr-xr-x  1 342      100          9488  Jan 01 00:00 route
-rwxr-xr-x  1 342      100         46036  Jan 01 00:00 sftpd
-rwxr-xr-x  1 342      100         48104  Jan 01 00:00 sh
-rwxr-xr-x  1 342      100         16252  Jan 01 00:00 telnetd


(All programs are statically linked to the libc at this point - we have not ported the
 shared libraries yet)









