요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
.. SPDX-License-Identifier: GPL-2.0
=================================
Qlogic FASXXX Family Driver Notes
=================================
This driver supports the Qlogic FASXXX family of chips. This driver
only works with the ISA, VLB, and PCMCIA versions of the Qlogic
FastSCSI! cards as well as any other card based on the FASXX chip
(including the Control Concepts SCSI/IDE/SIO/PIO/FDC cards).
This driver does NOT support the PCI version. Support for these PCI
Qlogic boards:
* IQ-PCI
* IQ-PCI-10
* IQ-PCI-D
is provided by the qla1280 driver.
Nor does it support the PCI-Basic, which is supported by the
'am53c974' driver.
PCMCIA Support
==============
This currently only works if the card is enabled first from DOS. This
means you will have to load your socket and card services, and
QL41DOS.SYS and QL40ENBL.SYS. These are a minimum, but loading the
rest of the modules won't interfere with the operation. The next
thing to do is load the kernel without resetting the hardware, which
can be a simple ctrl-alt-delete with a boot floppy, or by using
loadlin with the kernel image accessible from DOS. If you are using
the Linux PCMCIA driver, you will have to adjust it or otherwise stop
it from configuring the card.
I am working with the PCMCIA group to make it more flexible, but that
may take a while.
All Cards
=========
The top of the qlogic.c file has a number of defines that controls
configuration. As shipped, it provides a balance between speed and
function. If there are any problems, try setting SLOW_CABLE to 1, and
then try changing USE_IRQ and TURBO_PDMA to zero. If you are familiar
with SCSI, there are other settings which can tune the bus.
It may be a good idea to enable RESET_AT_START, especially if the
devices may not have been just powered up, or if you are restarting
after a crash, since they may be busy trying to complete the last
command or something. It comes up faster if this is set to zero, and
if you have reliable hardware and connections it may be more useful to
not reset things.
Some Troubleshooting Tips
=========================
Make sure it works properly under DOS. You should also do an initial FDISK
on a new drive if you want partitions.
Don't enable all the speedups first. If anything is wrong, they will make
any problem worse.
Important
=========
The best way to test if your cables, termination, etc. are good is to
copy a very big file (e.g. a doublespace container file, or a very
large executable or archive). It should be at least 5 megabytes, but
you can do multiple tests on smaller files. Then do a COMP to verify
that the file copied properly. (Turn off all caching when doing these
tests, otherwise you will test your RAM and not the files). Then do
10 COMPs, comparing the same file on the SCSI hard drive, i.e. "COMP
realbig.doc realbig.doc". Then do it after the computer gets warm.
I noticed my system which seems to work 100% would fail this test if
the computer was left on for a few hours. It was worse with longer
cables, and more devices on the SCSI bus. What seems to happen is
that it gets a false ACK causing an extra byte to be inserted into the
stream (and this is not detected). This can be caused by bad
termination (the ACK can be reflected), or by noise when the chips
work less well because of the heat, or when cables get too long for
the speed.
Remember, if it doesn't work under DOS, it probably won't work under
Linux.
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
지원되는 카드와 제외되는 PCI 제품
1-23이 드라이버는 QLogic FASXXX 칩 계열과 QLogic FastSCSI!의 ISA, VLB, PCMCIA 버전을 지원한다. Control Concepts SCSI/IDE/SIO/PIO/FDC 카드처럼 FASXX 칩을 기반으로 한 다른 카드도 대상이다.
PCI 버전은 지원하지 않는다. `IQ-PCI`, `IQ-PCI-10`, `IQ-PCI-D`는 `qla1280` 드라이버가 담당하며, PCI-Basic은 `am53c974` 드라이버가 담당한다.
버스와 보드에 따라 사용할 드라이버가 다르다.
.. SPDX-License-Identifier: GPL-2.0
=================================
Qlogic FASXXX Family Driver Notes
=================================
This driver supports the Qlogic FASXXX family of chips. This driver
only works with the ISA, VLB, and PCMCIA versions of the Qlogic
FastSCSI! cards as well as any other card based on the FASXX chip
(including the Control Concepts SCSI/IDE/SIO/PIO/FDC cards).
This driver does NOT support the PCI version. Support for these PCI
Qlogic boards:
* IQ-PCI
* IQ-PCI-10
* IQ-PCI-D
is provided by the qla1280 driver.
Nor does it support the PCI-Basic, which is supported by the
'am53c974' driver.
PCMCIA 사용 절차
24-39당시 PCMCIA 지원은 DOS에서 먼저 카드를 활성화한 경우에만 동작했다. 소켓 서비스와 카드 서비스, `QL41DOS.SYS`, `QL40ENBL.SYS`를 최소한 로드해야 하며 나머지 모듈을 더 로드해도 동작을 방해하지 않는다.
그 뒤 하드웨어를 재설정하지 않고 Linux 커널을 시작한다. 부팅 플로피를 둔 상태에서 `Ctrl-Alt-Delete`를 사용하거나, DOS에서 접근 가능한 커널 이미지와 `loadlin`을 사용할 수 있다. Linux PCMCIA 드라이버를 사용한다면 카드가 다시 구성되지 않도록 조정하거나 구성을 중지해야 한다. 원문 작성 시점에는 PCMCIA 그룹과 더 유연한 지원을 개발 중이었다.
PCMCIA Support
==============
This currently only works if the card is enabled first from DOS. This
means you will have to load your socket and card services, and
QL41DOS.SYS and QL40ENBL.SYS. These are a minimum, but loading the
rest of the modules won't interfere with the operation. The next
thing to do is load the kernel without resetting the hardware, which
can be a simple ctrl-alt-delete with a boot floppy, or by using
loadlin with the kernel image accessible from DOS. If you are using
the Linux PCMCIA driver, you will have to adjust it or otherwise stop
it from configuring the card.
I am working with the PCMCIA group to make it more flexible, but that
may take a while.
모든 카드의 설정 옵션
40-55`qlogic.c` 맨 위의 여러 `#define`이 설정을 제어한다. 배포 기본값은 속도와 기능의 균형을 맞춘 값이다. 문제가 있으면 먼저 `SLOW_CABLE=1`을 설정하고, 이어 `USE_IRQ`와 `TURBO_PDMA`를 0으로 낮춰 본다. SCSI 버스를 이해하는 사용자는 다른 설정으로 버스를 더 세밀하게 조정할 수 있다.
장치가 방금 켜진 상태가 아니거나 충돌 뒤 재시작해 이전 명령을 끝내려는 중일 수 있다면 `RESET_AT_START`를 켜는 편이 좋다. 0으로 두면 시작은 빨라지지만, 하드웨어와 연결이 확실히 신뢰할 수 있을 때만 재설정을 생략하는 것이 적절하다.
빠른 기능을 단계적으로 줄여 원인을 분리한다.
All Cards
=========
The top of the qlogic.c file has a number of defines that controls
configuration. As shipped, it provides a balance between speed and
function. If there are any problems, try setting SLOW_CABLE to 1, and
then try changing USE_IRQ and TURBO_PDMA to zero. If you are familiar
with SCSI, there are other settings which can tune the bus.
It may be a good idea to enable RESET_AT_START, especially if the
devices may not have been just powered up, or if you are restarting
after a crash, since they may be busy trying to complete the last
command or something. It comes up faster if this is set to zero, and
if you have reliable hardware and connections it may be more useful to
not reset things.
기본 문제 해결
56-64먼저 DOS에서 카드와 장치가 정상 동작하는지 확인한다. 새 드라이브에 파티션을 만들 계획이면 최초 `FDISK` 작업도 수행한다. 처음부터 모든 가속 옵션을 켜지 말아야 한다. 하드웨어나 연결에 문제가 있으면 가속 기능이 증상을 더 심하게 만들 수 있다.
Some Troubleshooting Tips
=========================
Make sure it works properly under DOS. You should also do an initial FDISK
on a new drive if you want partitions.
Don't enable all the speedups first. If anything is wrong, they will make
any problem worse.
케이블과 종단의 무결성 시험
65-87케이블과 종단 상태를 시험하는 가장 좋은 방법으로 큰 파일 복사를 제시한다. 최소 5MB 파일을 복사한 뒤 `COMP`로 결과를 검증하고, 캐시는 모두 꺼서 RAM이 아니라 실제 파일을 시험해야 한다. 같은 SCSI 디스크 파일을 자기 자신과 비교하는 `COMP realbig.doc realbig.doc`를 10회 수행하고, 컴퓨터가 충분히 뜨거워진 뒤에도 반복한다.
작성자의 시스템은 평소 완벽해 보였지만 몇 시간 켜 두면 이 시험에서 실패했다. 케이블이 길거나 SCSI 버스의 장치가 많을수록 악화되었다. 잘못된 ACK가 들어와 스트림에 여분의 바이트가 삽입되며 검출되지 않는 현상으로 보였고, 불량 종단에 의한 ACK 반사, 열로 약해진 칩의 잡음, 속도에 비해 너무 긴 케이블이 원인이 될 수 있다.
DOS에서도 동작하지 않는 구성이라면 Linux에서도 동작할 가능성이 낮다.
캐시의 영향을 제외하고 열과 반복 부하까지 확인한다.
Important
=========
The best way to test if your cables, termination, etc. are good is to
copy a very big file (e.g. a doublespace container file, or a very
large executable or archive). It should be at least 5 megabytes, but
you can do multiple tests on smaller files. Then do a COMP to verify
that the file copied properly. (Turn off all caching when doing these
tests, otherwise you will test your RAM and not the files). Then do
10 COMPs, comparing the same file on the SCSI hard drive, i.e. "COMP
realbig.doc realbig.doc". Then do it after the computer gets warm.
I noticed my system which seems to work 100% would fail this test if
the computer was left on for a few hours. It was worse with longer
cables, and more devices on the SCSI bus. What seems to happen is
that it gets a false ACK causing an extra byte to be inserted into the
stream (and this is not detected). This can be caused by bad
termination (the ACK can be reflected), or by noise when the chips
work less well because of the heat, or when cables get too long for
the speed.
Remember, if it doesn't work under DOS, it probably won't work under
Linux.
요약·해설
qlogicfas.rst:1-87QLogic FASXXX 카드 지원 범위, PCMCIA 부팅, 속도 설정과 무결성 시험을 설명합니다.