162306a36Sopenharmony_ci.. SPDX-License-Identifier: GPL-2.0 262306a36Sopenharmony_ci 362306a36Sopenharmony_ci================================== 462306a36Sopenharmony_ciATM (i)Chip IA Linux Driver Source 562306a36Sopenharmony_ci================================== 662306a36Sopenharmony_ci 762306a36Sopenharmony_ci READ ME FIRST 862306a36Sopenharmony_ci 962306a36Sopenharmony_ci-------------------------------------------------------------------------------- 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_ci Read This Before You Begin! 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci-------------------------------------------------------------------------------- 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_ciDescription 1662306a36Sopenharmony_ci=========== 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_ciThis is the README file for the Interphase PCI ATM (i)Chip IA Linux driver 1962306a36Sopenharmony_cisource release. 2062306a36Sopenharmony_ci 2162306a36Sopenharmony_ciThe features and limitations of this driver are as follows: 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ci - A single VPI (VPI value of 0) is supported. 2462306a36Sopenharmony_ci - Supports 4K VCs for the server board (with 512K control memory) and 1K 2562306a36Sopenharmony_ci VCs for the client board (with 128K control memory). 2662306a36Sopenharmony_ci - UBR, ABR and CBR service categories are supported. 2762306a36Sopenharmony_ci - Only AAL5 is supported. 2862306a36Sopenharmony_ci - Supports setting of PCR on the VCs. 2962306a36Sopenharmony_ci - Multiple adapters in a system are supported. 3062306a36Sopenharmony_ci - All variants of Interphase ATM PCI (i)Chip adapter cards are supported, 3162306a36Sopenharmony_ci including x575 (OC3, control memory 128K , 512K and packet memory 128K, 3262306a36Sopenharmony_ci 512K and 1M), x525 (UTP25) and x531 (DS3 and E3). See 3362306a36Sopenharmony_ci http://www.iphase.com/ 3462306a36Sopenharmony_ci for details. 3562306a36Sopenharmony_ci - Only x86 platforms are supported. 3662306a36Sopenharmony_ci - SMP is supported. 3762306a36Sopenharmony_ci 3862306a36Sopenharmony_ci 3962306a36Sopenharmony_ciBefore You Start 4062306a36Sopenharmony_ci================ 4162306a36Sopenharmony_ci 4262306a36Sopenharmony_ci 4362306a36Sopenharmony_ciInstallation 4462306a36Sopenharmony_ci------------ 4562306a36Sopenharmony_ci 4662306a36Sopenharmony_ci1. Installing the adapters in the system 4762306a36Sopenharmony_ci 4862306a36Sopenharmony_ci To install the ATM adapters in the system, follow the steps below. 4962306a36Sopenharmony_ci 5062306a36Sopenharmony_ci a. Login as root. 5162306a36Sopenharmony_ci b. Shut down the system and power off the system. 5262306a36Sopenharmony_ci c. Install one or more ATM adapters in the system. 5362306a36Sopenharmony_ci d. Connect each adapter to a port on an ATM switch. The green 'Link' 5462306a36Sopenharmony_ci LED on the front panel of the adapter will be on if the adapter is 5562306a36Sopenharmony_ci connected to the switch properly when the system is powered up. 5662306a36Sopenharmony_ci e. Power on and boot the system. 5762306a36Sopenharmony_ci 5862306a36Sopenharmony_ci2. [ Removed ] 5962306a36Sopenharmony_ci 6062306a36Sopenharmony_ci3. Rebuild kernel with ABR support 6162306a36Sopenharmony_ci 6262306a36Sopenharmony_ci [ a. and b. removed ] 6362306a36Sopenharmony_ci 6462306a36Sopenharmony_ci c. Reconfigure the kernel, choose the Interphase ia driver through "make 6562306a36Sopenharmony_ci menuconfig" or "make xconfig". 6662306a36Sopenharmony_ci d. Rebuild the kernel, loadable modules and the atm tools. 6762306a36Sopenharmony_ci e. Install the new built kernel and modules and reboot. 6862306a36Sopenharmony_ci 6962306a36Sopenharmony_ci4. Load the adapter hardware driver (ia driver) if it is built as a module 7062306a36Sopenharmony_ci 7162306a36Sopenharmony_ci a. Login as root. 7262306a36Sopenharmony_ci b. Change directory to /lib/modules/<kernel-version>/atm. 7362306a36Sopenharmony_ci c. Run "insmod suni.o;insmod iphase.o" 7462306a36Sopenharmony_ci The yellow 'status' LED on the front panel of the adapter will blink 7562306a36Sopenharmony_ci while the driver is loaded in the system. 7662306a36Sopenharmony_ci d. To verify that the 'ia' driver is loaded successfully, run the 7762306a36Sopenharmony_ci following command:: 7862306a36Sopenharmony_ci 7962306a36Sopenharmony_ci cat /proc/atm/devices 8062306a36Sopenharmony_ci 8162306a36Sopenharmony_ci If the driver is loaded successfully, the output of the command will 8262306a36Sopenharmony_ci be similar to the following lines:: 8362306a36Sopenharmony_ci 8462306a36Sopenharmony_ci Itf Type ESI/"MAC"addr AAL(TX,err,RX,err,drop) ... 8562306a36Sopenharmony_ci 0 ia xxxxxxxxx 0 ( 0 0 0 0 0 ) 5 ( 0 0 0 0 0 ) 8662306a36Sopenharmony_ci 8762306a36Sopenharmony_ci You can also check the system log file /var/log/messages for messages 8862306a36Sopenharmony_ci related to the ATM driver. 8962306a36Sopenharmony_ci 9062306a36Sopenharmony_ci5. Ia Driver Configuration 9162306a36Sopenharmony_ci 9262306a36Sopenharmony_ci5.1 Configuration of adapter buffers 9362306a36Sopenharmony_ci The (i)Chip boards have 3 different packet RAM size variants: 128K, 512K and 9462306a36Sopenharmony_ci 1M. The RAM size decides the number of buffers and buffer size. The default 9562306a36Sopenharmony_ci size and number of buffers are set as following: 9662306a36Sopenharmony_ci 9762306a36Sopenharmony_ci ========= ======= ====== ====== ====== ====== ====== 9862306a36Sopenharmony_ci Total Rx RAM Tx RAM Rx Buf Tx Buf Rx buf Tx buf 9962306a36Sopenharmony_ci RAM size size size size size cnt cnt 10062306a36Sopenharmony_ci ========= ======= ====== ====== ====== ====== ====== 10162306a36Sopenharmony_ci 128K 64K 64K 10K 10K 6 6 10262306a36Sopenharmony_ci 512K 256K 256K 10K 10K 25 25 10362306a36Sopenharmony_ci 1M 512K 512K 10K 10K 51 51 10462306a36Sopenharmony_ci ========= ======= ====== ====== ====== ====== ====== 10562306a36Sopenharmony_ci 10662306a36Sopenharmony_ci These setting should work well in most environments, but can be 10762306a36Sopenharmony_ci changed by typing the following command:: 10862306a36Sopenharmony_ci 10962306a36Sopenharmony_ci insmod <IA_DIR>/ia.o IA_RX_BUF=<RX_CNT> IA_RX_BUF_SZ=<RX_SIZE> \ 11062306a36Sopenharmony_ci IA_TX_BUF=<TX_CNT> IA_TX_BUF_SZ=<TX_SIZE> 11162306a36Sopenharmony_ci 11262306a36Sopenharmony_ci Where: 11362306a36Sopenharmony_ci 11462306a36Sopenharmony_ci - RX_CNT = number of receive buffers in the range (1-128) 11562306a36Sopenharmony_ci - RX_SIZE = size of receive buffers in the range (48-64K) 11662306a36Sopenharmony_ci - TX_CNT = number of transmit buffers in the range (1-128) 11762306a36Sopenharmony_ci - TX_SIZE = size of transmit buffers in the range (48-64K) 11862306a36Sopenharmony_ci 11962306a36Sopenharmony_ci 1. Transmit and receive buffer size must be a multiple of 4. 12062306a36Sopenharmony_ci 2. Care should be taken so that the memory required for the 12162306a36Sopenharmony_ci transmit and receive buffers is less than or equal to the 12262306a36Sopenharmony_ci total adapter packet memory. 12362306a36Sopenharmony_ci 12462306a36Sopenharmony_ci5.2 Turn on ia debug trace 12562306a36Sopenharmony_ci 12662306a36Sopenharmony_ci When the ia driver is built with the CONFIG_ATM_IA_DEBUG flag, the driver 12762306a36Sopenharmony_ci can provide more debug trace if needed. There is a bit mask variable, 12862306a36Sopenharmony_ci IADebugFlag, which controls the output of the traces. You can find the bit 12962306a36Sopenharmony_ci map of the IADebugFlag in iphase.h. 13062306a36Sopenharmony_ci The debug trace can be turn on through the insmod command line option, for 13162306a36Sopenharmony_ci example, "insmod iphase.o IADebugFlag=0xffffffff" can turn on all the debug 13262306a36Sopenharmony_ci traces together with loading the driver. 13362306a36Sopenharmony_ci 13462306a36Sopenharmony_ci6. Ia Driver Test Using ttcp_atm and PVC 13562306a36Sopenharmony_ci 13662306a36Sopenharmony_ci For the PVC setup, the test machines can either be connected back-to-back or 13762306a36Sopenharmony_ci through a switch. If connected through the switch, the switch must be 13862306a36Sopenharmony_ci configured for the PVC(s). 13962306a36Sopenharmony_ci 14062306a36Sopenharmony_ci a. For UBR test: 14162306a36Sopenharmony_ci 14262306a36Sopenharmony_ci At the test machine intended to receive data, type:: 14362306a36Sopenharmony_ci 14462306a36Sopenharmony_ci ttcp_atm -r -a -s 0.100 14562306a36Sopenharmony_ci 14662306a36Sopenharmony_ci At the other test machine, type:: 14762306a36Sopenharmony_ci 14862306a36Sopenharmony_ci ttcp_atm -t -a -s 0.100 -n 10000 14962306a36Sopenharmony_ci 15062306a36Sopenharmony_ci Run "ttcp_atm -h" to display more options of the ttcp_atm tool. 15162306a36Sopenharmony_ci b. For ABR test: 15262306a36Sopenharmony_ci 15362306a36Sopenharmony_ci It is the same as the UBR testing, but with an extra command option:: 15462306a36Sopenharmony_ci 15562306a36Sopenharmony_ci -Pabr:max_pcr=<xxx> 15662306a36Sopenharmony_ci 15762306a36Sopenharmony_ci where: 15862306a36Sopenharmony_ci 15962306a36Sopenharmony_ci xxx = the maximum peak cell rate, from 170 - 353207. 16062306a36Sopenharmony_ci 16162306a36Sopenharmony_ci This option must be set on both the machines. 16262306a36Sopenharmony_ci 16362306a36Sopenharmony_ci c. For CBR test: 16462306a36Sopenharmony_ci 16562306a36Sopenharmony_ci It is the same as the UBR testing, but with an extra command option:: 16662306a36Sopenharmony_ci 16762306a36Sopenharmony_ci -Pcbr:max_pcr=<xxx> 16862306a36Sopenharmony_ci 16962306a36Sopenharmony_ci where: 17062306a36Sopenharmony_ci 17162306a36Sopenharmony_ci xxx = the maximum peak cell rate, from 170 - 353207. 17262306a36Sopenharmony_ci 17362306a36Sopenharmony_ci This option may only be set on the transmit machine. 17462306a36Sopenharmony_ci 17562306a36Sopenharmony_ci 17662306a36Sopenharmony_ciOutstanding Issues 17762306a36Sopenharmony_ci================== 17862306a36Sopenharmony_ci 17962306a36Sopenharmony_ci 18062306a36Sopenharmony_ci 18162306a36Sopenharmony_ciContact Information 18262306a36Sopenharmony_ci------------------- 18362306a36Sopenharmony_ci 18462306a36Sopenharmony_ci:: 18562306a36Sopenharmony_ci 18662306a36Sopenharmony_ci Customer Support: 18762306a36Sopenharmony_ci United States: Telephone: (214) 654-5555 18862306a36Sopenharmony_ci Fax: (214) 654-5500 18962306a36Sopenharmony_ci E-Mail: intouch@iphase.com 19062306a36Sopenharmony_ci Europe: Telephone: 33 (0)1 41 15 44 00 19162306a36Sopenharmony_ci Fax: 33 (0)1 41 15 12 13 19262306a36Sopenharmony_ci World Wide Web: http://www.iphase.com 19362306a36Sopenharmony_ci Anonymous FTP: ftp.iphase.com 194