Simplifying System IntegrationTM 78Q8430 ARM9(920T) Linux Driver Diagnostic Guide October 17, 2008 Rev. 1.
78Q8430 ARM9(920T) Linux Driver Diagnostic Guide UG_8430_003 © 2008 Teridian Semiconductor Corporation. All rights reserved. Teridian Semiconductor Corporation is a registered trademark of Teridian Semiconductor Corporation. Simplifying System Integration is a trademark of Teridian Semiconductor Corporation. ARM9 is a trademark of ARM Limited. Linux is the registered trademark of Linus Torvalds. Pentium is a registered trademark of Intel Corporation.
UG_8430_003 78Q8430 ARM9(920T) Linux Driver Diagnostic Guide Table of Contents 1 Introduction ......................................................................................................................................... 4 2 System Requirements ........................................................................................................................ 5 2.1 Hardware Requirements ......................................................................................................
78Q8430 ARM9(920T) Linux Driver Diagnostic Guide UG_8430_003 1 Introduction The Teridian Semiconductor Corporation (TSC) 78Q8430 is a single chip 10/100 Ethernet MAC and PHY controller supporting multi-media offload. The device is optimized to enhance throughput and offload network protocol tasks from the host processor for demanding multi-media applications found in Set Top Boxes, IP video, and Broadband Media Appliances.
UG_8430_003 78Q8430 ARM9(920T) Linux Driver Diagnostic Guide 2 System Requirements 2.1 Hardware Requirements The following list describes the minimum hardware requirements for the 78Q8430 ARM9 Linux based evaluation and testing platform: • • • 2.2 78Q8430 Embest Evaluation Board (daughter card). The Embest ARM9 S3CEB2410 evaluation platform (also called the ARM Board in this document).
78Q8430 ARM9(920T) Linux Driver Diagnostic Guide UG_8430_003 3 Diagnostic Tools The 78Q8430 10/100 Ethernet MAC/PHY Linux device driver provides extensive configuration support through its IOCTL interface. The 78Q8430 is a uniquely feature rich ethernet solution. As such, the standard Linux ethernet configuration applications, ethtool and mii-tool, do not address the majority of the available features.
UG_8430_003 78Q8430 ARM9(920T) Linux Driver Diagnostic Guide 4 Diagnostic Procedures The test procedures use the target Embest platform under test (containing the 78Q8430) and a Linux Host PC, which generates the majority of the tests and provides some required verification facilities. The test procedures are preceded by the Test Setup section describing the preparation needed for using the testing platform. The test procedures are generally grouped by 78Q8430 features.
78Q8430 ARM9(920T) Linux Driver Diagnostic Guide UG_8430_003 9. When boot up completes, enter the following at the prompt: arp -s 192.168.10.100 00:0E:2E:5B:25:86 10. On the Linux Host, issue the following ping command to verify the connection to the target: ping 192.168.10.99 4.3 Packet Tests This test group drives TCP/IP generated ping packets from the Linux host to the target containing the 78Q8430 board under test, and vice versa. 4.3.
UG_8430_003 4.4.3 78Q8430 ARM9(920T) Linux Driver Diagnostic Guide Software Reset The procedure generates and verifies the software reset. 1. Attach and configure a Logic Analyzer to trap access to register 0x154 (TP2 and TP5, refer to the 78Q8430 Embest Evaluation Board User Manual). 2. Enter the command: 8430-tool eth0 –R 3. Verify that the MAC Reset bit has been written to the 78Q8430. 4.4.4 EEPROM Access This procedure tests random EEPROM read and write access. 1. 2. 3. 4. 5. 6.
78Q8430 ARM9(920T) Linux Driver Diagnostic Guide 4.4.6 UG_8430_003 Append CRC 1. On the Linux host enter: ping 192.168.10.99 2. Verify that the ARM target responds to the pings. 3. Enter the command: 8430-tool eth0 -F crc fix on Note: CRC append and fix are mutually exclusive. CRC append is the startup default. 4. Verify that packets are no longer returned. 5. Enter the command: 8430-tool eth0 -F crc append on 6. Verify that packets are returned again. 4.4.7 1. 2. 3. 4. 5. 6. 7. 8.
UG_8430_003 78Q8430 ARM9(920T) Linux Driver Diagnostic Guide 4.4.11 RMON Rollover This procedure verifies the generation of the RMON rollover message. 1. On the Linux host, enter: ping -f 192.168.10.99 2. Verify that the ARM target responds to the pings. 3. On the ARM target, turn on TOE mode by entering the following command: 8430-tool eth0 -T on 4. Run continuously for 1 or more hours. 5. On the ARM target, verify that the RMON rollover message is received. 4.4.
78Q8430 ARM9(920T) Linux Driver Diagnostic Guide UG_8430_003 6. Enter the command: 8430-tool eth0 -P threshold 25 The value 25 is arbitrary; it is a count of blocks, so any value up to 120 is acceptable. 7. On the Linux host: a. Enter: tcpdump -lnei ethN b. Enter: pktgen.sh c. Verify that Pause frames are issued. 8. On the Linux host: a. Kill pktgen.sh b. Enter: ping 192.168.10.99 c. Verify the ping response.
UG_8430_003 78Q8430 ARM9(920T) Linux Driver Diagnostic Guide 4.4.17 OnNow WOL 1. Enter the command: 8430-tool eth0 -L onnow set 0x10203040 0x50607080 0x90A0B0C0 0x00000CD1 2. Enter the command: 8430-tool eth0 -c dump 0x15 6 3. Verify that the stored CAM values make up the group: 0x403080705090. 4.4.18 HNR Frame 1. Enter the command: 8430-tool eth0 -H set 0x000e2e61 0x91790001 0x02030405 0x08004500 0x001e0009 2. The 8430-tool will now be in interactive mode.
78Q8430 ARM9(920T) Linux Driver Diagnostic Guide UG_8430_003 4.4.23 BIST 1. Enter the command: 8430-tool eth0 -B 2. Verify successful tests in the BIST console log. The command generates five tests; all tests must report passed. 4.4.24 Classification Interrupts This procedure verifies that Classification Interrupts cause an out of cycle RX routine call within the driver. 1. 2. 3. 4. 5.
UG_8430_003 78Q8430 ARM9(920T) Linux Driver Diagnostic Guide 8. On the Linux Host, enter: a. ifconfig ethN mtu 1500 b. ping 192.168.10.99 9. Verify that the 78Q8430 is responding normally. TOE mode will still be active. net rx: RPSR Classification: 0x78 net_rx: RPSR Class: 0x78,-> TOE XMIT 10. Enter the command: 8430-tool eth0 -T off 11. Verify that the 78Q8430 is responding normally. net_rx: RPSR Classification: 0x31 4.5.2 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
78Q8430 ARM9(920T) Linux Driver Diagnostic Guide 4.5.4 UG_8430_003 IP Address Filter 1. 2. 3. 4. Enter the command: 8430-tool eth0 -r debug 0x00000000 Enter the command: 8430-tool eth0 -r debug 0x0003C000 Enter the command: 8430-tool eth0 -T on On the Linux Host, define and ping a nonexistent IP address: a. arp -s 192.168.10.98 00:01:02:03:04:05 b. ping 192.168.10.98 5.
UG_8430_003 78Q8430 ARM9(920T) Linux Driver Diagnostic Guide 5 Related Documentation The following 78Q8430 documents are available from Teridian Semiconductor Corporation: 78Q8430 Preliminary Data Sheet 78Q8430 Layout Guidelines 78Q8430 Embest Evaluation Board User Manual 78Q8430 STEM Demo Board User Manual 78Q8430 Software Driver Development Guidelines 78Q8430 Linux Driver ARM Platform User Guide 78Q8430 ARM9(920T) Linux Driver Diagnostic Guide (this document) 78Q8430 Driver Manual for ST 5100/OS-20 with
78Q8430 ARM9(920T) Linux Driver Diagnostic Guide UG_8430_003 Appendix A – Acronyms ARC BIST CAM FTP IOCTL HNR ICMP IP MAC PHY PC RMON SOC TCP TCP/IP TOE WOL 18 Address Resolution Controller Built in Self Test Content Addressable Memory File Transfer Protocol Input/Output Control Host Not Responding Internet Control Message Protocol Internet Protocol Media Access Control Physical Layer Entity Personal Computer Remote monitoring MIBS – belong to SNMP protocol family System on Chip Transport Control Protoc
UG_8430_003 78Q8430 ARM9(920T) Linux Driver Diagnostic Guide Revision History Revision Date Description 1.0 6/2/2008 First Publication 1.1 10/17/2008 Corrected the document reference in Section 3. Removed the 8430-tool Command Summary section. Rev. 1.