19633a0e9SJakub Kicinski.. SPDX-License-Identifier: GPL-2.0 29633a0e9SJakub Kicinski 39633a0e9SJakub Kicinski================================== 49633a0e9SJakub KicinskiATM (i)Chip IA Linux Driver Source 59633a0e9SJakub Kicinski================================== 69633a0e9SJakub Kicinski 7*a266ef69SRandy Dunlap READ ME FIRST 89633a0e9SJakub Kicinski 99633a0e9SJakub Kicinski-------------------------------------------------------------------------------- 109633a0e9SJakub Kicinski 119633a0e9SJakub Kicinski Read This Before You Begin! 129633a0e9SJakub Kicinski 139633a0e9SJakub Kicinski-------------------------------------------------------------------------------- 149633a0e9SJakub Kicinski 159633a0e9SJakub KicinskiDescription 169633a0e9SJakub Kicinski=========== 179633a0e9SJakub Kicinski 189633a0e9SJakub KicinskiThis is the README file for the Interphase PCI ATM (i)Chip IA Linux driver 199633a0e9SJakub Kicinskisource release. 209633a0e9SJakub Kicinski 219633a0e9SJakub KicinskiThe features and limitations of this driver are as follows: 229633a0e9SJakub Kicinski 239633a0e9SJakub Kicinski - A single VPI (VPI value of 0) is supported. 249633a0e9SJakub Kicinski - Supports 4K VCs for the server board (with 512K control memory) and 1K 259633a0e9SJakub Kicinski VCs for the client board (with 128K control memory). 269633a0e9SJakub Kicinski - UBR, ABR and CBR service categories are supported. 279633a0e9SJakub Kicinski - Only AAL5 is supported. 289633a0e9SJakub Kicinski - Supports setting of PCR on the VCs. 299633a0e9SJakub Kicinski - Multiple adapters in a system are supported. 309633a0e9SJakub Kicinski - All variants of Interphase ATM PCI (i)Chip adapter cards are supported, 319633a0e9SJakub Kicinski including x575 (OC3, control memory 128K , 512K and packet memory 128K, 329633a0e9SJakub Kicinski 512K and 1M), x525 (UTP25) and x531 (DS3 and E3). See 339633a0e9SJakub Kicinski http://www.iphase.com/ 349633a0e9SJakub Kicinski for details. 359633a0e9SJakub Kicinski - Only x86 platforms are supported. 369633a0e9SJakub Kicinski - SMP is supported. 379633a0e9SJakub Kicinski 389633a0e9SJakub Kicinski 399633a0e9SJakub KicinskiBefore You Start 409633a0e9SJakub Kicinski================ 419633a0e9SJakub Kicinski 429633a0e9SJakub Kicinski 439633a0e9SJakub KicinskiInstallation 449633a0e9SJakub Kicinski------------ 459633a0e9SJakub Kicinski 469633a0e9SJakub Kicinski1. Installing the adapters in the system 479633a0e9SJakub Kicinski 489633a0e9SJakub Kicinski To install the ATM adapters in the system, follow the steps below. 499633a0e9SJakub Kicinski 509633a0e9SJakub Kicinski a. Login as root. 519633a0e9SJakub Kicinski b. Shut down the system and power off the system. 529633a0e9SJakub Kicinski c. Install one or more ATM adapters in the system. 539633a0e9SJakub Kicinski d. Connect each adapter to a port on an ATM switch. The green 'Link' 549633a0e9SJakub Kicinski LED on the front panel of the adapter will be on if the adapter is 559633a0e9SJakub Kicinski connected to the switch properly when the system is powered up. 569633a0e9SJakub Kicinski e. Power on and boot the system. 579633a0e9SJakub Kicinski 589633a0e9SJakub Kicinski2. [ Removed ] 599633a0e9SJakub Kicinski 609633a0e9SJakub Kicinski3. Rebuild kernel with ABR support 619633a0e9SJakub Kicinski 629633a0e9SJakub Kicinski [ a. and b. removed ] 639633a0e9SJakub Kicinski 649633a0e9SJakub Kicinski c. Reconfigure the kernel, choose the Interphase ia driver through "make 659633a0e9SJakub Kicinski menuconfig" or "make xconfig". 669633a0e9SJakub Kicinski d. Rebuild the kernel, loadable modules and the atm tools. 679633a0e9SJakub Kicinski e. Install the new built kernel and modules and reboot. 689633a0e9SJakub Kicinski 699633a0e9SJakub Kicinski4. Load the adapter hardware driver (ia driver) if it is built as a module 709633a0e9SJakub Kicinski 719633a0e9SJakub Kicinski a. Login as root. 729633a0e9SJakub Kicinski b. Change directory to /lib/modules/<kernel-version>/atm. 739633a0e9SJakub Kicinski c. Run "insmod suni.o;insmod iphase.o" 749633a0e9SJakub Kicinski The yellow 'status' LED on the front panel of the adapter will blink 759633a0e9SJakub Kicinski while the driver is loaded in the system. 769633a0e9SJakub Kicinski d. To verify that the 'ia' driver is loaded successfully, run the 779633a0e9SJakub Kicinski following command:: 789633a0e9SJakub Kicinski 799633a0e9SJakub Kicinski cat /proc/atm/devices 809633a0e9SJakub Kicinski 819633a0e9SJakub Kicinski If the driver is loaded successfully, the output of the command will 829633a0e9SJakub Kicinski be similar to the following lines:: 839633a0e9SJakub Kicinski 849633a0e9SJakub Kicinski Itf Type ESI/"MAC"addr AAL(TX,err,RX,err,drop) ... 859633a0e9SJakub Kicinski 0 ia xxxxxxxxx 0 ( 0 0 0 0 0 ) 5 ( 0 0 0 0 0 ) 869633a0e9SJakub Kicinski 879633a0e9SJakub Kicinski You can also check the system log file /var/log/messages for messages 889633a0e9SJakub Kicinski related to the ATM driver. 899633a0e9SJakub Kicinski 909633a0e9SJakub Kicinski5. Ia Driver Configuration 919633a0e9SJakub Kicinski 929633a0e9SJakub Kicinski5.1 Configuration of adapter buffers 939633a0e9SJakub Kicinski The (i)Chip boards have 3 different packet RAM size variants: 128K, 512K and 949633a0e9SJakub Kicinski 1M. The RAM size decides the number of buffers and buffer size. The default 959633a0e9SJakub Kicinski size and number of buffers are set as following: 969633a0e9SJakub Kicinski 979633a0e9SJakub Kicinski ========= ======= ====== ====== ====== ====== ====== 989633a0e9SJakub Kicinski Total Rx RAM Tx RAM Rx Buf Tx Buf Rx buf Tx buf 999633a0e9SJakub Kicinski RAM size size size size size cnt cnt 1009633a0e9SJakub Kicinski ========= ======= ====== ====== ====== ====== ====== 1019633a0e9SJakub Kicinski 128K 64K 64K 10K 10K 6 6 1029633a0e9SJakub Kicinski 512K 256K 256K 10K 10K 25 25 1039633a0e9SJakub Kicinski 1M 512K 512K 10K 10K 51 51 1049633a0e9SJakub Kicinski ========= ======= ====== ====== ====== ====== ====== 1059633a0e9SJakub Kicinski 1069633a0e9SJakub Kicinski These setting should work well in most environments, but can be 1079633a0e9SJakub Kicinski changed by typing the following command:: 1089633a0e9SJakub Kicinski 1099633a0e9SJakub Kicinski insmod <IA_DIR>/ia.o IA_RX_BUF=<RX_CNT> IA_RX_BUF_SZ=<RX_SIZE> \ 1109633a0e9SJakub Kicinski IA_TX_BUF=<TX_CNT> IA_TX_BUF_SZ=<TX_SIZE> 1119633a0e9SJakub Kicinski 1129633a0e9SJakub Kicinski Where: 1139633a0e9SJakub Kicinski 1149633a0e9SJakub Kicinski - RX_CNT = number of receive buffers in the range (1-128) 1159633a0e9SJakub Kicinski - RX_SIZE = size of receive buffers in the range (48-64K) 1169633a0e9SJakub Kicinski - TX_CNT = number of transmit buffers in the range (1-128) 1179633a0e9SJakub Kicinski - TX_SIZE = size of transmit buffers in the range (48-64K) 1189633a0e9SJakub Kicinski 1199633a0e9SJakub Kicinski 1. Transmit and receive buffer size must be a multiple of 4. 1209633a0e9SJakub Kicinski 2. Care should be taken so that the memory required for the 1219633a0e9SJakub Kicinski transmit and receive buffers is less than or equal to the 1229633a0e9SJakub Kicinski total adapter packet memory. 1239633a0e9SJakub Kicinski 1249633a0e9SJakub Kicinski5.2 Turn on ia debug trace 1259633a0e9SJakub Kicinski 1269633a0e9SJakub Kicinski When the ia driver is built with the CONFIG_ATM_IA_DEBUG flag, the driver 1279633a0e9SJakub Kicinski can provide more debug trace if needed. There is a bit mask variable, 1289633a0e9SJakub Kicinski IADebugFlag, which controls the output of the traces. You can find the bit 1299633a0e9SJakub Kicinski map of the IADebugFlag in iphase.h. 1309633a0e9SJakub Kicinski The debug trace can be turn on through the insmod command line option, for 1319633a0e9SJakub Kicinski example, "insmod iphase.o IADebugFlag=0xffffffff" can turn on all the debug 1329633a0e9SJakub Kicinski traces together with loading the driver. 1339633a0e9SJakub Kicinski 1349633a0e9SJakub Kicinski6. Ia Driver Test Using ttcp_atm and PVC 1359633a0e9SJakub Kicinski 1369633a0e9SJakub Kicinski For the PVC setup, the test machines can either be connected back-to-back or 1379633a0e9SJakub Kicinski through a switch. If connected through the switch, the switch must be 1389633a0e9SJakub Kicinski configured for the PVC(s). 1399633a0e9SJakub Kicinski 1409633a0e9SJakub Kicinski a. For UBR test: 1419633a0e9SJakub Kicinski 1429633a0e9SJakub Kicinski At the test machine intended to receive data, type:: 1439633a0e9SJakub Kicinski 1449633a0e9SJakub Kicinski ttcp_atm -r -a -s 0.100 1459633a0e9SJakub Kicinski 1469633a0e9SJakub Kicinski At the other test machine, type:: 1479633a0e9SJakub Kicinski 1489633a0e9SJakub Kicinski ttcp_atm -t -a -s 0.100 -n 10000 1499633a0e9SJakub Kicinski 1509633a0e9SJakub Kicinski Run "ttcp_atm -h" to display more options of the ttcp_atm tool. 1519633a0e9SJakub Kicinski b. For ABR test: 1529633a0e9SJakub Kicinski 1539633a0e9SJakub Kicinski It is the same as the UBR testing, but with an extra command option:: 1549633a0e9SJakub Kicinski 1559633a0e9SJakub Kicinski -Pabr:max_pcr=<xxx> 1569633a0e9SJakub Kicinski 1579633a0e9SJakub Kicinski where: 1589633a0e9SJakub Kicinski 1599633a0e9SJakub Kicinski xxx = the maximum peak cell rate, from 170 - 353207. 1609633a0e9SJakub Kicinski 1619633a0e9SJakub Kicinski This option must be set on both the machines. 1629633a0e9SJakub Kicinski 1639633a0e9SJakub Kicinski c. For CBR test: 1649633a0e9SJakub Kicinski 1659633a0e9SJakub Kicinski It is the same as the UBR testing, but with an extra command option:: 1669633a0e9SJakub Kicinski 1679633a0e9SJakub Kicinski -Pcbr:max_pcr=<xxx> 1689633a0e9SJakub Kicinski 1699633a0e9SJakub Kicinski where: 1709633a0e9SJakub Kicinski 1719633a0e9SJakub Kicinski xxx = the maximum peak cell rate, from 170 - 353207. 1729633a0e9SJakub Kicinski 1739633a0e9SJakub Kicinski This option may only be set on the transmit machine. 1749633a0e9SJakub Kicinski 1759633a0e9SJakub Kicinski 1769633a0e9SJakub KicinskiOutstanding Issues 1779633a0e9SJakub Kicinski================== 1789633a0e9SJakub Kicinski 1799633a0e9SJakub Kicinski 1809633a0e9SJakub Kicinski 1819633a0e9SJakub KicinskiContact Information 1829633a0e9SJakub Kicinski------------------- 1839633a0e9SJakub Kicinski 1849633a0e9SJakub Kicinski:: 1859633a0e9SJakub Kicinski 1869633a0e9SJakub Kicinski Customer Support: 1879633a0e9SJakub Kicinski United States: Telephone: (214) 654-5555 1889633a0e9SJakub Kicinski Fax: (214) 654-5500 1899633a0e9SJakub Kicinski E-Mail: intouch@iphase.com 1909633a0e9SJakub Kicinski Europe: Telephone: 33 (0)1 41 15 44 00 1919633a0e9SJakub Kicinski Fax: 33 (0)1 41 15 12 13 1929633a0e9SJakub Kicinski World Wide Web: http://www.iphase.com 1939633a0e9SJakub Kicinski Anonymous FTP: ftp.iphase.com 194