Using the Intel IQ80310 Ethernet Connection Under RedBoot Application Note March 5, 2002 Document Number: 273685-001
Information in this document is provided in connection with Intel products. No license, express or implied, by estoppel or otherwise, to any intellectual property rights is granted by this document. Except as provided in Intel's Terms and Conditions of Sale for such products, Intel assumes no liability whatsoever, and Intel disclaims any express or implied warranty, relating to sale and/or use of Intel products including liability or warranties relating to fitness for a particular purpose, merchantability, or infringement of any patent, copyright or other intellectual property right. Intel products are not intended for use in medical, life saving, or life sustaining applications. Intel may make changes to specifications and product descriptions at any time, without notice. Designers must not rely on the absence or characteristics of any features or instructions marked reserved or undefined. Intel reserves these for future definition and shall have no responsibility whatsoever for conflicts or incompatibilities arising from future changes to them. The Intel IQ80310 may contain design defects or errors known as errata which may cause the product to deviate from published specifications. Current characterized errata are available on request. Contact your local Intel sales office or your distributor to obtain the latest specifications and before placing your product order. Copies of documents which have an ordering number and are referenced in this document, or other Intel literature may be obtained by calling 1-800-548-4725 or by visiting Intel's website at http://www.intel.com. Copyright Intel Corporation, 2002 AlertVIEW, i960, AnyPoint, AppChoice, BoardWatch, BunnyPeople, CablePort, Celeron, Chips, Commerce Cart, CT Connect, CT Media, Dialogic, DM3, EtherExpress, ETOX, FlashFile, GatherRound, i386, i486, icat, icomp, Insight960, InstantIP, Intel, Intel logo, Intel386, Intel486, Intel740, IntelDX2, IntelDX4, IntelSX2, Intel ChatPad, Intel Create&Share, Intel Dot.Station, Intel GigaBlade, Intel InBusiness, Intel Inside, Intel Inside logo, Intel NetBurst, Intel NetStructure, Intel Play, Intel Play logo, Intel Pocket Concert, Intel SingleDriver, Intel SpeedStep, Intel StrataFlash, Intel TeamStation, Intel WebOutfitter, Intel Xeon, Intel XScale, Itanium, JobAnalyst, LANDesk, LanRover, MCS, MMX, MMX logo, NetPort, NetportExpress, Optimizer logo, OverDrive, Paragon, PC Dads, PC Parents, Pentium, Pentium II Xeon, Pentium III Xeon, Performance at Your Command, ProShare, RemoteExpress, Screamline, Shiva, SmartDie, Solutions960, Sound Mark, StorageExpress, The Computer Inside, The Journey Inside, This Way In, TokenExpress, Trillium, Vivonic, and VTune are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries. *Other names and brands may be claimed as the property of others. 2 Application Note
Contents Contents 1.0 Objective/Introduction...7 2.0 Environment...8 3.0 Setting up IP Address and Port...9 3.1 Procedure...9 4.0 Ping Test Procedure...13 5.0 Terminal I/O via Ethernet Running RedBoot Commands Using Telnet, Procedure...15 6.0 Initiation of GNU Debugger in Windows 2000...18 6.1 Running GNU Debugger from Command Line...24 6.2 Running GNU Debugger in GUI mode...28 7.0 Summary...32 8.0 Trouble Shooting...33 9.0 References...34 Application Note 3
Contents Figures 1 Ethernet Connection Components... 8 2 Intel IQ80310 Hyperterminal (RedBoot Prompt Screen)... 10 3 Intel IQ80310 Hyperterminal (fconfig -1 Screen)...11 4 Intel IQ80310 Hyperterminal (Ping Command Screen)... 13 5 CMD Window (Ping IP Address Screen)... 14 6 CMD Window (Telnet Prompt Screen - set local_echo)... 15 7 CMD Window (Telnet Prompt Screen - open 10.10.10.2 9000)...16 8 CMD Window (Telnet Prompt Screen - Boot)... 16 9 Intel XScale Microarchitecture Developer Tools Web Page... 18 10 GNUpro for Windows NT Hosts - ELF Download Wrapper Page... 19 11 File Download Select Pop-up Menu...20 12 File Download Select Browser Screen...21 13 File Download Screen...21 14 Intel IQ80310 I/O Processor Evaluation Platform Board Development Tools Web Page... 22 15 Intel IQ80310 LED Application Example Download Wrapper Page... 23 16 CMD Window (make tester.elf Screen)... 24 17 CMD Window (make tester.elf Screen)... 25 18 CMD Window (make tester.elf Screen)... 25 19 CMD Window (Target Remote IP Address Screen)... 26 20 CMD Window (load tester.elf Screen)... 27 21 CMD Window (GNU Debugger in GUI Mode Launch Screen)... 28 22 GNUPro Toolkit Insight Debugger Splash Screen...29 23 tester.elf Source Code Screen...30 24 Remote/TCP Target Select Dialog Box...31 Tables No Tables Used At This Time 4 Application Note
Contents Revision History Date Revision Description March 2002 001 Initial Release. Application Note 5
Contents This page intentionally left blank. 6 Application Note
Objective/Introduction 1.0 Objective/Introduction This document describes how to setup an ethernet connection between an Intel IQ80310 evaluation platform board (IQ80310) based on Intel XScale microarchitecture (ARM* architecture compliant) running RedBoot* and a host computer running Windows*. Step-by-step instructions explain how to: Set up the IP address. Perform ping tests from both target and host platforms. Issue RedBoot commands via Telnet*. Run the GNU debugger GDB over the ethernet connection. Captured screen shots help explain the procedures. The procedures assume limited prior knowledge of RedBoot, GBD or Telnet. A trouble shooting section addresses some problematic issues you may encounter while performing these procedures. Application Note 7
Environment 2.0 Environment Required material: IQ80310 with RedBoot version R1.24 Flashed onto it. A host computer system with an available PCI slot or......the Cyclone* PCI 80300 backplane (PCI BP) and power supply. The serial cable provided with the Intel IQ80310 Developer Kit. Either an ethernet crossover cable or......two standard ethernet cables and an ethernet hub. The RedBoot GNU/Microsoft Windows CD provided with the IQ80310. Figure 1. Ethernet Connection Components 8 Application Note
SettingupIPAddressandPort 3.0 Setting up IP Address and Port First make sure the latest firmware is on the IQ80310, the latest Flash of RedBoot can be obtained from: http://developer.intel.com/design/iio/docs/dvtl_iq80310.htm. Under the section: Flash Recovery Utility (FRU) Self-building FRU Disk File Manual-build FRU Disk File Intel Flash Recovery Utility (FRU) Reference Manual Select FRU Self-building File, and follow the instructions to extract the files to a local drive and then create the disks. 3.1 Procedure 1. With the host system or PCI BP powered off connect the IQ80310 into an available PCI slot. 2. Connect the supplied serial cable to a host systems com port 1 and to the serial connector (J-10) on the IQ80310. 3. Boot the host system to Windows NT* 4.0 or Windows 2000*. 4. Run the HyperTerminal connecting using the steps outline in the Intel IQ80310 Evaluation Platform Board Manual, page A2, section A.1.3.1. Win32 on Host Connecting with HyperTerminal: To bring up a HyperTerminal session on a Win32 platform: Go to Start, Programs, Accessories, Communications, HyperTerminal > HyperTerminal setup screens Connection Description Panel > Enter name Connect To Panel > Select host com2 port (or whichever port you are using) Port Settings > Bits per second: 115200 >DataBits:8 > Parity: none >StopBits:1 > Flow Control: none Start HyperTerminal > Select Call from HyperTerminal panel 5. Power up the IQ80310 with the latest Flash of RedBoot. Application Note 9
SettingupIPAddressandPort 6. Applying power to the IQ80310 gives the RedBoot prompt RedBoot> in the HyperTerminal window. Figure 2. Intel IQ80310 Hyperterminal (RedBoot Prompt Screen) 10 Application Note
SettingupIPAddressandPort 7. At the RedBoot> prompt type: fconfig l. That returns some configuration information like that shown below: RedBoot> fconfig -l Run script at boot: false Use BOOTP for network configuration: false Local IP address: 192.168.1.29 Default server IP address: 0.0.0.0 GDB connection port: 9000 Network debug at boot time: false Figure 3. Intel IQ80310 Hyperterminal (fconfig -1 Screen) Application Note 11
SettingupIPAddressandPort 8. What ever was previously set up on the IQ80310 Local IP address and Default server IP address, is what is seen as this part of the configuration data. When no previous address had been set, these return as zeros (000.000.000.000). 9. To set the Local IP address and Default server IP address, using the fconfig command at the RedBoot prompt. Type fconfig, this returns each of the line items one-at-a-time and they can be edited, by adding the variable at the end of the displayed line (i.e., Run script at boot: false true). This changes the Run script at boot option to true. When not changing the variable, just hit return to move onto the next variable. Example: RedBoot> fconfig Run script at boot: false Use BOOTP for network configuration: false Local IP address: 192.168.1.29 111.111.111.1 Default server IP address: 0.0.0.0 GDB connection port: 0 9000 Network debug at host boot time: false This changes the Local IP address and GDB connection port. 10. Set the configuration data to these settings: Run script at boot: false Use BOOTP for network configuration: false Local IP address: <IQ80310 IP_Address> (example 10.10.10.2) Default server IP address: 0.0.0.0 GDB connection port: 9000 Network debug at host boot time: false 11. Reset the IQ80310 after changing the configuration to save changes to Flash. 12. It is no longer necessary to maintain the serial cable connection. 12 Application Note
Ping Test Procedure 4.0 Ping Test Procedure 1. To ping the host system (the system at the other end of the ethernet cable), do a network connectivity ping test by typing: ping v <host IP address>. Refer to the RedBoot User's Guide at http://sources.redhat.com/ecos/docs-latest/redboot/redboot.html in chapter 2 - RedBoot Commands and Examples. Look under Common Commands and Connectivity, ping - Check network connectivity ping. ping [-v] [-n <count>] [-l <length>] [-t <timeouts>] [-r <rate>][-i <IP_addr>] -h <IP_addr> The ping command checks the connectivity of the local area network by sending special (ICMP) packets to a specific host. These packets should be automatically returned by that host. The command indicates how many of these round-trips were successfully completed. Figure 4. Intel IQ80310 Hyperterminal (Ping Command Screen) Application Note 13
Ping Test Procedure Figure 5. 2. To exit the HyperTerminal window, use the mouse to select FILE then EXIT. A dialog pop-up box asks to disconnect the HyperTerminal connection, click Yes 3. This allows pinging in both directions, to and from the host system. From the host system, open a DOS window and type: ping <IQ80310 IP Address>. CMD Window (Ping IP Address Screen) 4. To exit the DOS prompt window type: exit. This completes a successful connection of the two systems via the ethernet connection. 14 Application Note
Terminal I/O via Ethernet Running RedBoot Commands Using Telnet, Procedure 5.0 Terminal I/O via Ethernet Running RedBoot Commands Using Telnet, Procedure Figure 6. 1. Set up the IQ80310 as outlined in the Ping test. Insuring that the ping was successfully performed. 2. To open a Telnet session from the host system, open a DOS prompt window and type: telnet at the command line (i.e., C:\WINNT> telnet). 3. At the Microsoft Telnet prompt type: set local echo. Microsoft telnet> set local echo. CMD Window (Telnet Prompt Screen - set local_echo) This Telnet command invokes the full-duplex function of Telnet. Telnet defaults to half-duplex mode where the characters typed within the Telnet window do not appear on the screen, but do get set to the target system. In full-duplex mode the characters typed within the Telnet window do appear on the screen, as well as getting set to the target system. Application Note 15
Terminal I/O via Ethernet Running RedBoot Commands Using Telnet, Procedure 4. From the Microsoft Telnet prompt type: open <IQ80310 IP_Address> 9000 Where the <IQ80310 IP_Address> is what has previously been set to be (i.e., Microsoft Telnet> open 10.10.10.2 9000 Figure 7. CMD Window (Telnet Prompt Screen - open 10.10.10.2 9000) 5. This connects to the target IQ80310 and give a RedBoot prompt in the DOS window. Figure 8. CMD Window (Telnet Prompt Screen - Boot) 16 Application Note
Terminal I/O via Ethernet Running RedBoot Commands Using Telnet, Procedure 6. Once at the RedBoot> prompt, execute any of the RedBoot commands. This is a list of available commands and syntax, it can also be obtained by typing help at the command line: RedBoot> help Manage aliases kept in Flash memory: alias name [value] Set/Query the system console baud rate: baudrate [-b <rate>] Manage machine caches: cache [ON OFF] Display/switch console channel: channel [-1 <channel number>] Display disk partitions: Disks Display (hex dump) a range of memory: dump -b <location> [-l <length>] Manage Flash images: fis {cmds} Manage config in FLASH memory: fconfig [-i] [-l] [-n] [-f] nickname [value] Execute code at a location: go [-w <timeout>] [entry] Run board diagnostics: diag Note: This is not supported using Telnet via the ethernet. Help about help?: help [<topic>] Load a file: load [-r] [-v] [-d] [-h <host>] [-m {TFTP xyzmodem disk}] [-b <base_address>] <file_name> Network connectivity test: ping [-v] [-n <count>] [-t <timeout>] [-i <IP_addr]-h <IP_addr> Reset the system: reset Display RedBoot version information: version 7. To exit RedBoot: a. Press the Ctrl+] keys, this returns to the Microsoft Telnet> prompt. b. Type quit, to return to the DOS prompt C:\WINNT>. c. Type exit to exit the DOS prompt window. Application Note 17
Initiation of GNU Debugger in Windows 2000 6.0 Initiation of GNU Debugger in Windows 2000 Prior to running the GNU debugger in either command line or GUI mode, first install the tools chain for Windows. Either download the zip file or install it from the GNUpro Tool kit CD provided with the IQ80310. To download the tools chain for Windows go to: http://developer.intel.com/design/intelxscale/dev_tools/ and Select GNUpro for Windows NT hosts ELF targeted binaries, this sends you to a FTP download site. Figure 9. Intel XScale Microarchitecture Developer Tools Web Page 18 Application Note
Initiation of GNU Debugger in Windows 2000 Figure 10. GNUpro for Windows NT Hosts - ELF Download Wrapper Page Application Note 19
Initiation of GNU Debugger in Windows 2000 http://developer.intel.com/design/intelxscale/dev_tools/i686-pc-cygwin-x-xsccale-elf.htm. Select the site to download the file and save it to the hard drive. Select Save this file to disk. And click OK. Figure 11. File Download Select Pop-up Menu 20 Application Note
Initiation of GNU Debugger in Windows 2000 Extract the zip file to Windows 2000 host system, noting the path. Figure 12. File Download Select Browser Screen Figure 13. File Download Screen Unzip this file on to the IQ80310 host system. Application Note 21
Initiation of GNU Debugger in Windows 2000 The compiled *.elf file is also needed. A sample file can be downloaded at: http://developer.intel.com/design/iio/docs/dvtl_iq80310.htm. Figure 14. Intel IQ80310 Evaluation Platform Board Development Tools Web Page 22 Application Note
Initiation of GNU Debugger in Windows 2000 Click on the IQ80310 LED Application Example and select the download site. Figure 15. Intel IQ80310 LED Application Example Download Wrapper Page Save the zip file to the host system and unzip it into a source directory on the host. This provides five files; led.c, led.h, blink.c, blink.h and makefile. OpenaDOSwindowandgotothesource directory, type the path to the tools directory and make tester.elf. Application Note 23
Initiation of GNU Debugger in Windows 2000 Figure 16. CMD Window (make tester.elf Screen) This creates three additional files in the source directory; blink.o, led.o and tester.elf. 6.1 Running GNU Debugger from Command Line To run the GNU debugger from a command prompt window, open a DOS window and at the c:\ prompt type: xscale-elf-gdb.exe nw tester.elf. The directory with the tools chain for Windows needs to be set as part of your path. 24 Application Note
Initiation of GNU Debugger in Windows 2000 Figure 17. CMD Window (make tester.elf Screen) This starts GBD and changes the screen to: Figure 18. CMD Window (make tester.elf Screen) Application Note 25
Initiation of GNU Debugger in Windows 2000 Now identify the physical device the tester.elf is to run on, (the microprocessor) located on the IQ80310 by designating a target. Type: target remote 10.10.10.2:9000 where the 10.10.10.2:9000 is the IP address and GBD the connection port described in Section 3.0, Setting up IP Address and Port on page 9. The screen should look like this; Figure 19. CMD Window (Target Remote IP Address Screen) At the (gdb) prompt, type: load to load the tester.elf file on to the microprocessor on the IQ80310. The IQ80310 is running the GBD and the tester.elf file loaded. Type the continue command at the (GBD) prompt and observe the LED on the IQ80310 LED display: 80, 03, 31, 10; then go blank and repeat that sequence until it stops. 26 Application Note
Initiation of GNU Debugger in Windows 2000 Figure 20. CMD Window (load tester.elf Screen) To stop the tester.elf file, hit Ctrl-Break and type: quit to exit GBD. It prompts to confirm a quit command with the program running, answer yes. This returns to the source directory DOS prompt. For a list of all the GBD commands see: http://www.gnu.org/manual/gdb-4.17/html_chapter/gdb_toc.html#toc4. GDB itself can always be asked for information on its commands, using the command help. Type: help or h. Help can also be used (abbreviated h) with no arguments, to display a short list of named classes of commands: (GBD) help List of classes of commands: running -- Running the program stack -- Examining the stack data -- Examining data breakpoints -- Making program stop at certain points files -- Specifying and examining files status -- Status inquiries support -- Support facilities user-defined -- User-defined commands aliases -- Aliases of other commands obscure -- Obscure features Type: help followed by a class name for a list of commands in that class. Type: help followed by command name for full documentation. Command name abbreviations are allowed when unambiguous. (GBD) To exit GBD type quit at the (GBD) command line. Application Note 27
Initiation of GNU Debugger in Windows 2000 6.2 Running GNU Debugger in GUI mode Figure 21. To run the GNU debugger in GUI mode, open a DOS window and at the c:\ prompt type: xscale-elf-gdb.exe tester.elf. This starts the debugger in GUI mode, loading the tester.elf file. The directory with the tools chain for Windows set, needs to be a part of your path. CMD Window (GNU Debugger in GUI Mode Launch Screen) 28 Application Note
Initiation of GNU Debugger in Windows 2000 This momentarily brings up the GNUPro Toolkit Insight Debugger splash screen. Figure 22. GNUPro Toolkit Insight Debugger Splash Screen Application Note 29
Initiation of GNU Debugger in Windows 2000 Then the debugger GUI opens, displaying the source code for the tester.elf file. Figure 23. tester.elf Source Code Screen 30 Application Note
Initiation of GNU Debugger in Windows 2000 Click on the Run icon in the upper left corner. The Target Selection dialog box opens, click the drop down arrow for Target and select Remote/TCP. Enter the IP address in the Hostname box and the GBD connection port (in our example 9000 is used) in the Port box and click OK. Figure 24. Remote/TCP Target Select Dialog Box The code can now be run with the same results as described in the previous section, the LEDs on the IQ80310 displays a series of numbers. To stop the program, click the Stop button. To exit the debugger, select: File>Exit>answer Yes to the warning prompt. This returns the system to the DOS window opened to start this session, the DOS window can then be closed by typing exit. Application Note 31
Summary 7.0 Summary Section 3.0, Setting up IP Address and Port on page 9 and Section 4.0, Ping Test Procedure on page 13, instruct the user how to configure the IQ80310 IP address for ethernet connections, PING both a host computer connected to the IQ80310 via ethernet and PING the IQ80310 via the ethernet from a host computer. Following the steps outlined in Section 5.0, Terminal I/O via Ethernet Running RedBoot Commands Using Telnet, Procedure on page 15, the user is able to start a Telnet session and issue the IQ80310 all the supported RedBoot commands. Finally in Section 6.0, Initiation of GNU Debugger in Windows 2000 on page 18, the user is instructed on how to install and initiate the GNU debugger tool, under Microsoft Windows 2000, in both command line mode and GUI mode. For additional information on these topics and more, please refer to the documents in Section 9.0, References on page 34, of this application note. 32 Application Note
Trouble Shooting 8.0 Trouble Shooting When applying power to the IQ80310 does not produce a RedBoot> prompt in the HyperTerminal window, first check: That the IQ80310 has indeed powered on. The two LEDs on the IQ80310 go from 8.8 to 02 to 66 and stop at 01. This indicates the board has booted and is up and running. When the board does not come up, ensure the power connections to the backplane and or the power supply are correctly connected and to specification. Ensure the serial cable is connected to J-10 on the IQ80310 and to the correct COM port on the host computer. Ensure all HyperTerminal settings are correct per the steps outline in Section 3.0, Setting up IP Address and Port on page 9 and that the newest firmware is used. Use the reset button to toggle the power on the IQ80310. When not sure that the changes were saved to Flash, boot the IQ80310 and check the configuration, using the fconfig l command in a HyperTerminal window. When unable to ping the host computer from the IQ80310, as outline in Section 4.0, Ping Test Procedure on page 13, check that the ethernet cables are correctly connected. When using a crossover cable and it appears to be connected correctly, use a known good cable. When using regular ethernet cables and a hub, use known good cables and hub. Verify the IP addresses are correct and retry the ping test. When the board can be pinged from the host, but not the host from the board, reset the board and retry the ping test, ensuring the correct commands are being used. Application Note 33
References 9.0 References Redhat GNUpro Tool kit documentation: Intel IQ80310 Evaluation Platform Board Manual http://developer.intel.com/design/iio/manuals/273431.htm RedBoot Users Guide on line http://sources.redhat.com/ecos/docs-latest/redboot/redboot.html Intel XScale Microarchitecture GNUpro (Debugger GDB) http://developer.intel.com/design/intelxscale/dev_tools/010827/ GNUpro for Windows NT hosts ELF targeted binaries http://developer.intel.com/design/intelxscale/dev_tools/010827/ GNU Debugging with GDB http://www.gnu.org/manual/gdb-4.17/gdb.html Intel IQ80310 LED Application Example http://developer.intel.com/design/iio/devtools/iq80310/led.htm 34 Application Note