요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
.. SPDX-License-Identifier: GPL-2.0
==================================
ATM (i)Chip IA Linux Driver Source
==================================
READ ME FIRST
--------------------------------------------------------------------------------
Read This Before You Begin!
--------------------------------------------------------------------------------
Description
===========
This is the README file for the Interphase PCI ATM (i)Chip IA Linux driver
source release.
The features and limitations of this driver are as follows:
- A single VPI (VPI value of 0) is supported.
- Supports 4K VCs for the server board (with 512K control memory) and 1K
VCs for the client board (with 128K control memory).
- UBR, ABR and CBR service categories are supported.
- Only AAL5 is supported.
- Supports setting of PCR on the VCs.
- Multiple adapters in a system are supported.
- All variants of Interphase ATM PCI (i)Chip adapter cards are supported,
including x575 (OC3, control memory 128K , 512K and packet memory 128K,
512K and 1M), x525 (UTP25) and x531 (DS3 and E3). See
http://www.iphase.com/
for details.
- Only x86 platforms are supported.
- SMP is supported.
Before You Start
================
Installation
------------
1. Installing the adapters in the system
To install the ATM adapters in the system, follow the steps below.
a. Login as root.
b. Shut down the system and power off the system.
c. Install one or more ATM adapters in the system.
d. Connect each adapter to a port on an ATM switch. The green 'Link'
LED on the front panel of the adapter will be on if the adapter is
connected to the switch properly when the system is powered up.
e. Power on and boot the system.
2. [ Removed ]
3. Rebuild kernel with ABR support
[ a. and b. removed ]
c. Reconfigure the kernel, choose the Interphase ia driver through "make
menuconfig" or "make xconfig".
d. Rebuild the kernel, loadable modules and the atm tools.
e. Install the new built kernel and modules and reboot.
4. Load the adapter hardware driver (ia driver) if it is built as a module
a. Login as root.
b. Change directory to /lib/modules/<kernel-version>/atm.
c. Run "insmod suni.o;insmod iphase.o"
The yellow 'status' LED on the front panel of the adapter will blink
while the driver is loaded in the system.
d. To verify that the 'ia' driver is loaded successfully, run the
following command::
cat /proc/atm/devices
If the driver is loaded successfully, the output of the command will
be similar to the following lines::
Itf Type ESI/"MAC"addr AAL(TX,err,RX,err,drop) ...
0 ia xxxxxxxxx 0 ( 0 0 0 0 0 ) 5 ( 0 0 0 0 0 )
You can also check the system log file /var/log/messages for messages
related to the ATM driver.
5. Ia Driver Configuration
5.1 Configuration of adapter buffers
The (i)Chip boards have 3 different packet RAM size variants: 128K, 512K and
1M. The RAM size decides the number of buffers and buffer size. The default
size and number of buffers are set as following:
========= ======= ====== ====== ====== ====== ======
Total Rx RAM Tx RAM Rx Buf Tx Buf Rx buf Tx buf
RAM size size size size size cnt cnt
========= ======= ====== ====== ====== ====== ======
128K 64K 64K 10K 10K 6 6
512K 256K 256K 10K 10K 25 25
1M 512K 512K 10K 10K 51 51
========= ======= ====== ====== ====== ====== ======
These setting should work well in most environments, but can be
changed by typing the following command::
insmod <IA_DIR>/ia.o IA_RX_BUF=<RX_CNT> IA_RX_BUF_SZ=<RX_SIZE> \
IA_TX_BUF=<TX_CNT> IA_TX_BUF_SZ=<TX_SIZE>
Where:
- RX_CNT = number of receive buffers in the range (1-128)
- RX_SIZE = size of receive buffers in the range (48-64K)
- TX_CNT = number of transmit buffers in the range (1-128)
- TX_SIZE = size of transmit buffers in the range (48-64K)
1. Transmit and receive buffer size must be a multiple of 4.
2. Care should be taken so that the memory required for the
transmit and receive buffers is less than or equal to the
total adapter packet memory.
5.2 Turn on ia debug trace
When the ia driver is built with the CONFIG_ATM_IA_DEBUG flag, the driver
can provide more debug trace if needed. There is a bit mask variable,
IADebugFlag, which controls the output of the traces. You can find the bit
map of the IADebugFlag in iphase.h.
The debug trace can be turn on through the insmod command line option, for
example, "insmod iphase.o IADebugFlag=0xffffffff" can turn on all the debug
traces together with loading the driver.
6. Ia Driver Test Using ttcp_atm and PVC
For the PVC setup, the test machines can either be connected back-to-back or
through a switch. If connected through the switch, the switch must be
configured for the PVC(s).
a. For UBR test:
At the test machine intended to receive data, type::
ttcp_atm -r -a -s 0.100
At the other test machine, type::
ttcp_atm -t -a -s 0.100 -n 10000
Run "ttcp_atm -h" to display more options of the ttcp_atm tool.
b. For ABR test:
It is the same as the UBR testing, but with an extra command option::
-Pabr:max_pcr=<xxx>
where:
xxx = the maximum peak cell rate, from 170 - 353207.
This option must be set on both the machines.
c. For CBR test:
It is the same as the UBR testing, but with an extra command option::
-Pcbr:max_pcr=<xxx>
where:
xxx = the maximum peak cell rate, from 170 - 353207.
This option may only be set on the transmit machine.
Outstanding Issues
==================
Contact Information
-------------------
::
Customer Support:
United States: Telephone: (214) 654-5555
Fax: (214) 654-5500
E-Mail: [email protected]
Europe: Telephone: 33 (0)1 41 15 44 00
Fax: 33 (0)1 41 15 12 13
World Wide Web: http://www.iphase.com
Anonymous FTP: ftp.iphase.com
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
Interphase (i)Chip IA driver 기능과 제한
1-39ATM (i)Chip IA Linux Driver Source
먼저 읽으십시오
시작하기 전에 이 내용을 읽으십시오.
설명
이 문서는 Interphase PCI ATM (i)Chip IA Linux driver source release의 README입니다.
Driver의 기능과 제한 사항은 다음과 같습니다.
- 단일 VPI만 지원하며 VPI 값은 0입니다.
- 512K control memory가 있는 server board에서는 4K VC, 128K control memory가 있는 client board에서는 1K VC를 지원합니다.
- UBR, ABR, CBR service category를 지원합니다.
- AAL5만 지원합니다.
- VC별 PCR 설정을 지원합니다.
- 한 system의 여러 adapter를 지원합니다.
- Interphase ATM PCI (i)Chip adapter card의 모든 variant를 지원합니다. `x575`는 OC3와 128K·512K control memory 및 128K·512K·1M packet memory, `x525`는 UTP25, `x531`은 DS3·E3입니다. 자세한 내용은 http://www.iphase.com/ 을 참고하십시오.
- x86 platform만 지원합니다.
- SMP를 지원합니다.
.. SPDX-License-Identifier: GPL-2.0
==================================
ATM (i)Chip IA Linux Driver Source
==================================
READ ME FIRST
--------------------------------------------------------------------------------
Read This Before You Begin!
--------------------------------------------------------------------------------
Description
===========
This is the README file for the Interphase PCI ATM (i)Chip IA Linux driver
source release.
The features and limitations of this driver are as follows:
- A single VPI (VPI value of 0) is supported.
- Supports 4K VCs for the server board (with 512K control memory) and 1K
VCs for the client board (with 128K control memory).
- UBR, ABR and CBR service categories are supported.
- Only AAL5 is supported.
- Supports setting of PCR on the VCs.
- Multiple adapters in a system are supported.
- All variants of Interphase ATM PCI (i)Chip adapter cards are supported,
including x575 (OC3, control memory 128K , 512K and packet memory 128K,
512K and 1M), x525 (UTP25) and x531 (DS3 and E3). See
http://www.iphase.com/
for details.
- Only x86 platforms are supported.
- SMP is supported.
Before You Start
Adapter 설치, kernel rebuild와 module load
40-100시작하기 전에
설치
1. System에 adapter 설치
ATM adapter를 system에 설치하려면 다음 절차를 따릅니다.
- a. `root`로 login합니다.
- b. System을 shutdown하고 전원을 끕니다.
- c. ATM adapter를 하나 이상 system에 설치합니다.
- d. 각 adapter를 ATM switch port에 연결합니다. System을 켰을 때 adapter front panel의 녹색 `Link` LED가 켜지면 switch에 올바르게 연결된 것입니다.
- e. System 전원을 켜고 boot합니다.
2. [제거됨]
3. ABR 지원을 포함해 kernel rebuild
[a와 b는 제거됨]
- c. Kernel을 다시 configure하고 `make menuconfig` 또는 `make xconfig`에서 Interphase `ia` driver를 선택합니다.
- d. Kernel, loadable module과 ATM tool을 rebuild합니다.
- e. 새로 build한 kernel과 module을 install하고 reboot합니다.
4. Module로 build했다면 adapter hardware driver(`ia` driver) load
- a. `root`로 login합니다.
- b. `/lib/modules/<kernel-version>/atm` directory로 이동합니다.
- c. `insmod suni.o;insmod iphase.o`를 실행합니다. Driver가 system에 load되는 동안 adapter front panel의 노란색 `status` LED가 깜박입니다.
d. `ia` driver가 성공적으로 load되었는지 확인하려면 다음 command를 실행합니다.
cat /proc/atm/devices
성공했다면 출력은 다음과 비슷합니다.
Itf Type ESI/"MAC"addr AAL(TX,err,RX,err,drop) ...
0 ia xxxxxxxxx 0 ( 0 0 0 0 0 ) 5 ( 0 0 0 0 0 )
ATM driver 관련 message는 system log file `/var/log/messages`에서도 확인할 수 있습니다.
================
Installation
------------
1. Installing the adapters in the system
To install the ATM adapters in the system, follow the steps below.
a. Login as root.
b. Shut down the system and power off the system.
c. Install one or more ATM adapters in the system.
d. Connect each adapter to a port on an ATM switch. The green 'Link'
LED on the front panel of the adapter will be on if the adapter is
connected to the switch properly when the system is powered up.
e. Power on and boot the system.
2. [ Removed ]
3. Rebuild kernel with ABR support
[ a. and b. removed ]
c. Reconfigure the kernel, choose the Interphase ia driver through "make
menuconfig" or "make xconfig".
d. Rebuild the kernel, loadable modules and the atm tools.
e. Install the new built kernel and modules and reboot.
4. Load the adapter hardware driver (ia driver) if it is built as a module
a. Login as root.
b. Change directory to /lib/modules/<kernel-version>/atm.
c. Run "insmod suni.o;insmod iphase.o"
The yellow 'status' LED on the front panel of the adapter will blink
while the driver is loaded in the system.
d. To verify that the 'ia' driver is loaded successfully, run the
following command::
cat /proc/atm/devices
If the driver is loaded successfully, the output of the command will
be similar to the following lines::
Itf Type ESI/"MAC"addr AAL(TX,err,RX,err,drop) ...
0 ia xxxxxxxxx 0 ( 0 0 0 0 0 ) 5 ( 0 0 0 0 0 )
You can also check the system log file /var/log/messages for messages
related to the ATM driver.
5. Ia Driver Configuration
5.1 Configuration of adapter buffers
The (i)Chip boards have 3 different packet RAM size variants: 128K, 512K and
1M. The RAM size decides the number of buffers and buffer size. The default
size and number of buffers are set as following:
========= ======= ====== ====== ====== ====== ======
Total Rx RAM Tx RAM Rx Buf Tx Buf Rx buf Tx buf
RAM size size size size size cnt cnt
========= ======= ====== ====== ====== ====== ======
Packet RAM과 RX·TX buffer configuration
101-1375. IA driver configuration
5.1 Adapter buffer configuration
(i)Chip board의 packet RAM variant는 128K, 512K, 1M 세 가지입니다. RAM 크기에 따라 buffer 수와 크기가 결정됩니다. 기본 buffer 크기와 수는 다음과 같습니다.
원문 표의 RAM 분할과 buffer count를 같은 값으로 구조화했습니다.
이 설정은 대부분의 환경에서 잘 작동해야 하지만 다음 command로 변경할 수 있습니다.
insmod <IA_DIR>/ia.o IA_RX_BUF=<RX_CNT> IA_RX_BUF_SZ=<RX_SIZE> \
IA_TX_BUF=<TX_CNT> IA_TX_BUF_SZ=<TX_SIZE>
각 값의 의미와 범위는 다음과 같습니다.
- `RX_CNT`: receive buffer 수, 범위 1-128
- `RX_SIZE`: receive buffer 크기, 범위 48-64K
- `TX_CNT`: transmit buffer 수, 범위 1-128
- `TX_SIZE`: transmit buffer 크기, 범위 48-64K
- Transmit·receive buffer 크기는 4의 배수여야 합니다.
- Transmit·receive buffer에 필요한 memory 합이 adapter의 전체 packet memory보다 작거나 같도록 주의해야 합니다.
128K 64K 64K 10K 10K 6 6
512K 256K 256K 10K 10K 25 25
1M 512K 512K 10K 10K 51 51
========= ======= ====== ====== ====== ====== ======
These setting should work well in most environments, but can be
changed by typing the following command::
insmod <IA_DIR>/ia.o IA_RX_BUF=<RX_CNT> IA_RX_BUF_SZ=<RX_SIZE> \
IA_TX_BUF=<TX_CNT> IA_TX_BUF_SZ=<TX_SIZE>
Where:
- RX_CNT = number of receive buffers in the range (1-128)
- RX_SIZE = size of receive buffers in the range (48-64K)
- TX_CNT = number of transmit buffers in the range (1-128)
- TX_SIZE = size of transmit buffers in the range (48-64K)
1. Transmit and receive buffer size must be a multiple of 4.
2. Care should be taken so that the memory required for the
transmit and receive buffers is less than or equal to the
total adapter packet memory.
5.2 Turn on ia debug trace
When the ia driver is built with the CONFIG_ATM_IA_DEBUG flag, the driver
can provide more debug trace if needed. There is a bit mask variable,
IADebugFlag, which controls the output of the traces. You can find the bit
map of the IADebugFlag in iphase.h.
The debug trace can be turn on through the insmod command line option, for
example, "insmod iphase.o IADebugFlag=0xffffffff" can turn on all the debug
traces together with loading the driver.
6. Ia Driver Test Using ttcp_atm and PVC
For the PVC setup, the test machines can either be connected back-to-back or
through a switch. If connected through the switch, the switch must be
IADebugFlag trace 활성화
138-1505.2 IA debug trace 켜기
`ia` driver를 `CONFIG_ATM_IA_DEBUG` flag와 함께 build하면 필요할 때 더 많은 debug trace를 제공할 수 있습니다. `IADebugFlag` bit mask variable이 trace 출력을 제어하며 bit map은 `iphase.h`에서 확인할 수 있습니다.
Debug trace는 `insmod` command line option으로 활성화할 수 있습니다. 예를 들어 `insmod iphase.o IADebugFlag=0xffffffff`는 driver를 load하면서 모든 debug trace를 켭니다.
configured for the PVC(s).
a. For UBR test:
At the test machine intended to receive data, type::
ttcp_atm -r -a -s 0.100
At the other test machine, type::
ttcp_atm -t -a -s 0.100 -n 10000
Run "ttcp_atm -h" to display more options of the ttcp_atm tool.
ttcp_atm과 PVC를 이용한 UBR·ABR·CBR 시험
151-1796. `ttcp_atm`과 PVC를 사용한 IA driver 시험
PVC를 구성할 때 test machine은 back-to-back으로 직접 연결하거나 switch를 거쳐 연결할 수 있습니다. Switch를 사용한다면 해당 PVC를 switch에도 configure해야 합니다.
a. UBR 시험
Data를 받을 test machine에서 다음을 실행합니다.
ttcp_atm -r -a -s 0.100
다른 test machine에서는 다음을 실행합니다.
ttcp_atm -t -a -s 0.100 -n 10000
`ttcp_atm -h`를 실행하면 `ttcp_atm` tool의 더 많은 option을 볼 수 있습니다.
b. ABR 시험
UBR 시험과 같지만 다음 command option을 추가합니다.
-Pabr:max_pcr=<xxx>
`xxx`는 170-353207 범위의 maximum peak cell rate입니다. 이 option은 두 machine 모두에 설정해야 합니다.
c. CBR 시험
UBR 시험과 같지만 다음 command option을 추가합니다.
-Pcbr:max_pcr=<xxx>
`xxx`는 170-353207 범위의 maximum peak cell rate입니다. 이 option은 transmit machine에만 설정해도 됩니다.
b. For ABR test:
It is the same as the UBR testing, but with an extra command option::
-Pabr:max_pcr=<xxx>
where:
xxx = the maximum peak cell rate, from 170 - 353207.
This option must be set on both the machines.
c. For CBR test:
It is the same as the UBR testing, but with an extra command option::
-Pcbr:max_pcr=<xxx>
where:
xxx = the maximum peak cell rate, from 170 - 353207.
This option may only be set on the transmit machine.
Outstanding Issues
==================
미해결 문제와 연락처
180-193Outstanding Issues
Contact Information
Customer Support
- United States: Telephone `(214) 654-5555`, Fax `(214) 654-5500`, E-Mail `[email protected]`
- Europe: Telephone `33 (0)1 41 15 44 00`, Fax `33 (0)1 41 15 12 13`
- World Wide Web: http://www.iphase.com
- Anonymous FTP: `ftp.iphase.com`
Contact Information
-------------------
::
Customer Support:
United States: Telephone: (214) 654-5555
Fax: (214) 654-5500
E-Mail: [email protected]
Europe: Telephone: 33 (0)1 41 15 44 00
Fax: 33 (0)1 41 15 12 13
World Wide Web: http://www.iphase.com
Anonymous FTP: ftp.iphase.com
요약·해설
iphase.rst:1-193Interphase IA driver는 x86·SMP system에서 여러 (i)Chip PCI ATM adapter를 지원합니다. 운영 절차는 hardware 설치, ABR 지원을 포함한 kernel 구성, `suni.o`와 `iphase.o` load, `/proc/atm/devices` 검증 순서입니다. Packet RAM별 기본 RX·TX buffer를 필요에 따라 조정하고 `ttcp_atm`으로 UBR·ABR·CBR PVC를 시험할 수 있습니다.
지원 protocol, scale과 platform 제한을 정리합니다.
Card family별 line interface와 memory variant입니다.
전원을 끈 상태에서 설치하고 switch link LED로 물리 연결을 확인합니다.
Module load 중 status LED와 kernel interface를 함께 확인합니다.
Packet RAM이 커질수록 10K buffer 수가 증가합니다.
Module parameter를 적용하기 전 count, alignment와 총 memory를 확인합니다.
Build-time flag와 runtime bit mask를 모두 만족해야 trace가 출력됩니다.
UBR를 기준으로 ABR·CBR에 peak cell rate option을 추가합니다.
두 시험 host는 직접 연결하거나 PVC가 구성된 switch를 사용할 수 있습니다.