Getting started with Linux on CM-X270
Image Installation
Starting from version 0.6 of Debian Linux package for CM-X270, the filesystem image is distributed in standard Linux JFFS2 format. The image can be loaded into the CM-X270 from Linux only. For convenience of the installation we provide small ramdisk image with all the necessary utilities. Alternatively, you can use a USB flash drive or NFS share as initial root filesystem for image installation.
Preparation steps
- Obtain a PC workstation with serial communication port.
- Install TFTP server on host PC. For Windows machines we recommend TFTPD32 included in this distribution package.
- Download the Linux distribution package for CM-X270 from CompuLab's website . Unzip the package to a folder on your host workstation.
- Download the Linux kernel package for CM-X270 from CompuLab's website. Unzip the package to a folder on your host workstation.
- Make sure that Linux kernel binary image zImage.2.6.24 from Linux kernel package for CM-X270 and ramdisk image ramdisk.gz from Linux distribution package for CM-X270 are accessible by the TFTP server.
- - On Windows machine: copy zImage.2.6.24 and ramdisk.gz to the same folder and point the TFTP server to that folder
- - On Linux machine: copy zImage.2.6.24 and ramdisk.gz to TFTP sevrver root directory, usually /tftpboot or /tftproot.
- Copy debian-image.jffs2 from Linux distribution package for CM-X270 either to USB flash drive or to a directory exported through NFS.
Image installation
- Connect CM-X270's ETH0 port to your local Ethernet
- Connect the host PC to the CM-X270 via a null modem cable supplied with the Eval Kit.
- Start terminal emulation software on your PC using the COM port to which the null modem is connected. Set baud rate to 38400 bps, 8 bit per frame, 1 stop bit, no parity, no flow control.
- Turn on the CM-X270. The ARMmonitor will start and you will get a command prompt.
- Note: If the boot settings of your CM-X270 are different than default, you may need to press and hold ^C while turning the CM-X270 on, in order to get command prompt.
- Use setip ARMMON command to turn on the DHCP support or set static IP for your system. You can review the current IP setup by typing setupinfo. Perform the necessary setup, save and reset the board.
- Use the following ARMON command sequence to boot Linux on CM-X270:
> download kernel tftp "zImage.2.6.24" <host ip> > flash kernel > download ramdisk tftp ramdisk.gz <host ip> > bootos "root=/dev/ram0 console=ttySA0,38400"
- After the ramdisk image is loaded you will get Linux login prompt. Login as root into the system.
Installation using USB flash drive
- Connect pins 10-11 of P15 with a jumper to enable USB3 port in host mode.
- Connect USB flash drive to USB3 port of CM-X270.
- The USB flash drive will be automatically mounted under /media/sda1
- Format the NAND flash and write the Debian filesystem image onto it:
$ flash_eraseall /dev/mtd3 $ nandwrite /dev/mtd3 /media/sda1/debian-image.jffs2
Installation using NFS
- During boot the CM-X270 tries to obtain an IP address using DHCP. If you do not have DHCP server you can set the CM-X270 IP address statically using ifconfig:
ifconfig eth0 <ip address><br>
- Mount the NFS share containing debian-image.jffs2 image:
$ mount <host ip>:/path/to/nfs/share /mnt/net
- Format the NAND flash and write the Debian filesystem image onto it:
$ flash_eraseall /dev/mtd3 $ nandwrite /dev/mtd3 /mnt/net/debian-image.jffs2
Legacy image installation
This section describes installation of images conformant with Compulab proprietary NAND flash format
Preparation Steps
- Obtain a PC workstation with serial communications port.
- Download the Linux distribution package for CM-X270 from CompuLab's website. Unzip the package to a folder on your workstation PC. Within the package, unzip disk.dat.zip file, to extract disk.dat.
- Download the Linux kernel package for CM-X270 from CompuLab's website. Copy the file named zImage.2.x.x from the package to the same folder. If installing on CM-X255, download the kernel specific for X255, since kernels are different per architecture.
- From the X270 kernel package, select version 2.6.16. Drivers in the file system image are kernel version dependent to some extent. If you prefer to use a different version of kernel, you will have to resolve the dependencies yourself. (Note for X255 users: older kernels were also tested)
- Rename the kernel file from zImage.2.x.x to zImage - to remove version marking.
- On CM-X270: ensure that you have ARMmon running
- Connect the host PC to the CM-X270 via a null modem cable supplied with the Eval Kit.
- Choose the method of installation as explained in the next section.
Installation
Installation using LAN
This installation process requires local network with optional DHCP server. Host computer can run Windows or Linux. This method enables highest data rate and fastest turnover if repeated installations are required. Please refer to setip command in ARMmon manual for instruction on how to turn on the DHCP support or set static IP for your system. You can review the current IP setup by typing setupinfo. Perform the necessary setup, save and reset the board.
Installing the kernel
- Connect CM-X270's ETH0 port to your local Ethernet
- Install TFTP server on host PC. The TFTP server tested by CompuLab is TFTPD32 included in this distribution package.
- Point the TFTP server to the folder that contains Linux installation files for CM-X270: zImage and disk.dat
- Start terminal emulation software on your PC using the COM port to which the null modem is connected. Set baud rate to 38400 bps, 8 bit per frame, 1 stop bit, no parity, no flow control.
- Turn on the CM-X270. The ARMmonitor will start and you will get a command prompt.
- Note: If the boot settings of your CM-X270 are different than default, you may need to press and hold ^C while turning the CM-X270 on, in order to get command prompt.
- In terminal window, type:
> download kernel tftp zImage <ip of your host PC>
- The Linux kernel will be transferred from host PC to CM-X270's memory (SDRAM) through LAN, using TFTP protocol. (ARMMON contains TFTP client)
- In terminal window type:
> flash kernel
- The Linux kernel will be saved to the NOR flash.
Installing the filesystem
- Format the NAND Flash, by typing in terminal window:
> nand flash format This will erase the NAND flash contents! Are you sure(y/n)? y
- Type:
> nand write disk.dat <ip of your host PC>
- Follow to After Installation section below.
This will start downloading the NAND flash image from the tftp server directly to NAND flash. Wait for the process to end.
Installation using USB link
This method requiring minimum user's actions and it is fast enough. It uses USB slave port of CM-X270 and requires host workstation running Windows 2000 or XP.
Installation process
- Download the UsbMlink from [Developer] >> [CM-X270] >> [UsbMlink]. Read UsbMLink documentation provided in its package. Following documentation install and activate UsbMLink.
- If ARMmon of your card dated August 16, 2006 or later, run nor_prefix utility, provided with this package. It adds a 4 byte file length prefix to kernel image, required by new bootloader. (Note: use nor_prefix only for installation by UsbMlink). For help run nor_prefix without arguments.
- Rename the zImage (kernel image) file to nor-data.in. Using UsbMLink_GUI perform [NOR Update].
- Rename the disk.dat (filesystem image) file to nand-data.in. Using UsbMLink_GUI perform [NAND Update]. It will take about 15 minutes.
- Disconnect USB from target and follow to After Installation section below.
After Installation
- Reset the CM-X270.
- To start Linux type:
> bootos
- If you want Linux to start automatically, type:
> setboot os<br>> save<br>> bootos<br>
If you want to get back to ARMmon prompt, hold Ctrl-C during reset.
Connection and Logging In
Use the following usernames and passwords to login:
Account with administrative privileges:
User: root<br>Password: 111111<br>
Regular user account:
User: user <br>Password: 111111<br>
In addition to these accounts CM-X270 allows anonymous FTP access.
To login into the Linux system, you may use a serial console at 38400 bps (ttySA0 for Linux 2.6.16 and ttyS0 for previous Linux versions), or connect through the network, or use a keyboard and VGA display (tty1, tty2, tty3).