
                  FreeBSD 2.2.8-RELEASE PC 카드 설치 프로그램

                              호소카와 타쯔미
                          <hosokawa@jp.FreeBSD.org>
                           BSD-nomads 팀, 일본


1. 이 플로피는 무엇인가?

이 설치 프로그램 커널과 플로피는 FreeBSD PAO PC 카드 패키지를 포함하고
있읍니다. 이 플로피를 사용하여 다양한 PC카드(이더넷, SCSI CDROM, ATAPI
CDROM 등등)로부터 설치하는 것이 가능합니다. 이 플로피는
FreeBSD-2.2.8-RELEASE와 PAO-19990405를 기본으로 하고 있읍니다. 따라서
지원되는 카드는 PAO-19990405에 의해 지원되는 카드와 같습니다.

PAO는 FreeBSD상에서 이동 컴퓨팅 (mobile computing)을 지원하는
패키지입니다. 예전의 PAO 패키지의 일부분은 이미 오리지날 FreeBSD의
소스 트리(source tree)에 들어가 있고, 그리고 지금도 일부 코드는
포함되기를 기다리고 있는 상태입니다. PAO 코드의 일부는 충분한 검토가
이루어지지 않아서 현재로서는 아직 오리지날 소스에 포함되기에는
부적당한(pre-alpha 수준의) 코드를 포함하고 있습니다만  PAO는 현재의
FreeBSD의 PC카드 지원상태에 비해 훨씬 편리하며 보다 많은 PC카드를
지원 하고 있습니다.

*2.2.8-RELEASE에 대한 주의점*

2.2.8의 PAO는 PC-카드 콘트롤러에 대해 IRQ를 지정하고 있습니다. 기본
IRQ는 5입니다. 어떤 랩탑은 IRQ 5에 사운드카드가 있습니다. 그런
기계에서는 UserConfig에서 빈 IRQ로 다시 설정해주어야 합니다. 그렇게
하려면 부트 플로피의 첫번째 메뉴에서 UserConfig의 "CLI" 설정을
선택하고 다음과 같이 입력하세요.

--------------------------------------------------------------------
config> irq pcic0 9
        ~~~~~~~~~~~
--------------------------------------------------------------------

이 경우 IRQ 9가 비었다고 가정합니다. 현재 pcic0는 UserConfig의 "가상"
모드를 지원하지 않습니다.

PAO 커널이 컴파일된 뒤에도 다시 해야 합니다. 설치된 시스템에서
UserConfig를 실행하려면, 부트 프롬프트에서 다음을 입력하세요.

--------------------------------------------------------------------
boot: -c
      ~~
--------------------------------------------------------------------



2. PC 카드의 기초

이 플로피를 사용하기 위해서는 적어도 PC카드의 구조에관한 기본적인
개념을 이해할 필요가 있읍니다. ISA장치와 마찬가지로 PC카드는
I/O포트, IRQ, 공유 메모리를 사용합니다.  그러나 IRQ레벨은
PC카드 콘트롤러(또는 PC카드 브릿지)라고 불리우는 특수한 하드웨어에
의해 자동으로 할당됩니다.

각각의 PC 카드 슬롯은, 8개의 메모리 윈도우, 2개의 I/O윈도우, 그리고
1개의 번호가 붙어있지 않은 IRQ를 가지고 있습니다. PC 카드 콘트롤러는
이 자원들을 ISA, 또는 PCI 영역에 맵핑(map)합니다. 이 맵핑 기능이
자동적으로 동작하기 때문에 CPU는 PC 카드를 보통의 ISA 디바이스처럼
사용할수 있읍니다.


     (모든 메모리 윈도우와 I/O 윈도우 1은 사용되지 않음)
   +---------+                    +------------+           /
   |         |--------------------|            |-----------/ ISA버스
   | 모뎀    |    I/O 윈도우 0    | PC-카드    | 3f8 - 3ff /
   | PC-카드 |--------------------| 콘트롤러   |-----------/
   |         |<==================>|            |<=========>/
   +---------+    미할당  IRQ     +------------+   IRQ 3   /
        
      그림 1. 모뎀 카드는 ISA 버스상의 직렬 칩으로 맵핑되었다.


이런 값들을 결정하기 위해 운영체제는 카드내의 EEPROM에 기술된 "CIS
(Card Information Structure) tupples"를 사용합니다. 운영체제는 PC
카드 콘트롤러를 통해서 이런 정보들을 입수합니다.  PC 카드 콘트롤러는
이 목적으로 16킬로 바이트의 메모리 주소를 필요로 합니다(콘트롤러는
EEPROM 메모리를 이 영역에 맵핑합니다). 이러한 데이타들은 명령어
프롬프트에서 "/stand/pccardc dumpcis"라고 입력하면 보실수
있습니다. 아래에 "/stand/pccardc dumpcis"의 출력 예가 있습니다.


-----------------------------------------------------------------------
Tuple #6, code = 0x1b (Configuration entry), length = 16
    000:  e0 41 99 49 55 26 25 aa 60 f8 03 07 30 ff ff 28
        Config index = 0x20(default)
        Interface byte = 0x41 (I/O)  +RDY/-BSY active
        Vcc pwr:
                Nominal operating supply voltage: 5 x 1V
                Continuous supply current: 2 x 100mA
                Power down supply current: 2 x 10mA
        Card decodes 10 address lines, 8 Bit I/O only
                I/O address # 1: block start = 0x3f8 block length = 0x8
                IRQ modes: Level
                IRQs:  0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
        Max twin cards = 0
        Misc attr: (Audio-BVD2) (Power down supported)
Tuple #7, code = 0x1b (Configuration entry), length = 7
    000:  21 08 aa 60 f8 02 07
        Config index = 0x21
        Card decodes 10 address lines, 8 Bit I/O only
                I/O address # 1: block start = 0x2f8 block length = 0x8
-----------------------------------------------------------------------
	표 2.  CIS tupples의 예 (Megahertz XJ3288 CIS의 일부)



이 플로피는 이 스크래치(scratch) 영역으로 기본적으로
0xd0000-0xd3fff를 사용합니다.  그러나 만일 여러분의 하드웨어가 이
영역을 다른 목적으로 사용하고 있는 경우에는 이 플로피의 맨 처음
메뉴에서 다른 주소를(0xd4000, 0xd8000, 0xdc000) 선택할 수
있습니다. 만일 여러분의 하드웨어의 자세한 사양(spec)을 모르면
옵션값을 선택하지 마시고 계속 진행해 나가다가 어떤 문제가 발생한
후에 :-) 옵션값을 시험해 보세요.  0xd0000은 대부분의 랩 탑 컴퓨터의
하드웨어에 적합한 옵션값입니다.

이 플로피에는 PC 카드에 대해 또 한가지의 메뉴가 있습니다. 이 두번째
메뉴는 자유로운 빈 IRQ 할당영역의 선택에 사용 됩니다. PC 카드는 다른
디바이스에 사용되지 않는 빈 IRQ를 필요로 합니다. 운영체제는 이러한
목적으로 빈 IRQ를 관리할 필요가 있습니다. 메뉴에서 이 빈 IRQ
할당영역을 선택하실 수 있습니다. 기본값은 IRQ 10 과 11 입니다.
여기서 어떤 컴퓨터는 IRQ 10을 점유하는 사운드 카드(더구나 곤란한
것은 설치 플로피에서 인식 불가능한 경우)를 가지고 있기도 합니다.
이런 컴퓨터를 가지고 계시면 IRQ 10을 이런 목적으로는 사용할 수
없습니다. IRQ 5와 11이 좋은 대안이지만 IRQ 5를 점유하고 있는
장치가 있는 경우에만 IRQ 11을 사용하세요.


3. FreeBSD 설치 노트

설치가 끝난후에 PC 카드를 사용하고 싶을 때에는 커널을 PC 카드
지원부와 함께 다시 컴파일해야 합니다. 그러므로 커널의 소스는 *반드시*
설치해 두어야 합니다. 이 플로피는 자동적으로 "src/ssys"(커널
소스)배포본을 "사용자" 와 "X 사용자" 배포본 집합에 추가 시킵니다만
"최소"을 설치하는 경우와 여러분 자신이 배포본을 선택하는 경우에는
"src/ssys"배포본을 수작업으로 추가 시켜주어야 합니다.


4. 설치 종료후

만일, 2.2.8-RELEASE를 이 플로피를 이용해 설치한 경우에는 PAO패키지를
네트워크 또는 CD-ROM으로 부터 가져올 필요없이 PAO커널을 설치할 수
있습니다. 이 플로피는 PAO패치를 /stand/PAO/sys에 /etc 파일을
/stand/PAO/etc에 그리고 pccardd(PC 카드 대몬)과 pccardc(PC 카드
콘트롤러)를  /stand에 각각 설치합니다. 게다가 /stand/sysinstall의
"설정" 메뉴에서 PAO 커널을 다시 컴파일 할 수 있습니다.

FreeBSD를 이 플로피로 설치하고, 컴퓨터를 다시 부팅하고 나서 루트로
로그인해서 /stand/sysinstall을 실행시켜 주세요. PAO 커널의
재컴파일과 설치를 설치 메뉴에서 할 수 있습니다.

sysinstall의 "설정" 메뉴의 "PC 카드"를 선택해 주십시요, 주의할 것은
이런 작업은 설치가 끝난 직후에 해야만 한다는 것입니다. 특히, 만일
커널 소스에 어떤 패치를 한 경우에는 이 조작은 실패할 가능성이
있습니다. 그러므로 이 작업은 *가능한* 먼저 해 주세요.

만일, PC 카드 콘트롤러의 스크래치 메모리나 건드려서는 안되는 IRQ
할당영역의 값으로서 기본값이 아닌 것을 선택한 경우에는 아래의 설치값을
여러분이 직접 변경해 주세요(죄송합니다, 아직 자동으로는 안됩니다).

   PC 카드 콘트롤러 메모리       -->  /etc/rc.conf의  "pccardmem"
   PC카드가 사용할 수 없는 IRQ들 -->
     IRQ 5            /etc/pccard.conf에서 "ignirq 5"
     IRQ 10           /etc/pccard.conf에서 "ignirq 10"
     IRQ 1-9          /etc/pccard.conf에서 "ignirq 1 2 3 4 5 6 7 8 9"
     IRQ 1-10         /etc/pccard.conf에서 "ignirq 1 2 3 4 5 6 7 8 9 10"

-The FAQ list of PAO is placed at /stand/PAO/doc/PAO-FAQ.  Please read
+The FAQ list of PAO is refer to
+http://www.jp.FreeBSD.org/PAO/index.html#faq.  Please read

PAO의 FAQ 리스트는 다음에 위치합니다.
http://www.jp.FreeBSD.org/PAO/index.html#faq
문제가 발생하면 먼저 이 파일을 읽어 보시고 그래도 문제해결이
않되시면 연락 주세요. 이 파일에는 대부분의 일반적인 질문에 대한
해결책들이 들어있습니다.

이 플로피에는 설치에 필요하지 않은 장치 드라이버와 유틸리티는
없습니다(예> 비디오 캡처, 보이스 신디사이저, LS120 슈퍼 플로피
등). 이런 드라이버를 설치하려면 원본 PAO 패키지로 커널을 다시
컴파일해야 합니다. PAO패키지와 정보는 PAO 웹페이지
PAO에 관한 패키지와 정보는 PAO 웹 페이지
(http://www.jp.FreeBSD.org/PAO/) 와 PAO 익명 FTP서버
(ftp://daemon.jp.FreeBSD.org/pub/FreeBSD-jp/PAO/)에서 찾을 수 있습니다.

PAO의 최신 개발 스냅샷 버전은
ftp://daemon.jp.FreeBSD.org/pub/FreeBSD-jp/PAO/snap/ 에서 찾을 수
있습니다. 현재 버전에 문제가 있다면, 이 스냅샷을 사용해 보세요.

FreeBSD로 이동 컴퓨팅(mobile computing)을 즐깁시다 !
