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