18c2ecf20Sopenharmony_ci.. SPDX-License-Identifier: GPL-2.0
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ci==================================
48c2ecf20Sopenharmony_ciATM (i)Chip IA Linux Driver Source
58c2ecf20Sopenharmony_ci==================================
68c2ecf20Sopenharmony_ci
78c2ecf20Sopenharmony_ci			      READ ME FISRT
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_ci--------------------------------------------------------------------------------
108c2ecf20Sopenharmony_ci
118c2ecf20Sopenharmony_ci		     Read This Before You Begin!
128c2ecf20Sopenharmony_ci
138c2ecf20Sopenharmony_ci--------------------------------------------------------------------------------
148c2ecf20Sopenharmony_ci
158c2ecf20Sopenharmony_ciDescription
168c2ecf20Sopenharmony_ci===========
178c2ecf20Sopenharmony_ci
188c2ecf20Sopenharmony_ciThis is the README file for the Interphase PCI ATM (i)Chip IA Linux driver
198c2ecf20Sopenharmony_cisource release.
208c2ecf20Sopenharmony_ci
218c2ecf20Sopenharmony_ciThe features and limitations of this driver are as follows:
228c2ecf20Sopenharmony_ci
238c2ecf20Sopenharmony_ci    - A single VPI (VPI value of 0) is supported.
248c2ecf20Sopenharmony_ci    - Supports 4K VCs for the server board (with 512K control memory) and 1K
258c2ecf20Sopenharmony_ci      VCs for the client board (with 128K control memory).
268c2ecf20Sopenharmony_ci    - UBR, ABR and CBR service categories are supported.
278c2ecf20Sopenharmony_ci    - Only AAL5 is supported.
288c2ecf20Sopenharmony_ci    - Supports setting of PCR on the VCs.
298c2ecf20Sopenharmony_ci    - Multiple adapters in a system are supported.
308c2ecf20Sopenharmony_ci    - All variants of Interphase ATM PCI (i)Chip adapter cards are supported,
318c2ecf20Sopenharmony_ci      including x575 (OC3, control memory 128K , 512K and packet memory 128K,
328c2ecf20Sopenharmony_ci      512K and 1M), x525 (UTP25) and x531 (DS3 and E3). See
338c2ecf20Sopenharmony_ci      http://www.iphase.com/
348c2ecf20Sopenharmony_ci      for details.
358c2ecf20Sopenharmony_ci    - Only x86 platforms are supported.
368c2ecf20Sopenharmony_ci    - SMP is supported.
378c2ecf20Sopenharmony_ci
388c2ecf20Sopenharmony_ci
398c2ecf20Sopenharmony_ciBefore You Start
408c2ecf20Sopenharmony_ci================
418c2ecf20Sopenharmony_ci
428c2ecf20Sopenharmony_ci
438c2ecf20Sopenharmony_ciInstallation
448c2ecf20Sopenharmony_ci------------
458c2ecf20Sopenharmony_ci
468c2ecf20Sopenharmony_ci1. Installing the adapters in the system
478c2ecf20Sopenharmony_ci
488c2ecf20Sopenharmony_ci   To install the ATM adapters in the system, follow the steps below.
498c2ecf20Sopenharmony_ci
508c2ecf20Sopenharmony_ci       a. Login as root.
518c2ecf20Sopenharmony_ci       b. Shut down the system and power off the system.
528c2ecf20Sopenharmony_ci       c. Install one or more ATM adapters in the system.
538c2ecf20Sopenharmony_ci       d. Connect each adapter to a port on an ATM switch. The green 'Link'
548c2ecf20Sopenharmony_ci	  LED on the front panel of the adapter will be on if the adapter is
558c2ecf20Sopenharmony_ci	  connected to the switch properly when the system is powered up.
568c2ecf20Sopenharmony_ci       e. Power on and boot the system.
578c2ecf20Sopenharmony_ci
588c2ecf20Sopenharmony_ci2. [ Removed ]
598c2ecf20Sopenharmony_ci
608c2ecf20Sopenharmony_ci3. Rebuild kernel with ABR support
618c2ecf20Sopenharmony_ci
628c2ecf20Sopenharmony_ci   [ a. and b. removed ]
638c2ecf20Sopenharmony_ci
648c2ecf20Sopenharmony_ci    c. Reconfigure the kernel, choose the Interphase ia driver through "make
658c2ecf20Sopenharmony_ci       menuconfig" or "make xconfig".
668c2ecf20Sopenharmony_ci    d. Rebuild the kernel, loadable modules and the atm tools.
678c2ecf20Sopenharmony_ci    e. Install the new built kernel and modules and reboot.
688c2ecf20Sopenharmony_ci
698c2ecf20Sopenharmony_ci4. Load the adapter hardware driver (ia driver) if it is built as a module
708c2ecf20Sopenharmony_ci
718c2ecf20Sopenharmony_ci       a. Login as root.
728c2ecf20Sopenharmony_ci       b. Change directory to /lib/modules/<kernel-version>/atm.
738c2ecf20Sopenharmony_ci       c. Run "insmod suni.o;insmod iphase.o"
748c2ecf20Sopenharmony_ci	  The yellow 'status' LED on the front panel of the adapter will blink
758c2ecf20Sopenharmony_ci	  while the driver is loaded in the system.
768c2ecf20Sopenharmony_ci       d. To verify that the 'ia' driver is loaded successfully, run the
778c2ecf20Sopenharmony_ci	  following command::
788c2ecf20Sopenharmony_ci
798c2ecf20Sopenharmony_ci	      cat /proc/atm/devices
808c2ecf20Sopenharmony_ci
818c2ecf20Sopenharmony_ci	  If the driver is loaded successfully, the output of the command will
828c2ecf20Sopenharmony_ci	  be similar to the following lines::
838c2ecf20Sopenharmony_ci
848c2ecf20Sopenharmony_ci	      Itf Type    ESI/"MAC"addr AAL(TX,err,RX,err,drop) ...
858c2ecf20Sopenharmony_ci	      0   ia      xxxxxxxxx  0 ( 0 0 0 0 0 )  5 ( 0 0 0 0 0 )
868c2ecf20Sopenharmony_ci
878c2ecf20Sopenharmony_ci	  You can also check the system log file /var/log/messages for messages
888c2ecf20Sopenharmony_ci	  related to the ATM driver.
898c2ecf20Sopenharmony_ci
908c2ecf20Sopenharmony_ci5. Ia Driver Configuration
918c2ecf20Sopenharmony_ci
928c2ecf20Sopenharmony_ci5.1 Configuration of adapter buffers
938c2ecf20Sopenharmony_ci    The (i)Chip boards have 3 different packet RAM size variants: 128K, 512K and
948c2ecf20Sopenharmony_ci    1M. The RAM size decides the number of buffers and buffer size. The default
958c2ecf20Sopenharmony_ci    size and number of buffers are set as following:
968c2ecf20Sopenharmony_ci
978c2ecf20Sopenharmony_ci	=========  =======  ======   ======   ======   ======   ======
988c2ecf20Sopenharmony_ci	 Total     Rx RAM   Tx RAM   Rx Buf   Tx Buf   Rx buf   Tx buf
998c2ecf20Sopenharmony_ci	 RAM size  size     size     size     size     cnt      cnt
1008c2ecf20Sopenharmony_ci	=========  =======  ======   ======   ======   ======   ======
1018c2ecf20Sopenharmony_ci	   128K      64K      64K      10K      10K       6        6
1028c2ecf20Sopenharmony_ci	   512K     256K     256K      10K      10K      25       25
1038c2ecf20Sopenharmony_ci	     1M     512K     512K      10K      10K      51       51
1048c2ecf20Sopenharmony_ci	=========  =======  ======   ======   ======   ======   ======
1058c2ecf20Sopenharmony_ci
1068c2ecf20Sopenharmony_ci       These setting should work well in most environments, but can be
1078c2ecf20Sopenharmony_ci       changed by typing the following command::
1088c2ecf20Sopenharmony_ci
1098c2ecf20Sopenharmony_ci	   insmod <IA_DIR>/ia.o IA_RX_BUF=<RX_CNT> IA_RX_BUF_SZ=<RX_SIZE> \
1108c2ecf20Sopenharmony_ci		   IA_TX_BUF=<TX_CNT> IA_TX_BUF_SZ=<TX_SIZE>
1118c2ecf20Sopenharmony_ci
1128c2ecf20Sopenharmony_ci       Where:
1138c2ecf20Sopenharmony_ci
1148c2ecf20Sopenharmony_ci	    - RX_CNT = number of receive buffers in the range (1-128)
1158c2ecf20Sopenharmony_ci	    - RX_SIZE = size of receive buffers in the range (48-64K)
1168c2ecf20Sopenharmony_ci	    - TX_CNT = number of transmit buffers in the range (1-128)
1178c2ecf20Sopenharmony_ci	    - TX_SIZE = size of transmit buffers in the range (48-64K)
1188c2ecf20Sopenharmony_ci
1198c2ecf20Sopenharmony_ci	    1. Transmit and receive buffer size must be a multiple of 4.
1208c2ecf20Sopenharmony_ci	    2. Care should be taken so that the memory required for the
1218c2ecf20Sopenharmony_ci	       transmit and receive buffers is less than or equal to the
1228c2ecf20Sopenharmony_ci	       total adapter packet memory.
1238c2ecf20Sopenharmony_ci
1248c2ecf20Sopenharmony_ci5.2 Turn on ia debug trace
1258c2ecf20Sopenharmony_ci
1268c2ecf20Sopenharmony_ci    When the ia driver is built with the CONFIG_ATM_IA_DEBUG flag, the driver
1278c2ecf20Sopenharmony_ci    can provide more debug trace if needed. There is a bit mask variable,
1288c2ecf20Sopenharmony_ci    IADebugFlag, which controls the output of the traces. You can find the bit
1298c2ecf20Sopenharmony_ci    map of the IADebugFlag in iphase.h.
1308c2ecf20Sopenharmony_ci    The debug trace can be turn on through the insmod command line option, for
1318c2ecf20Sopenharmony_ci    example, "insmod iphase.o IADebugFlag=0xffffffff" can turn on all the debug
1328c2ecf20Sopenharmony_ci    traces together with loading the driver.
1338c2ecf20Sopenharmony_ci
1348c2ecf20Sopenharmony_ci6. Ia Driver Test Using ttcp_atm and PVC
1358c2ecf20Sopenharmony_ci
1368c2ecf20Sopenharmony_ci   For the PVC setup, the test machines can either be connected back-to-back or
1378c2ecf20Sopenharmony_ci   through a switch. If connected through the switch, the switch must be
1388c2ecf20Sopenharmony_ci   configured for the PVC(s).
1398c2ecf20Sopenharmony_ci
1408c2ecf20Sopenharmony_ci   a. For UBR test:
1418c2ecf20Sopenharmony_ci
1428c2ecf20Sopenharmony_ci      At the test machine intended to receive data, type::
1438c2ecf20Sopenharmony_ci
1448c2ecf20Sopenharmony_ci	 ttcp_atm -r -a -s 0.100
1458c2ecf20Sopenharmony_ci
1468c2ecf20Sopenharmony_ci      At the other test machine, type::
1478c2ecf20Sopenharmony_ci
1488c2ecf20Sopenharmony_ci	 ttcp_atm -t -a -s 0.100 -n 10000
1498c2ecf20Sopenharmony_ci
1508c2ecf20Sopenharmony_ci      Run "ttcp_atm -h" to display more options of the ttcp_atm tool.
1518c2ecf20Sopenharmony_ci   b. For ABR test:
1528c2ecf20Sopenharmony_ci
1538c2ecf20Sopenharmony_ci      It is the same as the UBR testing, but with an extra command option::
1548c2ecf20Sopenharmony_ci
1558c2ecf20Sopenharmony_ci	 -Pabr:max_pcr=<xxx>
1568c2ecf20Sopenharmony_ci
1578c2ecf20Sopenharmony_ci      where:
1588c2ecf20Sopenharmony_ci
1598c2ecf20Sopenharmony_ci	     xxx = the maximum peak cell rate, from 170 - 353207.
1608c2ecf20Sopenharmony_ci
1618c2ecf20Sopenharmony_ci      This option must be set on both the machines.
1628c2ecf20Sopenharmony_ci
1638c2ecf20Sopenharmony_ci   c. For CBR test:
1648c2ecf20Sopenharmony_ci
1658c2ecf20Sopenharmony_ci      It is the same as the UBR testing, but with an extra command option::
1668c2ecf20Sopenharmony_ci
1678c2ecf20Sopenharmony_ci	 -Pcbr:max_pcr=<xxx>
1688c2ecf20Sopenharmony_ci
1698c2ecf20Sopenharmony_ci      where:
1708c2ecf20Sopenharmony_ci
1718c2ecf20Sopenharmony_ci	     xxx = the maximum peak cell rate, from 170 - 353207.
1728c2ecf20Sopenharmony_ci
1738c2ecf20Sopenharmony_ci      This option may only be set on the transmit machine.
1748c2ecf20Sopenharmony_ci
1758c2ecf20Sopenharmony_ci
1768c2ecf20Sopenharmony_ciOutstanding Issues
1778c2ecf20Sopenharmony_ci==================
1788c2ecf20Sopenharmony_ci
1798c2ecf20Sopenharmony_ci
1808c2ecf20Sopenharmony_ci
1818c2ecf20Sopenharmony_ciContact Information
1828c2ecf20Sopenharmony_ci-------------------
1838c2ecf20Sopenharmony_ci
1848c2ecf20Sopenharmony_ci::
1858c2ecf20Sopenharmony_ci
1868c2ecf20Sopenharmony_ci     Customer Support:
1878c2ecf20Sopenharmony_ci	 United States:	Telephone:	(214) 654-5555
1888c2ecf20Sopenharmony_ci			Fax:		(214) 654-5500
1898c2ecf20Sopenharmony_ci			E-Mail:		intouch@iphase.com
1908c2ecf20Sopenharmony_ci	 Europe:	Telephone:	33 (0)1 41 15 44 00
1918c2ecf20Sopenharmony_ci			Fax:		33 (0)1 41 15 12 13
1928c2ecf20Sopenharmony_ci     World Wide Web:	http://www.iphase.com
1938c2ecf20Sopenharmony_ci     Anonymous FTP:	ftp.iphase.com
194