EDS1100/2100 Linux Software Developer's Kit (SDK) User Guide Part Number 900-548 Revision D March 2011
Copyright & Trademark © 2011 Lantronix. All rights reserved. No part of the contents of this book may be transmitted or reproduced in any form or by any means without the written permission of Lantronix. Printed in the United States of America. Linux is a registered trademark of Linus Torvalds. µClinux is a registered trademark of Arcturus Networks Inc. Coldfire is a registered trademark of Freescale Semiconductor, Inc. Ubuntu is a registered trademark of Canonical Ltd.
Contents Copyright & Trademark ............................................................................................................. 2 Warranty .................................................................................................................................... 2 Contacts ..................................................................................................................................... 2 Disclaimer .....................................................................
Contents 4. Supported File Systems 27 Introduction .............................................................................................................................. 27 ROMFS .................................................................................................................................... 27 JFFS2 ...................................................................................................................................... 28 NFS ......................................
Contents ifconfig ..................................................................................................................................... 50 mDNSResponder .................................................................................................................... 50 9. BusyBox 51 Intro to BusyBox ...................................................................................................................... 51 Enabling/Disabling Utilities ......................................
Contents B. Differences Between µClinux and Standard Linux 75 C. Troubleshooting 76 Technical Support .................................................................................................................... 76 List of Figures Figure 2-1. Values .......................................................................................................................... 14 Figure 3-1. DeviceInstaller Window ........................................................................................
Contents List of Tables Table 1-1. Terms and Abbreviations .............................................................................................. 10 Table 2-1. CD Files ........................................................................................................................ 15 Table 2-2. Pre-built Images ............................................................................................................ 16 Table 3-1. dBug Command Summary ......................................
1. Overview The Lantronix Linux Software Developer's Kit (SDK) is an embedded hardware and software suite that enables Linux developers to create applications on Lantronix embedded networking modules. Detailed instructions for installing the SDK on your host Linux system are provided in this guide. It also describes the embedded module, its boot loader, flash partitioning schemes, and the build environment in detail. Information about many common embedded Linux utilities and configuration tasks is included.
1 Overview Hardware Specifications MatchPort AR Memory: Memory: RAM 8MB SDRAM 8/16MB FLASH 8MB FLASH 16MB Serial Interface: Serial Interface: Two COM ports (CON1 using console) One COM port Max baud rate 230400 bps (default 115200 bps) Max baud rate 921600 bps (default 115200 bps) Ethernet: XPort Pro Ethernet: 10/100 base TX with Auto Negotiation GPIO: GPIO: 7 pins EDS1100 Specs Memory: 10/100 base TX with Auto Negotiat
1 Overview Terms and Abbreviations Table 1-1.
2. Installing the SDK Host Requirements Please make sure that at least 2.5 GB of disk space are available before installation. Root permissions are needed for very few operations. Please refer to the following section on ‘sudo Configuration’ for details. Linux Distributions This SDK was validated on these Linux distributions: Redhat-based distributions Fedora 9, 10, 11, 12, Fedora Core 5 & 6 CentOS 5.2, 5.3, 5.
2 Installing the SDK Ubuntu 8.04, 8.10, 9.04, 9.10, 10.04 build-essential python sudo libacl1-dev tftpd or tftpd-hpa patch libtasn1-3-dev zlib1g-dev rsync Optional but recommended packages ssh nfs-kernel-server libncurses5-dev (for the ncurses-based configuration utility) libglade2-dev (for the GTK-based graphical configuration utility) libqt3-mt-dev (for the Qt3-based graphical configuration utility) Other distributions OpenSUSE 11.
2 Installing the SDK NOTE If you are able to compile the Linux kernel on your host machine, you will also be able to build the SDK images. Lantronix highly recommends that the machine also act as an NFS-server.
2 Installing the SDK Host TFTP Server Configuration To transfer files from your host system to the target you may need to setup a TFTP server on your host machine. The following steps describe how to setup a TFTP server on a Fedora based distribution. The details of how to configure this server may vary among platforms. Consult your distribution’s documentation for further information. To run the following commands as root or with sudo: 1. Install the tftp-server package (rpm) yum install tftp-server 2.
2 Installing the SDK CD Contents Files Below is a brief description of the files on the CD. Filenames printed in italic are unmodified. All necessary modifications Lantronix has made to make them run better under the µClinux environment are in uClinux-linux_sdk-patch-R*.tar.gz. Table 2-1. CD Files CD File Description Linux_SDK_Release_Notes.txt release note install.sh install script Makefile Makefile freescale-coldfire-*.bz2 cross-compile toolchain from codesourcery mtd-utils-1.2.0.
2 Installing the SDK CD File Description vipaccess.tar.
2 Installing the SDK $ mount | grep iso9660 If you see a line similar to: /dev/hdc on /media/CDROM type iso9660 (ro,nosuid,nodev,uid=500) Then the CD is already mounted. Please pay attention to the highlighted options in the brackets behind type iso9660. If it contains noexec, you have to issue the following command to allow the execution of scripts directly from the CD: $ sudo mount -o remount -o exec /media/CDROM 3.
2 Installing the SDK Installed Directories | |- dBUG/ boot loader binary |- Documentation/ documents |- host/ host tools |- hostsrc/ source code for host tools | |- linux/ µClinux directory | |- images/ kernel, romfs, and jffs2 images | |- linux-2.6.
3. dBUG Boot loader Introduction Linux on the supported platform (MatchPort AR, XPort Pro, or EDS1100 / 2100) is loaded through two boot loader stages. The first stage is the Lantronix boot loader, which is present on both the Evolution OS and Linux based products. The Lantronix boot loader is marked as read-only, so it cannot be overwritten accidentally. The second stage is the dBUG boot loader, which is responsible for loading Linux.
3 dBUG Boot loader 5. Set the Device Model to match your embedded module (MatchPort AR, XPort Pro, or EDS1100/2100). 6. Click Browse to select the path to the dBUG image file. For example, the path for the MatchPort AR would be: c:\install directory>/dBUG/dbug-R.romz Figure 3-2. Firmware Upgrade Window 7. Click OK and follow the prompts for power cycling the target. Figure 3-3. Serial Recovery Window Wait for the firmware transfer to complete.
3 dBUG Boot loader Figure 3-4. Serial Recovery Status Window Example for a MatchPort AR 8. Click OK when prompted. The dBUG boot loader should now be installed on the target. Figure 3-5. Serial Recovery Results Window Basic Configuration 1. Connect an RS232 cable between your host computer COM1 and any of the MatchPort AR (CON1 on the eval board), XPort Pro (Port A on the demo board), EDS1100 (Serial), or EDS2100 (Serial 1).
3 dBUG Boot loader 4. At the dBUG> console prompt, configure the dBUG settings. Use the following instructions for configuring dBUG to boot an image containing the kernel and a ROMFS root file system over the network. NOTE A TFTP server with the image.bin file must be configured on the server with the specified address. dBUG> set watchdog off dBUG> set base hex dBUG> set baud 115200 dBUG> set autoboot net dBUG> set server dBUG> set client
3 dBUG Boot loader 6. Issue a 'reset' at the dBUG prompt for the changes to take effect. Repeat step 3 to get back to the dBUG prompt. 7. Clear the flash space for the JFFS2 partition using the ‘fl e’ command. The command below erases 4MB of flash starting at address 0x00400000. This can be mounted as a JFFS2 partition from Linux. For the MatchPort AR or EDS1100 / 2100 dBUG> fl e 0x00400000 0x00400000 For the XPort Pro dBUG> fl e 0x00400000 0x00C00000 8.
3 dBUG Boot loader To use dual bank: 1. Disable dual bank. dBUG> set bootbank single 2. Enable dual bank and use bank 1 as boot bank. dBUG> set bootbank 1 3. Enable dual bank and use bank 2 as boot bank. dBUG> set bootbank 2 dBUG Command Summary Table 3-1.
3 dBUG Boot loader Option Values Description filename File path for image transfer via TFTP. filetype File image type. Only "image" is supported. ethaddr |default Ethernet MAC address. "default" resets the MAC to factory default. dns IP address of DNS server. bootfc reset Reset boot failure counter maxbootfc |0|off Value of max boot failure count. "0" or "off" to disable.
3 dBUG Boot loader Netcon The netcon network console program allows dBUG console access over the network. This is useful in situations where the device (MatchPort AR, XPort Pro, or EDS1100 / 2100) is remote, or when the console is otherwise unavailable. The path to the netcon client program in the SDK is /host/usr/sbin/netcon. By default the dBUG netcon server is active during the autoboot countdown and when the dBUG shell is active.
4. Supported File Systems Introduction Linux supports a wide range of file systems. Most of them were created with certain characteristics in mind: high performance, reliability, compatibility with other operating systems, general purpose, etc.
4 Supported File Systems ROMFS being a read-only file system, makes it easy to guarantee its integrity during runtime. On the other hand, all variable data like configuration files that might need to be updated during runtime need to be stored on a separate file system. All applications in ROMFS can be run with XIP: eXecute In Place (set romfs_flash to on in dBug) – see (www.ucdot.org/article.
4 Supported File Systems Configure the Boot Loader for JFFS2 as Root Partition To tell µClinux kernel to look for a JFFS2 root file system, the kernel command line (kcl) has to be set accordingly. To validate this, boot the target into dBUG and issue the following command: dBUG> show watchdog: on ...
4 Supported File Systems All details can be found in /linux/linux2.6.x/Documentation/filesystems/nfsroot.txt There are a few onetime steps involved to enable this mode as identified below: µClinux kernel configuration CONFIG_ROOT_NFS needs to be enabled in the kernel configuration. If a BOOTP or DHCP server is available on your network you might want to enable CONFIG_IP_PNP_BOOTP or CONFIG_IP_PNP_DHCP as well.
4 Supported File Systems You will need to adjust the IP address and the netmask to match your network configuration. The 500 in the example above should reflect your user id on the host system. Don't forget to execute “sudo exportfs –av” after modifying /etc/exports. If you do this the first time, make sure that you can mount the exported file system on your host or a different machine on the same network before trying to boot your MatchPort from it.
5. Flash Partitioning Intro to Partitioning The idea of partitioning is to optimize the usage of the available flash space to meet your requirements. A Linux file system encompasses many files with different characteristics. There are binaries and data files. Some of them are crucial for the operation of the system all the time, while some need to be available in certain conditions only. Most files do not need to (and must not) be modified, some files are important, but variable (e.g.
5 Flash Partitioning Default Flash Memory Map for MatchPort AR, EDS1100, and EDS2100 The following figure shows the flash layout as it is hard-coded in the Linux kernel. Figure 5-1.
5 Flash Partitioning Default Flash Memory Map for XPort Pro The following figure shows the flash layout as it is hard-coded in the Linux kernel. Figure 5-2.
5 Flash Partitioning }, { .name = "LTRXconfig", .size = 0x10000, .offset = MTDPART_OFS_NXTBLK, .mask_flags = MTD_WRITEABLE /* force read-only */ .name = "dBug", .size = 0x10000, .offset = MTDPART_OFS_NXTBLK, .mask_flags = MTD_WRITEABLE /* force read-only */ }, { }, { .name = "dBugConfig", .size = 0x10000, .offset = MTDPART_OFS_NXTBLK, }, { .name = "Kernel", .size = (DEFAULT_FLASH_SIZE / 2) - 0x40000, .offset = MTDPART_OFS_NXTBLK, .
5 Flash Partitioning } #else /* CONFIG_MTD_RECOVER_PARAMS */ #ifdef CONFIG_MTD_BOOT_BANK , { .name = "UserExtra", .size = 0x40000, .offset = 0x400000 // gets overwritten below } #endif /* CONFIG_MTD_BOOT_BANK */ #endif /* CONFIG_MTD_RECOVER_PARAMS */ }; kernel + ROMFS root + blank JFFS2 This is the easiest deployable configuration available. The build process creates a ROMFS from the root file system and appends the Linux kernel to it.
5 Flash Partitioning 2. Validate that the kernel command line is set to rootfstype=romfs: dBUG> show watchdog: on silentboot: off romfs_flash: off bootbank: Single safebank: 0 netcon: on tftpsrv: on base: 16 baud: 115200 autoboot: Stop at prompt server: 172.19.239.1 client: 172.19.239.77 gateway: 172.19.0.1 netmask: 255.255.0.0 filename: /tftpboot/image.bin filetype: Image ethaddr: 00:20:4A:80:8C:7E dns: 172.19.1.1 bootfc: 0 maxbootfc: off kcl: rootfstype=romfs 3.
5 Flash Partitioning kernel + JFFS2 root This configuration is intended to free up RAM for applications that require a considerable amount of memory (e.g. ssh, tcpdump). These applications cannot be run from a ROMFS configuration. One downside is that is very hard to implement a reliable firmware upgrade process for this flash layout. It is also more prone to file system corruption of important files then ROMFS, since everything is stored on a single write-enabled partition.
5 Flash Partitioning Otherwise issue: dBUG> set kcl noinitrd rw rootfstype=jffs2 root=/dev/mtdblock5 And run the freshly installed new kernel + ROMFS with dBUG> gfl kernel + ROMFS root + JFFS2 + AUFS This variation is created when you use the AUFS profile. The instruction to get the resulting files on the flash are identical to the ones described in the “kernel + ROMFS root + blank JFFS2” section. One area where this feature might be very handy is configuration files.
5 Flash Partitioning Let's assume you want an image consisting of the kernel followed by a JFFS2 root partition that uses all available flash space. Perform the following steps: 1. Download and flash the kernel image dBUG> dnfl linux.bin Address: 0x4001FF80 Downloading Image 'linux.bin' from 172.19.39.1 TFTP transfer completed Read 1396736 bytes (2729 blocks) Must erase complete sectors (0x00040000 to 0x0019FFFF) Continue (yes | no)? yes ...................... Flash Erase complete.
5 Flash Partitioning 5. Since you have decided not to change the partition layout in the kernel source (maybe changing the kernel source would require intensive testing of the whole kernel again), the mptpart kernel command line option can be used to overwrite the partition scheme that is hard coded in the kernel. To do this we will need to determine the sizes in KB of the kernel and jffs2 partitions.
6. Building µClinux Configuration Profiles Configuration profiles are used to configure the µClinux initial settings. The actual differences between the provided profiles are very subtle. They differ mostly in the number of applications that get activated and a few kernel settings. We highly encourage the user to compare them with each other and make necessary adjustments. A profile is selected during the initial make of µClinux but can be exchanged any time.
6 Building µClinux Kernel and Application Options The simplest way to modify the kernel and/or application options or switch to a different profile is to run one of these commands from the installation directory. Command Interface Type make menuconfig ncurses/terminal window make xconfig graphical GTK make qconfig graphical QT3 (does not work to change kernel) Although the look and feel for these options differ, they are identical in functionality. 1.
6 Building µClinux Figure 6-2. uClinux Customize Application/Library Settings Window 4. At the bottom of the screen, select Exit and press Enter. Repeat this process for the parent window. 5. When prompted to save your new kernel configuration, select Yes and press Enter. Figure 6-3. uClinux Save Configurations Window 6. To customize the kernel selected earlier, navigate to the kernel configuration and enable or disable the desired options. When finished, select Exit and press Enter.
6 Building µClinux Figure 6-4. uClinux Save Configurations Window 7. To customize the application/library settings selected earlier, navigate through the configuration the menu and enable or disable the desired options. When finished, select Exit and press Enter. Figure 6-5. uClinux Distribution Configuration Window 8. Once the configuration options are updated, execute the make command to rebuild µClinux.
6 Building µClinux Building To build images, perform the following on the development host: $ cd $ . env_m68k-uclinux $ make … Vendor > 1. Lantronix (DEFAULTS_LANTRONIX) (NEW) choice[1]: 1 * * Select the Product you wish to target * Lantronix Products > 1. XPort_Pro (DEFAULTS_LANTRONIX_XPORT_PRO) (NEW) 2. MatchPort_AR (DEFAULTS_LANTRONIX_MATCHPORT_AR) (NEW) 3. EDS2100 (DEFAULTS_LANTRONIX_EDS2100) (NEW) 4.
6 Building µClinux * glibc Library Configuration * Default all settings (lose changes) (DEFAULTS_OVERRIDE) [N/y] (NEW) Customize Kernel Settings (DEFAULTS_KERNEL) [N/y] (NEW) Customize Application/Library Settings (DEFAULTS_VENDOR) [N/y] (NEW) Update Default Vendor Settings (DEFAULTS_VENDOR_UPDATE) [N/y] (NEW). … And then these images are made in the linux/images directory. $ ls linux/images image.bin image.without_header linux.bin linuz.bin romfs-inst.log imageu.bin imagez.bin linux.without_header romfs.
7. µClinux Startup Scripts Introduction Various startup scripts are called during the Linux boot process. These initialization files are found in the build environment under /linux/vendors/Lantronix//romfs_extra/. Edit them as appropriate. /etc/inittab The /etc/inittab file controls the configuration for the init process. It is here that the various startup and shutdown scripts are configured, and the console device is specified.
8. µClinux Networking Introduction µClinux supports a full TCP/IP networking stack. Several networking protocols are supported through the kernel and various shell utilities. Networking is initialized on the target through the /etc/netstart script. DHCP The target can obtain an IP address automatically through the DHCP protocol. Two DHCP clients are supported, udhcpc and dhcpcd. Udhcpc is included as part of busybox and takes up less flash and RAM space.
8 µClinux Networking inetd The inetd program listens for connections to network services such as telnet, ftp, and ssh. The /etc/inetd.conf configuration file specifies the ports to listen to, and their associated programs. The mapping of network port numbers to names is found in /etc/services. telnetd The telnet daemon allows for shell connections over the network. Note that telnet sessions are not encrypted. ftpd The ftp daemon waits for connections using the File Transfer Protocol (FTP).
9. BusyBox Intro to BusyBox The busybox command incorporates the functionality of several common Linux utilities into a single binary file. The utilities have been optimized for space by supporting fewer options. Flash and RAM space have also been saved by eliminating the overhead of having multiple binary files. Symbolic links to the busybox program are used in place of the utility binaries, as busybox uses the calling link to determine which command to invoke.
9 BusyBox 2. Select Customize Application/Library Settings then press Y to include features. Figure 9-2. uClinux Kernel/Library/Defaults Selection Window 3. At the bottom of the screen, select Exit and press Enter. Repeat this process for the parent window which opens. 4. When prompted to save your new kernel configuration, select Yes and press Enter. Figure 9-3. uClinux Save Settings Window 5. Select BusyBox from the µClinux Distribution Configuration menu and press Enter.
9 BusyBox Figure 9-4. uClinux BusyBox Selection Window 6. Navigate the menu for each category of utilities to be modified. At each utility option to be modified, select Y to enable, or N to disable. When finished, select Exit and press Enter. The BusyBox options will now be updated. Figure 9-5. uClinux BusyBox Configuration Window 7. Execute the make command to rebuild busybox within µClinux.
10. Sample Applications Intro to Sample Applications Lantronix provides some sample applications to demonstrate how to develop custom applications with the SDK. These applications show examples of how to access the network, serial port and CPs. The Lantronix sample applications are found in the SDK under linux/user/lantronix. The libcp CP API library is also found in this directory. Descriptions of the sample applications are provided below.
10 Sample Applications s2e (Serial to Ethernet) The s2e program demonstrates serial to Ethernet tunneling and a configuration web interface. Note that the boa web server must be enabled with ‘make menuconfig’ in order to take advantage of the web interface. To access the s2e settings when the s2e and boa processes are running, use your web browser to connect to: http:/// Figure 10-2.
10 Sample Applications s2e-ssh The s2e-ssh program demonstrates serial to Ethernet tunneling with ssh. Note that this program requires a large amount of memory, so you have to reduce memory usage which is used by any other applications. Figure 10-4. Serial-To-Ethernet Tunnel Setup Screen with SSH To setup a serial to Ethernet tunnel with SSH server mode, you have to set SSH server keys at SSH Setup Screen. Figure 10-5.
10 Sample Applications The keys are OpenSSH PEM. Format as follows: RSA Private Key: -----BEGIN RSA PRIVATE KEY----MIICWgIBAAKBgQCpcN0ROVbOHydDuE3/kKeS/DNq6CUEKLhZM7z/R8p7dGUwWirX ... dE+IapyOCaRMfKPJftWUkb4/H1KEAVpfRZKFeK+Q -----END RSA PRIVATE KEY----- DSA Private Key: -----BEGIN DSA PRIVATE KEY----MIIBuwIBAAKBgQC89M2rttMbT5azCaxmY0szUPWlWK1T2Z2ewihJ68PoS/wqNPun ... FyuhK3qSn3cvdvDoUdQ4 -----END DSA PRIVATE KEY----- s2e-ssl The s2e-ssl program demonstrates serial to Ethernet tunneling with ssl.
10 Sample Applications Figure 10-7. Serial-To-Ethernet SSL Setup Screen The keys are OpenSSL PEM Format like following. Certificate: -----BEGIN CERTIFICATE----MIIDkjCCAvugAwIBAgIBADANBgkqhkiG9w0BAQQFADCBkzELMAkGA1UEBhMCSlAx ... MUiNfOVv -----END CERTIFICATE----- Private Key: -----BEGIN RSA PRIVATE KEY----MIICXQIBAAKBgQC2QJSCGFUjsegEQbZl1ylVOi48ZcTJG1wRfyJ854V5+wpk2r7r ...
10 Sample Applications Figure 10-8. Serial-To-Ethernet GPIO Setup Screen cpm (CP Manager) The Configurable Pin Manager (cpm) provides shell level access to the device’s GPIO pins. It also provides an example of how to use the libcp API to communicate with the CP GPIO driver. To use CPs as GPIO, you have to configure the kernel. (see CONFIG_LTRX_CPM_DEFAULT_GPIO of Appendix A Important Configuration Switches) The cpm.conf configuration file is used to group CPs into bit patterns.
10 Sample Applications } config cp2 { type output state enable invert disable } config cp3 { type output state enable invert disable } config cp4 { type output state enable invert disable } group LED { type output state enable bit0 CP1 bit1 CP2 bit2 CP3 bit3 CP4 } The cpm program can then be invoked to light all four LEDs with the following: $ cpm -N LED -V 15 The '-N' argument is for specifying the CP group name, and the '-V' argument for specifying which GPIOs to enable.
10 Sample Applications Figure 10-9. CP Manager Interface Overview LED The led program is a simple LED demo intended to demonstrate the use of the CP API library. Run led from the shell with no arguments to observe the LED demo.
10 Sample Applications Adding a New Application To add an application, perform the following on the development host: $ cd /linux/user/lantronix $ mkdir - Add the source files into - Sample source file (test.c) /* Start test.c */ #include int main(void) { printf("Testing 1,2,3\n"); return 0; } /* End test.c */ 1. Create make file as linux/user/lantronix//Makefile.
11. VIP Access Software Introduction VIP Access Software provides secure remote Internet access to control almost any electronic equipment behind firewalls with ManageLinx. See the documents of ManageLinx for details. Enable VIP Access Software To compile and install vipaccess (VIP Access Software), enable the CONFIG_USER_LANTRONIX_VIP_ACCESS option and then rebuild µClinux with "make distclean" followed by "make" from the installation directory.
11 VIP Access Software Figure 11-1. Lantronix Applications Configuration Window 2. Make the Linux image and boot it. 3. Connect to http:/// by Web Browser. 4. Click VIP from Menu, select the bootstrap.xml from the directory where it resides and click Submit. 5. Toggle the VIP mode to Enable, and click Submit.
11 VIP Access Software Figure 11-2. Serial-To-Ethernet VIP Setup Screen Your device can accept connections on TCP ports (e.g. HTTP, TELNET, s2e) via VIP, after the VIP session is visible on DSM via its Web UI.
12. Profiling & Debugging Introduction Various tools are provided in Linux for profiling system performance and debugging applications. These include utilities for symbolic debugging, logging, and tracking of cpu, memory, network, and file system usage. Descriptions of many of these programs are provided below. gdbserver The gdbserver program can be installed on the target to aid in debugging.
12 Profiling & Debugging iperf The iperf program measures networking throughput between two systems. The program can be run on the target in either client or server mode. If client mode is chosen, iperf must first be run in server mode on the second system. With server mode, iperf must first be started on the target, and then run in client mode on the second system.
13. Firmware Updates Introduction Firmware updates of embedded Linux devices are usually a compromise of your requirements: Are online updates within Linux needed? Is there enough flash space to store the whole update file before starting the update? Is it acceptable to force the unit into an upgrade mode in which it is not responsive otherwise? What should happen if the upgrade fails? There is no one approach that fits all needs.
13 Firmware Updates Features Same process for updates via boot loader and within Linux. Easily adjustable to customer’s needs. Disaster recovery feature available. Restrictions Update from within Linux can only update kernel, ROMFS and partitions that are not mounted. Update from within Linux updates 64k flash areas incrementally; so if the update process gets interrupted, the file system will be corrupted and must be caught by disaster recovery.
13 Firmware Updates For XPort Pro makeimage2.py images/image.bin:kernel:0x80000:ROMFS: /tmp/uclinuxkernel-and-romfs.bin 3. Installing an uncompressed linux kernel and using a JFFS2 root partition: For MatchPort AR makeimage2.py images/linux.bin:kernel:0x40000:bin: images/rootfs.img:jffs2:0x400000:bin: /tmp/uclinux-kernel-andjffs2.bin For XPort Pro makeimage2.py images/linux.bin:kernel:0x80000:bin: images/rootfs.img:jffs2:0x400000:bin: /tmp/uclinux-kernel-andjffs2.
13 Firmware Updates 4. Push the firmware update file to the target. Note that firmware updates must be pushed to /var/firmware.img. ftp> put uclinux-kernel-and-romfs-and-erase-jffs2-area.bin /var/firmware.img Updating via a WEB Browser To update the target via WEB Browser with an image file generated by makeimage2.py (see the previous section), perform the following steps: 1. From your host system, launch an HTTP session to the target via WEB Browser.
14. Resources Lantronix Open Linux SDK Forum The Lantronix Linux SDK forum Web site (http://forums.lantronix.com) is the primary resource to obtain updated revisions of the SDK. The SDK and related documentation are also available via the Downloads page (www.lantronix.com/support/downloads). Please visit the Lantronix Web site or the Forums page to determine if a more current version of the SDK is available.
A. Important Configuration Switches Table A-1. Important Configuration Switches Switch Path in Configuration Utility Description CONFIG_NFS_FS KERN->File systems->Network File Systems->NFS file system support Enables Network file system. CONFIG_NFS_V3 KERN->File systems->Network File Systems->NFS file system support>Provide NFSv3 client support Enables NFS version 3.
A Important Configuration Switches Switch Path in Configuration Utility Description Enables RS-485 support. CONFIG_SERIAL_MCF_RS485 KERN->Device Drivers->Character devices->Serial drivers->Enable RS485 support in the new style ColdFire serial driver CONFIG_USER_BUSYBOX_FEAT URE_MOUNT_NFS BUSY->Linux System Utlilites>mount->Support mounting NFS file systems Enables NFS support on mount command. CONFIG_USER_PORTMAP_PORT MAP USER->Network Applications>portmap Enables NFS support on mount command.
B. Differences Between µClinux and Standard Linux The µClinux kernel is a collection of patches to make the standard Linux kernel run on CPUs that do not have an MMU. As a consequence you will encounter some differences between the µClinux and the standard Linux behavior.
C. Troubleshooting Technical Support Technical Support US Check our online knowledge base or send a question to Technical Support at http://www.lantronix.com/support. Phone: (800) 422-7044 (US Only) (949) 453-7198 Technical Support Europe, Middle East, and Africa Phone: +33 (0)1 39 30 41 72 +49 (0) 180 500 13 53 (Germany Only) Email: eu_techsupp@lantronix.com or eu_support@lantronix.com Firmware downloads, FAQs, and the most up-to-date documentation are available at www.lantronix.com/support.