linux/Documentation/cris/README
<<
>>
Prefs
   1Linux on the CRIS architecture
   2==============================
   3
   4This is a port of Linux to Axis Communications ETRAX 100LX,
   5ETRAX FS and ARTPEC-3 embedded network CPUs.
   6
   7For more information about CRIS and ETRAX please see further below.
   8
   9In order to compile this you need a version of gcc with support for the
  10ETRAX chip family. Please see this link for more information on how to
  11download the compiler and other tools useful when building and booting
  12software for the ETRAX platform:
  13
  14http://developer.axis.com/wiki/doku.php?id=axis:install-howto-2_20
  15
  16What is CRIS ?
  17--------------
  18
  19CRIS is an acronym for 'Code Reduced Instruction Set'. It is the CPU
  20architecture in Axis Communication AB's range of embedded network CPU's,
  21called ETRAX.
  22
  23The ETRAX 100LX chip
  24--------------------
  25
  26For reference, please see the following link:
  27
  28http://www.axis.com/products/dev_etrax_100lx/index.htm
  29
  30The ETRAX 100LX is a 100 MIPS processor with 8kB cache, MMU, and a very broad
  31range of built-in interfaces, all with modern scatter/gather DMA.
  32
  33Memory interfaces:
  34
  35        * SRAM
  36        * NOR-flash/ROM
  37        * EDO or page-mode DRAM
  38        * SDRAM
  39
  40I/O interfaces:
  41
  42        * one 10/100 Mbit/s ethernet controller
  43        * four serial-ports (up to 6 Mbit/s)
  44        * two synchronous serial-ports for multimedia codec's etc.
  45        * USB host controller and USB slave
  46        * ATA
  47        * SCSI
  48        * two parallel-ports
  49        * two generic 8-bit ports
  50
  51        (not all interfaces are available at the same time due to chip pin
  52         multiplexing)
  53
  54ETRAX 100LX is CRISv10 architecture.
  55
  56
  57The ETRAX FS and ARTPEC-3 chips
  58-------------------------------
  59
  60The ETRAX FS is a 200MHz 32-bit RISC processor with on-chip 16kB
  61I-cache and 16kB D-cache and with a wide range of device interfaces
  62including multiple high speed serial ports and an integrated USB 1.1 PHY.
  63
  64The ARTPEC-3 is a variant of the ETRAX FS with additional IO-units
  65used by the Axis Communications network cameras.
  66
  67See below link for more information:
  68
  69http://www.axis.com/products/dev_etrax_fs/index.htm
  70
  71ETRAX FS and ARTPEC-3 are both CRISv32 architectures.
  72
  73Bootlog
  74-------
  75
  76Just as an example, this is the debug-output from a boot of Linux 2.4 on
  77a board with ETRAX 100LX. The displayed BogoMIPS value is 5 times too small :)
  78At the end you see some user-mode programs booting like telnet and ftp daemons.
  79
  80Linux version 2.4.1 (bjornw@godzilla.axis.se) (gcc version 2.96 20000427 (experimental)) #207 Wed Feb 21 15:48:15 CET 2001
  81ROM fs in RAM, size 1376256 bytes
  82Setting up paging and the MMU.
  83On node 0 totalpages: 2048
  84zone(0): 2048 pages.
  85zone(1): 0 pages.
  86zone(2): 0 pages.
  87Linux/CRIS port on ETRAX 100LX (c) 2001 Axis Communications AB
  88Kernel command line: 
  89Calibrating delay loop... 19.91 BogoMIPS
  90Memory: 13872k/16384k available (587k kernel code, 2512k reserved, 44k data, 24k init)
  91kmem_create: Forcing size word alignment - vm_area_struct
  92kmem_create: Forcing size word alignment - filp
  93Dentry-cache hash table entries: 2048 (order: 1, 16384 bytes)
  94Buffer-cache hash table entries: 2048 (order: 0, 8192 bytes)
  95Page-cache hash table entries: 2048 (order: 0, 8192 bytes)
  96kmem_create: Forcing size word alignment - kiobuf
  97kmem_create: Forcing size word alignment - bdev_cache
  98Inode-cache hash table entries: 1024 (order: 0, 8192 bytes)
  99kmem_create: Forcing size word alignment - inode_cache
 100POSIX conformance testing by UNIFIX
 101Linux NET4.0 for Linux 2.4
 102Based upon Swansea University Computer Society NET3.039
 103Starting kswapd v1.8
 104kmem_create: Forcing size word alignment - file lock cache
 105kmem_create: Forcing size word alignment - blkdev_requests
 106block: queued sectors max/low 9109kB/3036kB, 64 slots per queue
 107ETRAX 100LX 10/100MBit ethernet v2.0 (c) 2000 Axis Communications AB
 108eth0 initialized
 109eth0: changed MAC to 00:40:8C:CD:00:00
 110ETRAX 100LX serial-driver $Revision: 1.7 $, (c) 2000 Axis Communications AB
 111ttyS0 at 0xb0000060 is a builtin UART with DMA
 112ttyS1 at 0xb0000068 is a builtin UART with DMA
 113ttyS2 at 0xb0000070 is a builtin UART with DMA
 114ttyS3 at 0xb0000078 is a builtin UART with DMA
 115Axis flash mapping: 200000 at 50000000
 116Axis flash: Found 1 x16 CFI device at 0x0 in 16 bit mode
 117 Amd/Fujitsu Extended Query Table v1.0 at 0x0040
 118Axis flash: JEDEC Device ID is 0xC4. Assuming broken CFI table.
 119Axis flash: Swapping erase regions for broken CFI table.
 120number of CFI chips: 1
 121 Using default partition table
 122I2C driver v2.2, (c) 1999-2001 Axis Communications AB
 123ETRAX 100LX GPIO driver v2.1, (c) 2001 Axis Communications AB
 124NET4: Linux TCP/IP 1.0 for NET4.0
 125IP Protocols: ICMP, UDP, TCP
 126kmem_create: Forcing size word alignment - ip_dst_cache
 127IP: routing cache hash table of 1024 buckets, 8Kbytes
 128TCP: Hash tables configured (established 2048 bind 2048)
 129NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
 130VFS: Mounted root (cramfs filesystem) readonly.
 131Init starts up...
 132Mounted none on /proc ok.
 133Setting up eth0 with ip 10.13.9.116 and mac 00:40:8c:18:04:60
 134eth0: changed MAC to 00:40:8C:18:04:60
 135Setting up lo with ip 127.0.0.1
 136Default gateway is 10.13.9.1
 137Hostname is bbox1
 138Telnetd starting, using port 23.
 139  using /bin/sash as shell.
 140sftpd[15]: sftpd $Revision: 1.7 $ starting up
 141
 142
 143
 144And here is how some /proc entries look:
 145
 14617# cd /proc
 14717# cat cpuinfo
 148cpu             : CRIS
 149cpu revision    : 10
 150cpu model       : ETRAX 100LX
 151cache size      : 8 kB
 152fpu             : no
 153mmu             : yes
 154ethernet        : 10/100 Mbps
 155token ring      : no
 156scsi            : yes
 157ata             : yes
 158usb             : yes
 159bogomips        : 99.84
 160
 16117# cat meminfo
 162        total:    used:    free:  shared: buffers:  cached:
 163Mem:   7028736   925696  6103040   114688        0   229376
 164Swap:        0        0        0
 165MemTotal:         6864 kB
 166MemFree:          5960 kB
 167MemShared:         112 kB
 168Buffers:             0 kB
 169Cached:            224 kB
 170Active:            224 kB
 171Inact_dirty:         0 kB
 172Inact_clean:         0 kB
 173Inact_target:        0 kB
 174HighTotal:           0 kB
 175HighFree:            0 kB
 176LowTotal:         6864 kB
 177LowFree:          5960 kB
 178SwapTotal:           0 kB
 179SwapFree:            0 kB
 18017# ls -l /bin
 181-rwxr-xr-x  1 342      100         10356  Jan 01 00:00 ifconfig
 182-rwxr-xr-x  1 342      100         17548  Jan 01 00:00 init
 183-rwxr-xr-x  1 342      100          9488  Jan 01 00:00 route
 184-rwxr-xr-x  1 342      100         46036  Jan 01 00:00 sftpd
 185-rwxr-xr-x  1 342      100         48104  Jan 01 00:00 sh
 186-rwxr-xr-x  1 342      100         16252  Jan 01 00:00 telnetd
 187
 188
 189
 190
 191
 192
 193
 194
 195
 196
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.