
                           Linux PCMCIA HOWTO 媩
                                       
@: David Hinds, dhinds@hyper.stanford.edu
Ķ: ±X HSIEH Kun-Chung, xW إ Taiwan, Republic of China (NOT
People's Republic of China) ( [1]linuxer.bbs@cis.nctu.edu.tw )

   1998~219 v2.5
     _________________________________________________________________
   
   Dnyzpb Linux UwˤΨϥ PCMCIA dAȵ{æ^ja`
   쪺DCo̷s|b
   [2]ftp://hyper.stanford.edu/pub/pcmcia/doc Ct~ HTML |Qb
   [3]http://hyper.stanford.edu/HyperNews/get/pcmcia/home.htmlC
     _________________________________________________________________
   
1. @TεwnD

     * 1.1 ²
     * 1.2 ۧ@vŧiPѰ״
     * 1.3 ̷sOӡHڥiqளH
     * 1.4 ǨtγQ䴩OH
     * 1.5 PCMCIAdQ䴩OH
     * 1.6 ɭԧڪsd~|Q䴩OH
     * 1.7 lHWUΨLTӷ
     * 1.8 򤣴 PCMCIA GiXOH
     * 1.9  PCMCIA MojOH
       
2. sĶPw

     * 2.1 ǳƤu@P֤߳]w
     * 2.2 w
     * 2.3 w˧]ϥBSD ҰʤZtΡ^
     * 2.4 w˧]ϥSystem V ҰʤZtΡ^
     * 2.5 w˧]ϥ System V _lZtΡ^ 
     * 2.6 Xʵ{ﶵ 
     * 2.7 tθ귽]w
       
3. ѨMw˻PغcD

     * 3.1  PCMCIA ֤߼ҲըèSJ
     * 3.2 _y
     * 3.3 O鰻
     * 3.4 ~adJPX
     * 3.5 id귽۽Ĭ
     * 3.6 ]ƫغcèS
       
4. ϥΤkHίS

     * 4.1 ΨӫغcHκʱ PCMCIA ]ƪu
     * 4.2 PCMCIAغcZn
     * 4.3 PCMCIA d
     * 4.4 PCMCIA CPƾھ]
     * 4.5 PCMCIA SCSId
     * 4.6 PCMCIA OХd
     * 4.7 PCMCIA ATA/IDE dwо
     * 4.8 h\d
       
5. iDD

     * 5.1 PCMCIA ]ƪ귽t
     * 5.2 ګˤ~ରaxΤu@ϥΰUO]Ƴ]wO?
     * 5.3 q PCMCIA ]ƶ}
       
6. ϥΥQ䴩d

     * 6.1 غcLkQd
     * 6.2 WC NE2000ۮeAӺd䴩
     * 6.3 PCMCIA nоd
     * 6.4 䴩 Xircom d쩳FH
       
7. pޥε{]pT

     * 7.1 XΪpi
     * 7.2 C PCMCIA U
     * 7.3 sdgdAXʵ{
     * 7.4  PCMCIA Ȥ۩wXʵ{@̪
     * 7.5  Linux @Hɤ 
     _________________________________________________________________
   
1. @TεwnD

1.1 ²

    Linux ϥΪdAȵ{Oӧ䴩 PCMCIA MC ]tFզ
   PCMCIA dAȵ{ε{@MiJҲաB@M SOdϥΪ
   Xʵ{B@ӥiXdJBXè̻ݭn JΨUXʵ{
   d޲zFC 䴩 `` 洫 '' PCMCIA d A]OAdNiHb
   ɶJΩXFC
   
   n餴boiAҥHib{ئpAбzpߨϥΡCڱNɤO ک
   DDץAiOpGziDڱzbϥΤWҵoͪ{DA ]\ڴN
   LkDDҦbC]ApGzϥγoӵ{AШӫHiDڱz ϥθgA
   ׬OnOaC
   
   pGz˧io_QNA]ڪD
   (dhinds@hyper.stanford.edu)C
   
1.2 ۧ@vŧiPѰ״

   ۧ@vݩ Copyright (c) 1998 David A. Hinds
   
   󤣻ݦbڪƥ\UYiΦaQƻsδGC󪺥 ק
   L (o]t½ĶLy ) ]iHKOaQGA u nL̪
   DoIåBbl`峹veUC
   
   󤣻ݦbڪƥդUΦbӷ~ʪGWAMoOnA ګ
   ƱziDڦzϥΡCpGzQNXyWAбz Pڳs
   @UAHTwz̷sC
   
   uO `` e{ '' {ӤwAèSηtܥ󪺫OC z
   wӾϥΥحTIC
   
1.3 ̷sOӡHڥiqளH

   ثe̷sdAȵ{ 3.0 A pTקΰL 3.0.1B
   3.0.2 pC
   
   ̷sl{Xiq hyper.stanford.edu  /pub/pcmcia ؿA s
    pcmcia-cs-3.0.?.tar.gzC bq`|ƭӪbCq`ڥu|̷s
   Xӭק睊bBCs q`]tF{XA]ڤ]|
   W@íwץ bHƤɤݡC{bíw 2.9.12 An
   ϥέӪn OHHzNաCb CHANGES ɮפ|²檺t
   C
   
   hyper.stanford.edu |QM sunsite.unc.edu (HΩҦ  sunsite M
   W )  /pub/Linux/kernel/pcmcia C
   
   ϱzQۤvsĶ PCMCIA {ܡA WDn Linux Ӧp
   SlackwareB Red HatBCalderaBYggdrasil wsĶn{i ΡC
   
1.4 ǨtγQ䴩OH

   oǵ{ӥiHb Linux ۮeOqW`u@C` PCMCIA 
   䴩A oǥ]AHUtӡG IntelB CirrusB VademBVLSIB Ricoh 
   Databook chipsC 䴩 IBM  Toshiba OqCun OW
   ISA  (SCSI-to-PCMCIA  IDE-to-PCMCIA ) ެO Wq
   PCMCIA Ѹ˸m䴩C
   
   CardBus ` ``Yenta'' ȦsW (]A TI BCirrusBSMC
   BO2MicroBOmega Micro M Ricoh  ) Q䴩A  32 줸
   CardBus duݩʽCXʵ{ 3.0  ٦b CardBus 
   Ѥ]u䴩 16 줸dC ѩ󵧰Oqw ުֳtiBAs
   ɱ`X{A]As~X{bWP MXʵ{䴩Wi
   |ǮɶWXJC
   
   b Hyundai OqWϥΪ Motorola 6AHC05GA äQ䴩C b
   HP Omnibook 600 W PCMCIA 礣Q䴩C
   
1.5 PCMCIAdQ䴩OH

   ثedB ƾڥdBCdBSCSI dBATA/IDE wХd H
   䴩 SRAM Mְ{OdOХdXʵ{ASUPPORTED.CARDS ɮפ]tF
   U䴩 PC dW١]ܤ֦b@ӨtΤWiϥάҦC J^C
   
   bC PC d]iiHϥΡC򥻤WAҦƾڥdiH ΡC
   ǥCJdYL̬OQ䴩d OEM iϥΡCL IO d]p
   wİOdBĥd^jثe䴩A DH ̼gXʵ{
   C
   
1.6 ɭԧڪsd~|Q䴩OH

   ٪OAoǼtӨèSIڥSҨӼg]Xʵ{C]ApG zQ
   zdQ䴩Azܤ֭nIơC zQWAڸw Linux  ߨ˪
   ҦYڥDntd PCMCIA ֤ߵ{XALBͫh^mb S PC d
   Xʵ{WCb SUPPORTED.CARDS ɮפ즳ǥd ҥXʵ{biB
   C bگOҤΪaڷ|qA LzL Email Ӱ֤߳]X
   ʵ{äOܦĲvC
   
   syӭYۤvq~Q Linux Ҥ䴩iPڳsi@B 
   PwơC
   
1.7 lHWUΨLTӷ

   ڴg@@ Linux PCMCIA ϥΪ̶lHWUCӲ{bڤwNڪ վ
   WCsDAY@tC Linux PCMCIA T G w
   藍Pdw˻P]wBPCMCIA d{]pP Co
   Linux PCMCIA Tb http:
   //hyper.stanford.edu/HyperNews/get/pcmcia/home.html WCϥΪ̥iHӽ
   gѹqll󪺤覡ӳqzP쪺sTCڴ oˤliHNoǶWL
   HOWTO (򰵡 ) d򪺰DQܬ@ ΪT_wC
   
   ӰwﵧOqϥ Linux lHWUs ``linux-laptop'' lH WU
   C Yni@BTA бH@ʧt ``help'' @rqll
   majordomo@vger.rutgers.eduC Yznq\oTAбH@ʧt
   ``subscribe linux-laptop'' qllWۦP Email a}Co lH
   WUO@ Linux PCMCIA ׾®@C
   
   Linux Laptop b
   http://www.cs.utexas.edu/users/kharker/linux-laptop WA حsܯS
   wOqbw Linux ] PCMCIA ^ɪ TC٦@iMt
   غcTƮwC
   
1.8 򤣴 PCMCIA GiXOH

   ڦӨAѤGiX|xڡCoIA]ǥ\ubsĶ ɳQ
   ܡAӥB PCMCIA ҲդS̿XA֤߫غcCҥHAڥuണ ѦH
   XA֤ߤsĶҲաCpBAnw˨@ӰbtΤW ɬO̻ݭn
   sĶҲժC @ӻAC Linux ӷ|ݭnbw L{]w
   PCMCIA ӨϥΥ\CCӨӳۤv{ǡAҥH ڨӨ}
   ںϺеL̦nIӾAXC
   
   PCMCIA {bwO\hDn Linux Ӫ@FA o]t Red HatB
   CalderaB SlackwareBYggdrasilBCraftworks  Nascent TechnologyC
   
1.9  PCMCIA MojOH

   ! ڭnOAujCҦXʵ{Ҳե[_ӥuݬ 200 K 
   ϺЪŶӤwC ε{[_Ӭ 70KAb /etc/pcmcia ت Ƭ
   30KCɡAPCMCIA ֤߼Ҳզά 48K tΰOCq ` cardmgr
   FFbdQJβXɥ~|QXO骺C Ҧ M󪺤jpä
   | DOS dAȵ{ɦhjtOC
   
   oP DOS IҥξۤG٤񥦭̪nC SOOHä|ϥΨ
   PCMCIA Ҧ\Gp෽޲zμ洫\C ]Iҥξj 
   uݤ䴩@ةΤֳ\dHΤ䴩ֳ\ PCMCIA AҥHiH op@
   ǡCpGHngӤѤ~ƾھ}ҾAYi|\h dAȪ\
   ೣ[ih~IPdtӥHαFC
   
2. sĶPw

2.1 ǳƤu@P֤߳]w

   b}leA zӷQQO_ݭnۤvӽsĶ PCMCIA MC ]j
   Linux ӪwtwsĶL PCMCIA Xʵ{MC@WӻA pG
   zݭn̷sXʵ{αzʪ Linux Ӫ֤ߩMz 
   PCMCIA Xʵ{Lkۮeɤ~|ݭnۤvʤⰵC MsĶ PCMCIA Mb
   NWäA٬Oݭnz Linux w@wxC
   
   UCF襲bz}lwPCMCIA{ew˧G
     * @Ӫ 2.0.*  2.1.* tC֤߭l{C
     * @MXAҲդε{C
     * (ܩ ) ``XForms'' X11 ϥΪ̬ɭu
       
   ثeXʵ{MƹWib֤ߪ 1.2.8 }l֤ߪW`u @C
   ӥ¤@I֤ߪNIDӹFǡA̦nnoˡC
   
   zٻݭn㪺 Linux l{A Ou̷s֤߬MɴNi ӽs
   Ķ PCMCIA M󪺡C PCMCIA Ҳէt@ǹ֤߭l{ɮתѦ OA
   ]\z|QӤtǤnXʵ{֤ߡA Ow PCMCIA äݭn
   zo򰵡C
   
   ثeíw֤ߵ{lɤέ׸ɥiHb
   [4]ftp://sunsite.unc.edu/pub/Linux/kernel/v2.0 
   [5]ftp://tsx-11.mit.edu/pub/linux/sources/system/v2.0 C oi
   ֤ߵ{ib v2.1 ؿAثeҲդ {]ibP˪aC
   
   b֤ 2.0  2.1 ҥΪ Linux l{𤺪 Documentation/Changes
   ɮפyzF֤ߵ{һݭnUOtΤCzi˵îֹz t
   άO_̷sAרzwsF֤ߵ{C pGzϥ 2.1  ֤ߡA
   T{zΤFT{wMҲդu㪺զXC
   
   zغc֤߮ɡApGzpen PCMCIA dAzӥ}䴩 W
   ` Linux dXʵ{A o]AfUi⦡dC PCMCIA 
   dXʵ{]piJҲաA ҥHNXʵ{sĶ ߵ{u|
   OŶӤwC
   
   pGznϥ SLIPBPPP  PLIPAibإ֤߮߮ɱNoǥ\ॴ}AΪ ϥ
   oǥ\઺iJҲժC Ob֤ 1.2.X Uغc@~ɦ pʾ١A
   NOରJҲճ]wغcﶵ (Ҧp SLIP Y )AҥHp Gzݭno
   \AunN SLIP s֤ߵ{ؤFC
   
   Fnϥ PCMCIA ݾdA z֤ߵ{ӱN ``Token Ring
   driver support'' (CONFIG_TR) oض}ҡAñN CONFIG_IBMTR oC
   
   pGznϥ PCMCIA IDE dAw֤ 1.3.72  2.1.7 A ֤߫غc 
   ӭnN CONFIG_BLK_DEV_IDE_PCMCIA \ॴ}Aª֤ߨä 䴩i
   IDE ]ơAӸs֤ߴNݳoSO]wFC
   
   pGznϥ PCMCIA SCSI dA bغc֤߮N CONFIG_SCSI \ ॴ}C
   åBANznϥΪ SCSI ]ƶؤXʵ{} (SCSI Ϻ BϱaB
   Ūо )CҦSwdChXʵ{ nA]
   u|ΪŶӤwC
   
   pGzQ⵹ PCMCIA ]ƨϥΪXʵ{ҲդơAЭק
   /etc/pcmcia/config ӫwǼҲզbإdϥΤUݳQJCҦpApG
   CXʵ{Q ҲդƤFAC]ƪwqӦpUG
   
device "serial_cs"
  class "serial" module "misc/serial", "serial_cs"

   bM٦ X ҨϥΪdAε{ cardinfoC { Owb
   @ӧKOϥΪ̤uM XForms {wCq`Qb j
   Linux Ӫ~C pGzQسy cardinfoAzob غc PCMCIA Me
   w˦n XForms MҦ@ X {Yɤε{wC
   
2.2 w

   HUOw˹L{²nBJG
   
     * Ѷ} pcmcia-cs-3.0.?.tar.gz  /usr/srcؿ
     * bs pcmcia-cs-3.0.? ؿ ``make config''
     *  ``make all''AA ``make install''C
     * ztΦb /etc/pcmcia ۭq PCMCIA ҰʤZMɮ C
       
   pGzQw˨LDDn PCMCIA ɮM{ҥ]tȤXʵ{A N
   ̸Ѷ} PCMCIA l{𪺳hAḀ`سyOAYiNo W[X
   ʵ{sĶΦw˰_ӡC
   
    ``make config'' |CX@ǫغcﶵAˬdztΨä oǿﶵ
   O_ŦXw PCMCIA 䴩CФpˬdROXT Aר䦳
   DɡC
   
   pGzQsĶ PCMCIA M󵹨LϥΡAbغcZX{w ؼ
   ؿɽЫwӴNؿAӬOӵ|AҦ PCMCIA u NQw
   ˦boؿ۹mءCMAzNiH tar oӥؿ_ ӡAA⥦
   LWAY۹ؿWAw˥̨A aC
   
   pGzQsĶ PCMCIA M󵹨LϥΡAbغcZnDz w
   ХؿɽЫwӴNؿA ӬOӵ|AҦ PCMCIA uNQ
   w˦boؿ۹mءCMAzNiH tar oӥؿ _ӡAA⥦
   LWAY۹ؿWAw˥̨A aC
   
   pGzbLqWesĶAziHwNɦWsĶγsC o
   VX a.out  ELF tήɫܦUqCZ|nDJ ϥΪs
   ĶXСC
   
   YǤ䴩ε{ (cardctl M cardinfo) iHbwΥiH ΦUsĶC
   bwΦUiHD root ϥΪ̧dغcC iHΦU\@
   ϥΪ̰ȰB~BmdROΧܥثe غcCغcZ|ݧA
   nNε{sĶwΥiHΦAww ΦC
   
   Ǯ֤ߵ{غcﶵ|vT PCMCIA uCغcZ]@몬pU^ |b
   ֤ߵ{ɱ_XoǼvTCt~ApGzOsĶӦw˨L WA
   q֤߭l{ŪoǫغcAάOʦa]wCӿﶵ C
   
    ``make all'' A ``make install'' Nإߨæw ֤ߵ{Ҳդ
   ε{C ֤߼Ҳշ|Qw˦b /lib/modules/<  >/pcmcia C
   cardmgr M cardctl {Qw ˦b /sbin ؿC pG cardinfo Q
   ߪܡA| Qw˦b /usr/bin/X11 ءC
   
   غcɷ|Qw˦b /etc/pcmcia ؿCpGzw˦b@ª WAz
   ªغcZ|Qƥ_Ӥ|Q\AQOsUӪɮצW ٷ|Q[
   *.~1~B*.~2~ ɦWC
   
   pGzDz PCMCIA OtPA ziHϥ cardmgr/ ؿ
   U probe ε{ӱCثe̥Dn GDatabook TCIC-2 
    Intel i82365SL ۮeC
   
   bּƱpUAprobe RONLk۰ʦaP_zOC p Gz
   Halikan NBD 486 tΡA өbPa誺 TCIC-2  G ɱzN
   nק rc.pcmcia ӸJ tcic ҲաA åBN PCIC_OPTS ѼƳ]w
   ``tcic_base=0x02c0''C
   
   Ǩϥ Cirrus tΡA ]A NEC Versa M tΪ BIOS |bt α
   ʮɱNm@ӯSOamAUCbotΤWAprobe ROõLk
   w PCMCIA C pGoͳoبơA Эק rc.pcmcia N PCIC
   ] i82365A PCIC_OPTS  ``wakeup=1''C
   
2.3 w˧]ϥBSD ҰʤZtΡ^

    Linux ӡA]A SlackwareAϥ BSD wƤ覡tαҰ Z
   ơC pG /etc/rc.d/rc.M oɪtδNݳo Cw˦b
   /etc/rc.d  rc.pcmcia Z|ҰʩM  PCMCIA tΡC b ``make
   install'' ɷ| probe RO ӨMwzþAק rc.pcmcia 
   eCzibtα  /etc/rc.d/rc.M [W@pUOӰ
   PCMCIA ҰʤZC
   
/etc/rc.d/rc.pcmcia start

   No洡ƦbeiHAun PCMCIA Xʵ{b syslogd  ҰʧYi
   C
   
2.4 w˧]ϥSystem V ҰʤZtΡ^

2.5 w˧]ϥ System V _lZtΡ^

   Red HatB Caldera  Debian Ӫ Linux ϥ System V wƨt
   Ұ ɮסC pG /etc/init.d  /etc/rc.d/init.d ؿtδNOo
   C rc.pcmcia Z|Qw˨ /etc/rc.d/init.d/pcmcia άO
   /etc/init.d/pcmcia UC|۰ʱҰ PCMCIA \Ahק󪺱Ұʤ
   ZFC
   
   pG /etc/sysconfig ؿbtΤA 򦳥t@ӫغc
   /etc/sysconfig/pcmcia |Qإ߰_ӰҰʿﶵC pGz n
   Ҳտﶵ (p PCIC=  PCIC_OPTS= ]w )A u ݽsoӫغcɦӤק
   u PCMCIA ҰʤZCɮפ]|Q ᪺w˦л\C
   
   ǥHeϥ /etc/sysconfig/pcmcia-scripts ؿӤ O{b
   /etc/pcmcia ؿC{bҦtΪwαN  /etc/pcmcia ؿF
   AC
   
2.6 Xʵ{ﶵ

    PCMCIA ֦L\i|]iण|QSOtΩұĥ C
   Xʵ{]SkO_oǥ\QĥλP_Cˬdz X
   { man ݬݱzǨL\C
   
   CXʵ{ tcic  i82365 \h׬yƤɰѼƯS OObĥΰt
   BztΤWɻݰǭקCɵoͰDgd {DBbt
   UB~vAάOy]ƩʯܮtCԱ аѾ\ man |
   hӸ`Ab²zpUG
   
     * Cirrus \hiغcɰѼơC ̭nӬO cmd_time X
       A ΨӨMw PCMCIA ׬yƶgסC tק֪ 486 tΡ]p
       DX4-100 ^UNq 6 (w ) [j 12  16 ɥiݨ쥦ĪGC
     * Cirrus PD6729 PCI  fast_pci XСApG PCI ׬yƪt פ
       25 MHz ֮ӳ]wC
     * Vadem VG-468  Databook TCIC-2  async_clock XХ
       אּP PCMCIA ׬yƩMD׬yƬ۹諸gtסCoӺX з|
       YǾާ@WW[ݪɶCMӡAڦn٨SťӵOq ݭn
       o򰵪C
     * pcmcia_core Ҳզ cis_speed ѼơA OΨӧsd d
       Tc Card Information Structure (CIS) OtסC ǳtק֪
       ׬yƮɧǪtΤWAW[oӰѼơ]ҦpACds^ iHѨMd
       ѪDC
     * oاڭ̨ëDQפɪĳDApGztΤW@ӥHW
       ISA-to-PCMCIA ΦbXRWLѮɡAi82365 Ҳ өM
       ѼƳ] 1  extra_sockets @_QJA  PCI-to-PCMCIA 
       PCI-to-CardBus ̴No򰵡C
       
   Ҧoǿﶵק /etc/rc.d/rc.pcmciaӫغcAҦpG
   
# Should be either i82365 or tcic
PCIC=i82365
# Put socket driver timing parameters here
PCIC_OPTS="cmd_time=12"
# Put pcmcia_core options here
CORE_OPTS="cis_speed=500"

   oئ@ǯStΪɳ]wG
   
     * b ARM Pentium-90  Midwest Micro Soundbook Plus WA ϥ
       ``freq_bypass=1 cmd_time=8''C
     * b Midwest Micro Soundbook EliteAϥ ``cmd_time=12'' C
     * b Gateway Liberty WAո ``cmd_time=16''C
       
2.7 tθ귽]w

   dAȨtӦ۰ʦahקKtwQLзǳ]ƨϥΤF IO M_
   C]|յ۰PW]ƶĬAuL٤Oܧ iaC p
   GJoرΡA zݭnN /etc/pcmcia/config.opts 귽ưC
   
   HUOYǯSwOq귽]wG
   
     * b AMS SoundPro, ư irq 10.
     * b AMS TravelPro 5300 models, use memory 0xc8000-0xcffff.
     * b BMX 486DX2-66, ư irq 5, irq 9.
     * b Chicony NB5, use memory 0xda000-0xdffff.
     * b Compaq Presario 1020, ư port 0x2f8-0x2ff, irq 3, irq 5.
     * b HP Omnibook 4000C, ư port 0x300-0x30f.
     * b Micron Millenia Transport, ư irq 5, irq 9.
     * b NEC Versa M, ư irq 9, port 0x2e0-2ff.
     * b NEC Versa P/75, ư irq 5, irq 9.
     * b NEC Versa S, ư irq 9, irq 12.
     * b NEC Versa 6000 tC, ư port 0x300-0x33f, irq 9, irq 10.
     * b ProStar 9200, Altima Virage,  Acquiline Hurricane DX4-100, 
        irq 5, port 0x330-0x35f. iHϥ memory 0xd8000-0xdffff.
     * b Siemens Nixdorf SIMATIC PG 720C, ϥmemory 0xc0000-0xcffff,
       port 0x300-0x3bf.
     * b TI TravelMate 5000,ϥ memory 0xd4000-0xdffff.
     * b Toshiba T4900 CT, ư irq 5, port 0x2e0-0x2e8, port
       0x330-0x338.
     * b Twinhead 5100, HP 4000, Sharp PC-8700 M PC-8900, ư irq 9 (
        ), irq 12.
     * b MPC 800 tCAư irq 5, port 0x300-0x30f O CD-ROM ΪC
       
3. ѨMw˻PغcD

   b`ط|X@Ǳ` PCMCIA ltΪѼҦCбzյۦb oǨҤl
   XzҹJ쪺DgCuyz@몺~DA ]äw
   SwdXʵ{C
   
   Qnbڭ̸յ۸g PCMCIA ˸mӦw Linux ɹJ쪺 PCMCIA X ʵ{
   DXGiCƦܱzqgDO譱DAQn w˺
   SAרOLkb Linux tΤUsɡC nۭqw˺Ϥ n
   Linux ̪ܤFAo]b󪺽d򤺡C @ ӻA ̨ΪB
   JOϥΨLkӦw˦n LinuxA M᮳̷s PCMCIA Xʵ{A
   AӰǤsbDC
   
3.1  PCMCIA ֤߼ҲըèSJ

   g:
     * ֤ߪŦX~Tb PCMCIA ҰʤZɥX{C
     * bҰʫA lsmod èSqX PCMCIA ҲաC
     * cardmgr i ``no pcmcia driver in /proc/devices'' btΤx
       C
       
   ֤߼Ҳդ]AT|bҲճQJɻP{b֤߬ۮֹCˬd 
    CONFIG_MODVERSIONS o֤߿ﶵӬݡC pGoجO_ wA ֤ߪ
   XN|QsĶC@ӼҲդA insmod |ˬd oO_P椤֤
   O۲ŦXC pG CONFIG_MODVERSIONS O yesA֤ߩҴCӲŸ|Q
   @ˬd` (Checksum)Coǵ{ X|QP۹{Xۤs
   ĶҲաCo򰵦bҲխ̴ ̿סA ]ˬd`u|b֤ߤ
   ʮɤ~|ܰʡA B pp֤ߧsɯŴXGPӬۦPCb
   ȤWAˬd`wܦ[ YA]\h֤ߤ̿ObsĶ
   ɮ֤߿ﶵ]wC BAˬd`vܦ@ӧP_ۮeתݴd[u
   FC
   
    PCMCIA Ҳջݭn֤ߪAȵ{AoǪAȵ{isbΤsbA o
   nݮ֤ߪغcC ҦpASCSI dXʵ{Nݭn֤ߤwQغc 䴩F
   SCSI FCXʵ{Nݭn䴩֤ߡCpG֤߯ʤ֤F@ ݭn\
   Ainsmod i|iXwqŸӤhJӼҲ C
   
   o~򪺵GOA֤߼ҲպKaP֤ߪHγ\h֤߫غcﶵ ]w
   ۵XC@ӻA֤ 2.0.31 @ճQsĶnҲըõLkQ L
    2.0.31 WϥΡCDSOa`NNӫغcۦP ]wCoӰ
   DANǨwsĶn֤߼Ҳժu@ܱoI_ǤF C
   
   zXؿﶵG
   
     * pGz֦O Linux gsĶXʵ{A ˬdzҨϥ
       ֤߬OMӨ@_gsĶ֤ߡCpGzQϥΥgsĶҲ
       A@ӻAoϥλPQ񪺮֤ߡC
     * pGAsغcΤɯŧA֤ߤFAAiݭnsĶMw˷s PCMCIA M
       C pGAwgwˤF֤߭l𪺸ܡAoƴNoeFC аѦ
       PCMCIA-HOWTO ԲӪܡC
     * bYǱΤUAPLtΤ󪺤ۮei|ɭPLkTJ֤߼Ҳ
       C pGzۤvɯŮ֤ߡA Ъ`NԦCҲխlɮ׾𤺤
       Documentation/Changes ɮפwҲդε{ΤGi줽 {C
       ̤pݨD (``minimal requirements'')C
       
3.2 _y

   g:
     *  PCMCIA Xʵ{QJɨtΫoʤ]ʡANèSdۮɤ]@
       ˡC
     * tΤxbtηꦺeܦ\a PCMCIA A٨S
       _GɡC
       
   b PCMCIA AXʵ{|ŵ۪_XCoӰ @|
   CMOŵ۪_{, MᲣͤ@ `` n '' _A ӬݬݬO
   _oӴ_iHQTaQCǮɭԡA@ǯS _ɷ|vT
   Ltγ]ơC
   
   o򰻴zѬOAڭ̭nXuŵۥiΪ_C (ҦpAǤO Q
   L Linux ]Xʵ{ҹwd۪A ]ëDWws PCMCIA 
   AάOwsۨL]ƦèSXʵ{C)
   
   G~򪺤k:
     * _u@iHϥδXʵ{ irq_list ѼƳ]wӭ uY
       ǴѹIӤwCҦp ``irq_list=5, 9, 10'' |uo TӴ_
       yӤwCҦ PCMCIA ]Ʒ|QuϥγoXӴ _Ӥw (
       p̲LFʧ@ )CAiݭn|մXѨæAAF a~
       Ǵ_iHQwaϥΪC
     * _u@iHQaAbJXʵ{ɨϥΤF
       ``do_scan=0'' ﶵCo򰵡A|w_MQϥεۡA̤wg
       KϥΨǤwg QL]ƩҦΤF_C
       
   t@ӤkAڭ̥iHϥΦb PCMCIA ҰʤZw PCIC_OPTS  ]wA
   p:
   
PCIC_OPTS="irq_list=5,9,10"

3.3 O鰻

   g:
     * DXʵ{bdäsۮɳQTaJAӥBbtΤx]S
       ~C
     * tηʤFMΥdJbnT_eNs}C
       
   άOG
     * dJɷ|ͤ@ӰnAۧCHnC
     * dQ~{ ``anonymous memory cards''C
     * tΤxiܦhOdwQưb~FC
       
   DҲյ{bĤ@Jdϰ@wO鱽yCoӰʧ@bia zA
   LOMg]ơCt~Apre-3.0.0 eXʵ{M |{
   Xʵ{i@ByCO鵡OQwqb
   /etc/pcmcia/config.opts C w]fܤjAҥHi| Uӭ
   ydCXzdiլݬݥ]tiHU}
   G0xd0000-0xdffff, 0xc0000-0xcffff, 0xc8000-0xcffff, 
   0xd8000-0xdffffC
   
   pGA DOS  Windows  PCMCIA Xʵ{A ANiH you may be
   able to deduce what memory region those drivers use. аOo DOS  O
   }q`ϥ `` q '' }ΦA]NO|NڪQ줸 Ʀrٲ
   ]ҥH 0xd0000 }NO 0xd000 ^C Oob
   /etc/pcmcia/config.opts ɭnT{oC
   
3.4 ~adJPX

   gG
     * b}ϥdۨóQBTaQغcFC
     * Xʵ{|XdQJβXAάOObtΤxBήɹnT
       C
       
   @ӻAdXʵ{ (i82365  tcic) |۰ʦaÿ ܤ@ӾAX
   _ӶǰedAʡC Y Intel ۮe۰ _u@C
   ]t Cirrus M˦b IBM ThinkPads WC pGbɳ]ƵLk_
   ʡA_]|OmCoتAUAdX ʵ{]\|D@ӤwQ
   L˸mϥΤ_ӨϥΡC
   
   b i82365 M tcic Xʵ{ت irq_list ﶵiH ΨӭǴ_iH
   QժCoӴ_CiQuQ PCMCIA d ҨϥΩΥΨӺʱdA
   ܡC t~ cs_irq ﶵiզa]w Ӵ_nQΨӺʱdA
   ܪC
   
   pGzLki`u@_XA٦@Ӳ窱AҦiΡG O
   i82365  tcic  poll_interval=100 oﶵA ΨӲdC
   ܪACpGztΤwuʥiQ PCMCIA dϥ _ɳoӿﶵ]iHQ
   ΡCSOObtΤ@إHW PCMCIA  ɴN`NoIFC
   
   Ҧoǿﶵb PCIC_OPTS= oӳ]wA ݱztάO]b
   /etc/rc.d/rc.pcmcia ةάO /etc/sysconfig/pcmcia C
   
3.5 id귽۽Ĭ

   Symptoms:
     * idbUۿWۨϥήɥiHu@A
     * id@_QۮɡAou@ӥiH`u@C
       
   q`oNܤwgMY Linux Dtγ]Ƭ۽ĬFCPCMCIA ] OQ
   ʺAغcAҥHAҦpA_ObQݭnɳQtAӤOSOQ wS
   OdάOѪC{b@ӥiθ귽MAd|bL Qغcɨ̧
   aQ귽CboتpUA̫Qغcd|Q @ӨëDO
   ۪귽WFC
   
   ziˬdtΤxǸ귽QDbu@dҦεۡCb
   /etc/pcmcia/config.opts اoǱưb~A AsҰ cardmgr FӦA
   J귽ƮwC
   
3.6 ]ƫغcèS

   gG
     * @ӥdQJɡATiť@ӰnTC
     * UӪdެOJβXQzBC
       
   oܥdwQ\aFCO cardmgr ]Yǭ]wLk غc{
   C̦i઺]Obd]wZY@BJQxFC@ dQJ
   ɨèSW@ӥʤWɡAZQxFA oNO̦nҤl
   C
   
   nXDXbءAAiHʰ@ӳ]wZӬݬݥOQxb C
   oӤZNb /etc/pcmcia ؿCL̷|ϥΤGӰѼ G]ƦW٤ΰʥ
   C cardmgr |OغcROObtΤx C ҦpA btΤx
   ܥX `./network RO}lF eth0'' OQ cardmgr ̫@Ӱ檺ROAH
   URO|lܳoӤZG
   
cd /etc/pcmcia
sh -x ./network start eth0

4. ϥΤkHίS

4.1 ΨӫغcHκʱ PCMCIA ]ƪu

   pGҦҲճQTaJFAbSdQJAUA lsmod RO
   X|ݰ_ӹHCˤlC
   
Module                  Size  Used by
ds                      5640   2
i82365                 15452   2
pcmcia_core            30012   3  [ds i82365]

   tΤx]ӥ]tXʵ{ǥDQo{FBXӴ Q
   FXC
   
  cardmgrغcF
  
   cardmgr Ftdʱ PCMCIA ѡAݭnɸJ LXʵ{AåB
   ϥΪ̶hZӤdJPXC |⥦ʧ@ObtΤx
   åιnӦ^dAܡCn ժܫغcBJO\٬OѡC
   ӰnTܨBwQ\aP غcFC@@CnTܥdQ
   A]Yǭ]LkQغcC@ CnܥdLkQC
   
   Cardmgr |C@ӴѪ]ƸTOb /var/run/stab ءCHUO
   /var/run/stab CҤlG
   
Socket 0: Adaptec APA-1460 SlimSCSI
0       scsi    aha152x_cs      0       sda     8       0
0       scsi    aha152x_cs      1       scd0    11      0
Socket 1: Serial or Modem Card
1       serial  serial_cs       0       ttyS1   5       65

   boXҴyz]ƤAĤ@ܴѡBĤG]OBĤT X
   {W١Bĥ|QΨӫwbP@Xʵ{UϥΪCӳ]ƨXB ĤӬO
   ]ƦW١B̫Ooӳ]ƪDnΦnXC]pGi 쪺ܡ^
   
   cardmgr F̾ڳQsb /etc/pcmcia/config w dƮwӫغco
   ǥdCoɮ״yzF\hӧOXʵ{AHΦp \hdA٦
   Xʵ{ݩӥdCoɮת榡b pcmcia(5)  man ئ
   ӪơC
   
  cardctl  cardinfo ε{
  
   cardctl ROiHΨˬdѪAA άݥ̬OpQغcC ]iH
   QΨĵܤ@ӥdغcAC o঳ ``cardctl config'' ROX
   lG
   
Socket 0:
Socket 1:
  Vcc = 5.0, Vpp1 = 0.0, Vpp2 = 0.0
  Card type is memory and I/O
  IRQ 3 is dynamic shared, level mode, enabled
  Speaker output is enabled
  Function 0:
    Config register base = 0x0800
      Option = 0x63, status = 0x08
    I/O window 1: 0x0280 to 0x02bf, auto sized
    I/O window 2: 0x02f8 to 0x02ff, 8 bit

   ``cardctl suspend'' M ``cardctl resume'' өROiH ӦbݨU
   Xʵ{pUdC``cardctl reset'' RO|s]wΫغc
   dC ``cardctl insert'' M ``cardctl eject'' N@ӹ骺dJ
   ΩXɩҰʧ@ Ao]tJΨUXʵ{HΫغc]ơC
   
   pGz XA cardinfo ε{|ͤ@ӹ ܨܩҦ PCMCIA 
   Ѫ{pA eM ``cardctl config'' CٴѨL cardctl \
   ઺ϧΤƥ\C
   
  JPXd
  
   bzפWAAiHbɶJβX PCMCIA dCMӡA⥿bQ L{
   ϥΤdXӨäOӦnDNCb֤ 1.1.77 Het `|b
   CƾھdQXɳyA{bwץkFC
   
  dAȵ{Pi෽޲z
  
   dAȵ{iHsĶ䴩 APM ( i෽޲z) A pGAwwˤFoӮM
   AtΤܡC APM b֤ 1.3.46 ]t^HNQXFC {boM
   Q Rick Faith (faith@cs.unc.edu) Һ@A APM uiH
   [6]ftp://ftp.cs.unc.edu/pub/users/faith/linux CpGAt γQ
   XӬۮebܡA PCMCIA Ҳշ|Q۰ʦaغc䴩 APMM \C
   
   pGSǵ APMA AiHbamAOqe ``cardctl suspend''A
   HΦb^Ы ``cardctl resume''A~Aa WέҧA PCMCIA
   dC o勵bϥΤƾھäAΡA Ц] CXʵ{õLkxsP^
   ƾھB@ѼơC
   
   APM bǨtΤWGIíwC pGAJ APM M PCMCIA @ή 
   DAбzbX{pieյۧD²ơC
   
   Xʵ{A p PCMCIA SCSI Xʵ{ALkqamsʧ@g U
   ^йLӡC bϥ PCMCIA SCSI dɡA bamtΫe ``cardctl
   eject''C
   
   PCMCIA t
  
   nUӪ PCMCIA MA invoke rc.pcmcia with:
   
/etc/rc.d/rc.pcmcia stop

   oӤZ|XӰAȤۭqXʵ{ӧa CpG
    PCMCIA ]ƥQϥΤAoiण|ܧaA ֤߼Ҳեi
   |QUC noͳoتpA Цb rc.pcmcia eϥ
   ``cardctl eject'' ҦѡC cardctl RO}A|ܦpG
   󪺴ѤQC
   
4.2 PCMCIAغcZn

   C@ PCMCIA ]Ƴ|Ӭ۹ `` O '' ӴyzӦpQ cP
   ޲zCoOP]Xʵ{Q´b /etc/pcmcia/config Cثe@
   ؿXJ]ƪO ( B SCSIB cdromBwХHΦC ) HΤG
   O]O (OP FTL)CbC@OAGӤZb
   /etc/pcmcia/config G@ӥDnغcZ (ҦpA /etc/pcmcia/scsi O
   SCSI ] ƪ )AHΤ@ӿﶵZ (ҦpA /etc/pcmcia/scsi.opts)C D
   ZbdQJɷ|QҥΨӫغcӳ]ơAdQXӳ] C
   hس]ƪdAwUOP]ƪZ|QҥΡC
   
   o config Z|q /var/run/stab ظѥX@Ǧ]ƤW ƶ}lC C
   @ӤZ|cv@ `` ]Ʀ} ''AOW@LG} ΨӴyzӳ]Ʀb
   ADDRESS shell ܼƤQnDQغc覡C| Qǻ *.opts ZWA
   ӤZA^bo}W] ӭn˦aغc~iHTC 
   ]ơA ]Ʀ}NOѸXC ٦L]ơA|]tt~θ
   TiHΨӨMwpӫغcӳ] CҦpA]Ʒ|ǻL̪wФAӺ
   }]Ʀ}@A  network.opts ZϥγoTӱq\
   hPغc TܡC
   
   Ҧ]Ʀ}nOثe PCMCIA ``scheme''CoӰѼƬOQ bu
   @ӥ~ϥΪ̫wܼƮɥΨӹ]ƫغchس]wC󥦪 ΡA
   Ҧpڭ̥iH ``home'' scheme HΤ@ ``work'' schemeA ̥]AF
   PغcѼƪզXC ثe scheme iHϥ ``cardctl scheme'' R
   OӰܡCpGS scheme QwܴN HwȨӳ]wC
   
   @hWAnغc Linux bOqWɡAPCMCIA ]ƥuQg 
   PCMCIA ]ƤZӫغcC ФHյۥHغcTw]ƪ覡ӫغc PCMCIA ]
   ơCMӡA Linux ӴѤwbL̦ۤw]ƫغc uW
   PCMCIA MCboرpUAHUXӥDDiLkϥΡA 
   |L̦ۤvoC
   
4.3 PCMCIA d

   Linux Aӫdq`Qٰ eth0Beth1 C dP˦aQ
   ݡC Mӥ̳Qٰ tr0B tr1 C ifconfig ROOQΨ[ݤέק
   ACLinux t@S IOä|L]Ƥ@˦aQݦO
   @Ӧb /dev  YɮסCҥHpGzb /dev 䤣쥦̮ɽФnıoY
   C
   
   @ PCMCIA AӺdQɡA|QwĤ@ӥiΪd Wr
   A q` eth0C Cardmgr RO| /etc/pcmcia/network Zӫغc
   C
   
   ФűNz PCMCIA AӺdغcb /etc/rc.d/rc.inet1  A]oӤ
   ZQɤ]\däbءC b rc.inet1  F^kؤ~A 
   ROCбNL̵ѱC ӥt~ק /etc/pcmcia/network.opts ӰtXz
   a]wC network M network.opts ZubzAӺdsb
   ~ |QC pGztΦ۰ʺغc{A ]\O]\O
   PCMCIA-awareC бqz Linux 󤤬dݬݬO_ PCMCIA  ]
   ƬO_ݭnϥΦ۰ʤƤuӫغcΥuݽs network.opts Y iC
   
   Ǩ network.opts ]Ʀ}]tF|ӥHrӤ}G schemeB
   ѸXB]ƴĳΥdw骺AӺ}C]ƴĳOΨ \h
   dXΡAq` 0CpGz\hPϥΥ adɡAt@
   ӴѦmӫغcﶵӳQ]wApPbG
   
case "$ADDRESS" in
*,0,*,*)
    # definitions for network card in socket 0
    ;;
*,1,*,*)
    # definitions for network card in socket 1
    ;;
esac

   άOḀiQHۤvw}QغcApUG
   
case "$ADDRESS" in
*,*,*,00:80:C8:76:00:B1)
    # definitions for a D-Link card
    ;;
*,*,*,08:00:5A:44:80:01)
    # definitions for an IBM card
esac

  ]ưѼ
  
   HUѼƥib network.optsQϥΡG
   
   IF_PORT
          wAӺoA oOw墨ǵLk۰ʰdϥΡC Ь
          ``man ifport'' oW١C
          
   BOOTP
          L (y/n) ]wG ܬO_D IP }MTO_iHg
          BOOTP wC
          
   IPADDR
          wIP}C
          
   NETMASK, BROADCAST, NETWORK
          򥻺ѼơG аѾ\ networking HOWTO
          
   GATEWAY
          DlϥΪqTh IP }CunOboӤlH~ʥ]
           |QoӹhDC
          
   DOMAIN
          D domain nameAQΨӫإ /etc/resolv.confC
          
   DNS_1, DNS_2, DNS_3
          DW٩άO IP }oӤ nameserversA Q[
          /etc/resolv.confC
          
   MOUNTS
          A oӤϥΨӰ NFS JICC
          
   IPX_FRAME, IPX_NETNUM
           IPX : frame type κXNQǿ ipx_interface RO
          WC
          
   ҦpG
   
case "$ADDRESS" in
*,*,*,*)
    IF_PORT="10base2"
    BOOTP="n"
    IPADDR="10.0.0.1"
    NETMASK="255.255.255.0"
    NETWORK="10.0.0.0"
    BROADCAST="10.0.0.255"
    GATEWAY="10.0.0.1"
    DOMAIN="domain.org"
    DNS_1="dns1.domain.org"
    ;;
esac

   YQ۰ʱWΨUɮרtΡANɮרtΥ[ /etc/fstab Ab
   WﶵW[W noautoC b network.opts  ϥ MOUNTS ܼƦCɮרtΪ
   JIC oSOObϥ cardctl  cardinfo ROɮרtάO
   γoӤk غcӱWdɡCpGbSwĵUdQXɡAOLk
   a UɮרtΪC
   
   F@몺غcѼƤ~Anetwork.opts ZiΨӦbwg Qغc_
   γQᰵt~ʧ@ɨϥΡC pG network.opts w qF@ӥs
   start_fn ROh\IsA Qغcᥦ|Q ZұҥΡAӤ
   WٱN|Qǰeoӥ\ưĤ@ӰѼơ]] uoӡ^CۦPaApG
   stop_fn QwqFA򥦷|b@ eQҥΡC
   
   oiH IF_PORT ӳ]wCiHO PCMCIA e Ȫܩ
   OѧOorCҦXʵ{iN]w ʰ]pG
   i઺ܡ^άO 10baseT C ifport ROiΨ ˬdγ]wثeo
   AҦpG
   
# ifport eth0 10base2
#
# ifport eth0
eth0    2 (10base2)

   ثe 3c589 Xʵ{|۰ʰsA ٵLko \
   CYQH۰ʰӤu@AbdQغceuӬOws dW
   CnMAnAziHUCROXʵ{ˬds G
   
ifconfig eth0 down up

  Swdy
  
     * ϥ IBM CCAE M Socket EA db]ƳQغcɡA zݬDӱ
        (10base2B10baseTBAUI)AýT{bztΤxWҰOP
       zҳsۦPC
     *  SMCBMegahertzB Ositech  3Com dXʵ{ӷ|۰ʰs
       ۪ (10base2  10baseT) C Xʵ{QJɷ|] w
       oӭqwqd ``Ĥ@qQ''C
     * Farallon EtherWave ƹWOM 3Com 3c589 ۦPA ӯSo
       C M EtherWave ϥ 10baseT s覡A oݭn
       3c589 غc 10base2 ҦC
     * pGzϥ IBM CCAEBNE4100B Thomas Conrad  Kingston dɹJ
       DA иյۦb pcnet_cs Ҳդ mem_speed=# ﶵ W[Os
       ɶCbзǪ config.opts ɮפӱЧAp dҡCиլݬݳt
       צb 1000 ns(`)HWC
     * New Media AӺdbYǨtΤWɡAiݭnb pcmcia_core Ҳ
       QJɡA H io_speed=# ﶵӼW[ IO 𪺦sɶC bҰʤZ
       CORE_OPTS ﶵiH]wC
     * New Media AӺdXʵ{huǼ䴩äC̷sXʵ{
       iPhuǼ֤ߤ@_ϥΡA|LhuǼʥ]CWhҦ
       iHu@`FC
     *  IBM  3Com token ring dXʵ{bd|W@ ring W
       NlƬO|IDCҥHФ@wOob}e@wnoǥdM 
       sb@_C oXʵ{]ݭnŸm IO b 0xa20-0xa27 d 
       CbǨtΤWA۰ IO Ĭˬd|~aPwoӰdä O
       ŸmC JoرpA ڭ̥iHˬdC unb J
       pcmcia_core Ҳծɳ]w probe_io=0YiC
     * Newer Linksys  D-Link dӯSܦo覡Aثe٤Q
       Linux Xʵ{ү౱C u@ܳqkOH DOS }èϥμt
       өҥIε{ӿܦoAAx}i Linux ءC ڲ{b]
       bM䭺ժ̨ϥ Linux ε{Ӱoǥ\C
     *  WaveLAN LudӻAJean Tourrilhes (jt@hplb.hpl.hp.com) g
       F@gLu (] ) wireless HOWTO b [7]http:
       //www-uk.hpl.hp.com/people/jt/Linux/Wavelan.html C
       
  E_dD
  
     * zdQAӺd? ЬdݨtΤxýT{ cardmgr wT
       aFoidAӥBwҰʤF@غXʵ{FCpGSAz d
       ]i٬OiHϥΡAunP@سQ䴩dۮeܡCun Ood
       OP NE2000 ۮediHC
     * daQغcF? pGAϥΪOQ䴩dA ӥBwQ
       cardmgrҿFA٬OLku@AoiO]PL] o
       _ΰ𪺽ĬFCЬdoidϥΤFܨǸ귽 (qtΤxا )A
       Mյۦb /etc/pcmcia/config.opts oǵư ϥdϥ
       L귽C
     * pGAdGwaغcFAɭ٬O|ꦺʡAרOb
       tɡAAiݭnյۧܧAXʵ{ɰѼơCԲӸƽ
        [8]2.3 oC
     * AbsϹJ칳 ``network unreachable'' oTA iO
       Ab /etc/pcmcia/network.opts ]w~aC t~A ~aغc
       dq`|wRaoͰDC
     * nEdb /etc/pcmcia/network.opts ~A }lХյ H̪
       IP } ping P@LtΡCMյ ping Ah DAM
       LCbէoǸ²檺իAAHWr  Ping
       C
     * ЭnT{ADu PCMCIA DC AiHb DOS UHtӨ 
       Xʵ{XʬݬݬO_iHu@Ao˱NUP_CæA˧A
       /etc/pcmcia/network.opts ZקCýT{Alu B``T''
       YB׺ݹq󳣥i`u@C
       
4.4 PCMCIA CPƾھ]

   Linux C]ƳOQg /dev/cua* M /dev/ttyS* S]ɮרӰ
   C ttyS* ]ƳQϥΦbiӪsAҦp as׺ݾCcua* ]ƳQ
   ϥΦb~sApƾھC ӨC@ӹC𳣦U ttyS M cua
   ӳ]ɡG nϥ ӾA]ƨAΤWѱzӨMwC
   
   C]ƪغcAziϥ setserial ROˬdPקC
   
   @ PCMCIA CdμƾڥdQɡA|QwĤ@ӥiΪ C
   ]ơCq`O /dev/ttyS1 (cua1)  /dev/ttyS2 (cua2) Aoݭw
   CƥءC ttyS* ]Ʒ|Q ib /var/run/stab C 줺wC]
   ƿﶵZ /etc/pcmcia/serial.opts |Ns۹ cua* ] ɮ
    /dev/modemCo˴NܫKQFC
   
   ФŨϥ /etc/rc.d/rc.serial ӫغc PCMCIA ƾھCoӤ ZӥuQ
   ΨӫغcǫDiʪ]ơCpGAQn]wAƾھ SOʧ@
   ɡAЭק /etc/pcmcia/serial.opts oӤ ZC t~A ]ФŨϥ
   setserial ӧ PCMCIA C]ƪ] IO M_]wC o˰u|iD
   CXʵ{줣諸aMC] ơA|ܥdw譱uQغc
   ƹCCغcZ\zw L setserial ﶵA HάO_zӦb
   /etc/inittab oӰ[@]wC
   
   ֶǰe serial.opts ]Ʀ}@TӥѳrIҤ}G @O
   schemeB ĤGOѸXHβĬO device instanceC The device instance
   |䴩hC𪺥dΦhӼƾڡA@dӻA  ûOsC
   pGA`ϥΤu@Ӫ PCMCIAl ƾھAAiݭnw UOѤƾ
   P]wCpUG
   
case "$ADDRESS" in
*,0,*)
    # Options for modem in socket 0
    LINK=/dev/modem0
    ;;
*,1,*)
    # Options for modem in socket 1
    LINK=/dev/modem1
    ;;
esac

   pG PCMCIA ƾڥdb Linux ҰʮɧYQغcnFA iwQ~a Q
   Ѧ@몺ئCFCoML`BAOA PCMCIA Xʵ{ 
   ƾھɡA |Q@˪]ƴաC ̦nO parse
   /var/run/stab Ψϥ /dev/modemA ӤO PCMCIA ƾھ`OQ
   ۦP]ơC
   
   pGAغcA֤ߨӸJ򥻪 Linux CXʵ{@ӼҲաA A
   s /etc/pcmcia/config ӫXӼҲեQJC s צC]ƨCp
   UG
   
device "serial_cs"
  class "serial" module "misc/serial", "serial_cs"

  C˸mѼ
  
   HUѼƥiHӳ serial.optsQwqG
   
   LINK
          Ÿs (symbolic link)wӭnQإߪ| ``dialout'' άO
          /dev/cua* ]ơC
          
   SERIAL_OPTS
          wǿﶵNQǰe setserial ROC
          
   INITTAB
          pGwܡANQΨӦb inittab ӳ]ƫإߤ@ӱءC
          
   ҦpG
   
case "$ADDRESS" in
*,*,*,*)
    LINK="/dev/modem"
    SERIAL_OPTS=""
    INITTAB="/sbin/getty"

  E_C]ƪD
  
     * zdQ{OӼƾھ? ˬdtΤxýT{ cardmgr T a
       ѤFoidAåBҰʤF serial_cs Xʵ{CpGSAAi ݭnb
       A /etc/pcmcia/config ɮפ[J@ӳQA aѪءCӸ`
       Ьݳ` [9]3.6C
     * ƾڥd\aQ serial_cs ҫغcF? AӤ@A ˬdtΤxAA
       ݬݱq serial_cs Xʵ{ҥXӪTC pGAݨ
       ``register_serial() failed''A AiJF I/O PL]Ƭ۽Ĭ
       FC t~@ӱOA pGoӳ]ƳQiO 8250; j{b
       PCMCIA ƾڥdӬOQ 16550A UART CpGzıoJWF@
       ӰĬFAнs /etc/pcmcia/config.opts Qtmƾ dd
       򵹱ưC
     * JWF_Ĭ? pGtΤxݦܦnAƾڥdNOnu@A
       иոե setserial ӧ irq 令 0A AݬݼƾھO_iHu@ FC
       o˷|CXʵ{ϥΤ@ӺC@ǪҦӤϥδ_Ӥu@ Cp
       Go˥iHץoӰDANObAtΤYӨL]ƨϥ FQ
       serial_cs ҿΪ_bu@ۡCAӦb /etc/pcmcia/config.opts 
       [@RONoӴ_ưC
     * pGƾھnuCCau@AoNܩaOӴ_Ĭ𪺰DFC
     * нT{AҹJ쪺DuO PCMCIA DCϥέtӪXʵ{b
       DOS UݬݬO_iH`u@YiDCt~AbAwTwAiH²檺
       seAФnϥΧ覡ӴաAp SLIP  PPPCpG²
       s`ϥ SLIP ɫoOAADӴNOXb SLIP WAӤ
       O PCMCIAC
     * pGAooۮ֤ߪTX serial_cs ҲյLkQJC NܧA
       ֤ߨä䴩C]ơCpGAwNCXʵ{sĶ@ӼҲդFAA
       ק /etc/pcmcia/config  serial Ҳ bJ serial_cs
       eNQJFC
       
4.5 PCMCIA SCSId

   ثeҦQ䴩 PCMCIA SCSI du@UC ISA ׬yƥdˤl G
   QlogicBAdaptec AHA-152X άO Future Domain TMC-16x0CPCMCIA X ʵ{
   QإߦP PCMCIA SO{X۳s (p qlogic_cs.cB toaster_cs.c 
   fdomain_cs.c) HΥ` Linux SCSI X {C
   
   @ӷs SCSI DdQɡA SCSI Xʵ{|Ms۪]ơC 
   dtΤxA]ƳQTaFCs SCSI ]Ʒ|Qw @ӥi
    SCSI ]ɡCĤ@ SCSI wЬO /dev/sdaAĤ@  SCSI ϱaO
   /dev/st0A ٦A Ĥ@ CD-ROM |O /dev/scd0C
   
   b 1.3.X (t ) H᪺֤ءAPCMCIA ֤Xʵ{iHqtή֤ߤ X
    SCSI ]ƦsbdWC̷|QCb /var/run/stab A 
   SCSI cؤZ /etc/pcmcia/scsi ]|QC@ӳs۪ ]ƩҩIsӫغc
   ӳ]ơCwZä|غc SCSI ] ʧ@A|ab
   dQɨUb SCSI ]ƤWɮרtΡC
   
   b 1.2.X ֤ءAPCMCIA Xʵ{Lk۰ʦaӳ]ƳQw˦b Sw
    SCSI dWCMӡApGA@ӥ` SCSI ]ƤغcAA iHNo
   ǳ]ƦCb /etc/pcmcia/scsi.opts CҦpApG A` SCSI 
   ХHΤ@ CD-ROMAAiHϥΥHUG
   
# For 1.2 kernels: list of attached devices
SCSI_DEVICES="sda scd0"

   QǨ <scsi.opts ]Ʀ}IA O]\hF iHQ
   s SCSI dWCoǦ}]tFO 6 ӴNO 7 ӥHr Ӥ}
   ơG {b[cB]ƺBѸXBSCSI WDB OB޿츹
   XAHοܩʪθXC]ƺسƬ ``sd'' Ϻ B``st'' ϱa
   B``sr''  CD-ROM ]ơA ٦ ``sg'' @몺 SCSI ]ơC j]w
   ASCSI WD٦޿츹X] 0C󦳳\ hϺФΰϪϺг]
   Ascsi.opts |QH 5 쪺}ҩI sC oZӭn]@ PARTS
   ܼƨӦCoǤΡC MA scsi.opts |QC@ӺϰϥH 7 }
   ҩIsϥΡC
   
   pGA֤ߨSwSw SCSI ]ƵWhXʵ{ (ϺСBϱa ) A
   oǳ]ƴN|Q@ PCMCIA Xʵ{ҫغcCڮOA ӳ]ƪ
   Wrb /var/run/stab |ܬ ``sd#nnnn'' WrCo ``nnnn'' O 4
   ӼƦrQi츹XCun cardmgr LkĶ@ SCSI ]ƪѧOX
    Linux ]ƦWrɳ|o ͳoبơC
   
   nNWh SCSI Xʵ{ҲդƦu PCMCIA SCSI dQɥ ̤~
   |QJOi઺Cno򰵡AAݭns /etc/pcmcia/config ӧiD
   cardmgr ӥt~ҲզbdQغcɤ]nNJC ҦpG
   
device "aha152x_cs"
  class "scsi" module "scsi/scsi_mod", "scsi/sd_mod", "aha152x_cs"

   |bJ@몺 PCMCIA Xʵ{ҲիeNDn SCSI ҲթMWhϺ X
   {ҲյJCPCMCIA غcZ|۰ʦaQҲդƤF SCSI ҲաA
   HAݤʫغcﶵӱN SCSI 䴩\ॴ}C
   
   Cb}zOqeN SCSI ]ƶ}AάObJdeA o
   l SCSI ׬yƷ|bdQغc᥿TaQפCt~٭n`NX SCSI 
   dC OonT{bXdeQs۪ SCSI ]ƳQT aUP
   FC ̦nT{kObXdeϥ cardctl  cardinfo ӭnD
   dXʧ@C NoˡAҦ SCSI ]ƥ bW SCSI dew}
   ҤFqAӦbAXdMO qenOۥ̬Os
   C
   
   ϥΤ@몺 ISA ׬yƤdɥi|bʡA רOLkҰ C
   SCSI ׬yƷf@ӬFAaϥγQʦ SCSI ׺ݾҥ `` ׺ݹq
   '' HCPCMCIA SCSI dä׺ݹqAҥHpGݭnӹq ܡAN
   ѥ~]ƨӨCǥ~ SCSI ]ƥiHQغc oӲ׺ݹq
   CLAp Zip ϺХH Syquest EZ-DriveA ϥΥDʦ׺ݹqN
   ݭnpFCɭԡAiݭnϥΤ@ӯSO ݹqp APS SCSI
   Sentry 2Aӥ~qC zغc SCSI ]Ʀ걵ɡAЪ`NO_
   󪺳]ƻݭnΥiHѲ׺ݹqq C
   
   Adaptec APA-460 SlimSCSI däQ䴩Coid쥻OH Trantor W ٳQ
   c檺A  Adaptec ʤF Trantor AL̤~H Adaptec  ӼШӽ
   Trantor dAϥAAPA-460 Q{@ Linux Xʵ{ ҬۮeC
   
   ڤTwngXʵ{|hA ڤ{HiHq Adaptec  ள
   ޳NTC
   
   (Q䴩 ) Trantor SlimSCSI iΥHUkQѧOG
   
Trantor / Adaptec APA-460 SlimSCSI
FCC ID: IE8T460
Shipped with SCSIworks! driver software

   (Q䴩) Adaptec SlimSCSI iΥHUkQѧOG
   
Adaptec APA-1460 SlimSCSI
FCC ID: FGT1460
P/N: 900100
Shipped with EZ-SCSI driver software

  SCSI ]ƪѼ
  
   HUѼƥiHQwqb scsi.optsG
   
   DO_FSTAB
          L (y/n) ]wGwO_oӳ]Ӧb /etc/fstab [ ءC
          
   DO_FSCK
          L (y/n) ]wGwO_ɮרtӦbQWeH ``fsck -Ta''
          ˬd@UC
          
   DO_MOUNT
          L (y/n) ]wG wO_oӳ]ӦbdQJPɳQ۰ʦa
          Q WC
          
   FSTYPE, OPTS, MOUNTPT
          ɮרtΫAB WﶵBHγQΨӰ fstab ؤΡαW
          ] ƪWIC
          
   ҦpAHUO@ӫغc@ SCSI ID  3B 2 ӤΰϪϺг]٦ @
   SCSI ID  6  CD-ROM ZG
   
case "$ADDRESS" in
*,sd,*,0,3,0)
    # This device has two partitions...
    PARTS="1 2"
    ;;
*,sd,*,0,3,0,1)
    # Options for partition 1:
    #  update /etc/fstab, and mount an ext2 fs on /usr1
    DO_FSTAB="y" ; DO_FSCK="y" ; DO_MOUNT="y"
    FSTYPE="ext2"
    OPTS=""
    MOUNTPT="/usr1"
    ;;
*,sd,*,0,3,0,2)
    # Options for partition 2:
    #  update /etc/fstab, and mount an MS-DOS fs on /usr2
    DO_FSTAB="y" ; DO_FSCK="y" ; DO_MOUNT="y"
    FSTYPE="msdos"
    OPTS=""
    MOUNTPT="/usr2"
    ;;
*,sr,*,0,6,0)
    # Options for CD-ROM at SCSI ID 6
    PARTS=""
    DO_FSTAB="y" ; DO_FSCK="n" ; DO_MOUNT="y"
    FSTYPE="iso9660"
    OPTS="ro"
    MOUNTPT="/cdrom"
    ;;
esac

  E_SCSIdD
  
     * ϥ aha152x_cs Xʵ{ (Q AdaptecB New Media HΦǵPl Ҩ
        )AGb SCSI sAs䴩ɨϥκϱaɱ`|D Cn
       NoӰDѰAЦb /etc/pcmcia/config.opts [JU CoG
       
module "aha152x_cs" opts "reconnect=0"

     * pGAN SCSI 䴩sĶҲդF (CONFIG_SCSI is ``m'')Ab غc
       PCMCIA ɡA Awnإ SCSI Xʵ{C A]nק
       /etc/pcmcia/config bAX *_cs Xʵ{QJ eJ SCSI ҲաC
     * pGb SCSI ׬yƳQɬݨ ``aborting command due to
       timeout'' TɡAjOAӴ_ĬFC
       
4.6 PCMCIA OХd

   1tt/memory_cs/ Xʵ{tdҦA]ХdA åBٴѹ󨺨Ǧ L
   \઺d PCMCIA O}Ŷs\CQJɡA ߤF@
   rP϶]ƪզXC ЬݳoҲժ man ӧ㪺] ƨWWh
   yzC϶]ƳQΨӰϺs (إߩMWɮרt ε )CӦr
   ]ƳQΨӰ " [u " QwĤHNmWŪP gC
   
   Qǰe memory.opts ]Ʀ}]tF 2 G [cMѸ XCo
   ﶵQb۹OХdĤ@Ӧ@POФΰϤC
   
   «OХdA ٦j²RA RAM dAʤ `` dT [c
   '' (CIS)Ae PCMCIA dΨӿ̦ۤw@ schemeC @ӻ A
   cardmgr |Nʤ CIS d@²OХdA øJ memory_cs X
   ʵ{C ]AڮOA@몺ѧODO Ldi|
   ~aQOХdFC
   
   memory_cs Xʵ{ϥΤF heuristic ӲqoǥdeqC heuristic b
   gJO@dWõLku@A ٦i|X~C pGdQ~PFA
   Abϥι dd  mkfs o˪ROɡA eqnTaQwC
   
  Oг]ưѼ
  
   UCѼƥiHb memory.optsG
   
   DO_FSTAB
          L (y/n) ]wGwO_oӳ]Ӧb /etc/fstab [ ءC
          
   DO_FSCK
          L (y/n) ]wG wO_ɮרtӦbQWeH ``fsck -Ta''
          ˬd@UC
          
   DO_MOUNT
          L (y/n) ]wG wO_oӳ]ӦbdQJPɳQ۰ʦa
          Q WC
          
   FSTYPE, OPTS, MOUNTPT
          ɮרtΫAB WﶵBHγQΨӰ fstab ؤΡαW
          ] ƪWIC
          
   HUdҷ|wﴡW@ѪOХd۰ʱWʧ@ZG
   
case "$ADDRESS" in
*,0,0)
    # Mount filesystem, but don't update /etc/fstab
    DO_FSTAB="n" ; DO_FSCK="y" ; DO_MOUNT="y"
    FSTYPE="ext2" ; OPTS=""
    MOUNTPT="/mem0"
    ;;
*,1,0)
    # Mount filesystem, but don't update /etc/fstab
    DO_FSTAB="n" ; DO_FSCK="y" ; DO_MOUNT="y"
    FSTYPE="ext2" ; OPTS=""
    MOUNTPT="/mem1"
    ;;
esac

  ϥΧְ{OХd
  
   Ǩ ftl.opts ]Ʀ} 3  4 G the schemeB XB
   XHΥt~ﶵAθXCjְ{du@ӧְ{O ϡAҥH
   jϸXO 0 C
   
   nNְ{OХd@몺ϺШӨϥΡA nإ FTLA `` ְ{Ķh
   (flash translation layer)''AO@Ө  ftl_format ROb]ƤW
   @ӤΡC ohäFְ{ O{]ƫwӸ`Adݰ_
   ӴNO²檺϶]ơC pG
   
ftl_format -i /dev/mem0c0c

   OooөROOg `` [u '' OdӦsdC@g 榡
   ƫA oӥdNiHg ftl_cs Xʵ{N@몺϶ ]ƨ˦a
   sFCҦpG
   
mke2fs /dev/ftl0c0
mount -t ext2 /dev/ftl0c0 /mnt

   QRW FTL ]ƳIǩǪCMinor device numbers Tӳ : d
   XBdϰ츹XHοﶵЦbϰ츹XΡCo઺ iHQ
   ݦSΪ檺@϶] (Nn@ ) Ϊ̥ ]iHQ
   ANOӵwг]Ƥ@ˡC ``ftl0c0'' ]ƬOd 0A@P Oϰ쬰 0A
   ӰϰC pGoӰϰwQΤFA q ``ftl0c0p1'' 
   ``ftl0c0p4'' ]ƬODB 1  4 FC
   
   ְ{OdإDn榡: FTL A H Microsoft ְ{ɮרt
    Flash File SystemCFTL 榡O̦uʪ A]\@몺󰪶
   רt (ext2Bms-dos  ) i@ Ϻг]ƯaӨϥΡCFFS h
   OӤPɮרtFCLinux  eLkBz FFS 榡ƪdC
   
4.7 PCMCIA ATA/IDE dwо

    ATA/IDE Ϻо䴩ݭn 1.3.72 Χs֤ߪC Xʵ{ w
   PCMCIA O fixed_csC аOobX ATA/IDE deШ  cardctl 
   cardinfo {⥦A ]oXʵ{ èSQ]pi ``m
   ''C
   
   ǰe fixed.opts ]Ʀm]tTΥ|: ثe schemeBѸX
   BϺЪǸHοﶵθXCide_info iH QΨo IDE ϺЪǸ
   C ϥ SCSI ]ƮɡAfixed.opts |b Ĥ@QIsӳ]ư]wC p
   G fixed.opts ^F@Ӧb PARTS ܼƤ@θTA ROZ۴N
   |C@Ӥΰ] wC
   
  ATA/IDE TwϺг]ưѼ
  
   HUѼƥiHQwqb fixed.optsG
   
   DO_FSTAB
          L (y/n) ]wGwO_oӳ]Ӧb /etc/fstab [ ءC
          
   DO_FSCK
          L (y/n) ]wGwO_ɮרtӦbQWeH ``fsck -Ta''
          ˬd@UC
          
   DO_MOUNT
          L (y/n) ]wG wO_oӳ]ӦbdQJPɳQ۰ʦa
          Q WC
          
   FSTYPE, OPTS, MOUNTPT
          ɮרtΫAB WﶵBHγQΨӰ fstab ؤΡαW
          ] ƪWIC
          
   HUO fixed.opts ɮתҤlΨӱW@ ATA/IDE dĤ@ ӤΨ
   /mnt ؿWC
   
case "$ADDRESS" in
*,*,*)
    PARTS="1"
    ;;
*,*,*,1)
    DO_FSTAB="y" ; DO_FSCK="y" ; DO_MOUNT="y"
    FSTYPE="msdos"
    OPTS=""
    MOUNTPT="/mnt"
    ;;
esac

  E_ ATA/IDE dD
  
     *  IDE ϺФ\ PCMCIA WϥΤ̤ji\d]w_Ӫɶ
       ɶӰ_ʡCnϥγoǥdAиJ pcmcia_core ҲհtX U
       ]w:
       
CORE_OPTS="unreset_delay=400"

     * nϤ ATA/IDE CD-ROM ]ơAA֤ߥN CONFIG_BLK_DEV_IDECD \
       ॴ}BsĶihCq`зǪ֤߳w䴩FAMӦpGAQsĶӦ w
       ֤߽аOonԷVǡC
       
4.8 h\d

   q 1.3.73 Linux ֤߶}lAXXʵ{iH@γ@Ӵ_AC X
   {P@ӤAӺXʵ{Cbs֤ߤUϥΦh\dɡAҦ di
   HΦbJαsUXʵ{pUϥΥdҦ\C
   
   ܦhwtӦۤwFӯब۬ۮe (ǥiOWߪ ) _@ ɤ
   kӼϥΤGӥd\Cǥd (Diamonds  Ositech JackB B3Com
    3c562BLinksys) Xʵ{iHTa䴩o˪sA Oǥd
   (SOO Megahertz) hC
   
   ֤ߨä䴩_ɵP]Xʵ{Cҭn PCMCIA Xʵ{ 
   iغcdiAӺdPƾڥdsCAӺdP CX
   ʵ{|Q۰ʦaJCMӡAwWOAӺXʵ{ ``   '' oid
   _CnϥμƾھAAiHUAӺXʵ{AM ϥΥHCk
   sغcC:
   
ifconfig eth0 down
rmmod 3c589_cs
setserial /dev/modem autoconfig auto_irq
setserial /dev/modem

   ĤG setserial |dXӰbeOѤAӺXʵ{Ҩϥ _C
   
5. iDD

5.1 PCMCIA ]ƪ귽t

   zפWA @Ӵ_QϥΨӳ]ƤWSYC un (ΥHW ) ]
   QغcϥάۦP_YiCb /etc/pcmcia/config.opts اAiHo{
   ӦaΨӱưǳQD PCMCIA ]ƩҨϥε۪_C
   
   P˦aA]SkiHw I/O }@ PCMCIA dӨϥΡC
   /etc/pcmcia/config.opts ɮפ\AwiQҦ PCMCIA ]ƩҨϥΪ
   dA άOưǷ|ML]Ƭ۽Ĭ𪺰dC
   
   bקF /etc/pcmcia/config.optsAAiHϥ ``kill -HUP'' ӭsҰ
   cardmgrC
   
   QΨӺʵdA_Ob cardmgr Bz /etc/pcmcia/config ɮפe
   CXʵ{Ҳ (i82365  tcic) ҿ C]ܳoɮרä
   |vTCn]woӴ_AbXʵ{ QJɡA]wb
   /etc/rc.d/rc.pcmcia  PCIC_OPTS ܼƨϥ cs_irq= ﶵC
   
   ҦȤݥdXʵ{ӥs irq_list ѼơC QΨӫ wǴ
   _iθյۥΨӰtmL̪CoXʵ{ﶵӳQ]wbA 
   /etc/pcmcia/config ɮءCҦp:
   
device "serial_cs"
  module "serial_cs" opts "irq_list=8,12"
  ...

   |wCXʵ{uϥ irq 8  irq 12C  irq_list ]wpA
   dAȵ{ Card Services |twQL]ƩҨ ΤF_AάO
   bغcسQư_C
   
5.2 ګˤ~ରaxΤu@ϥΰUO]Ƴ]wO?

   ڭ̥iH²aϥ PCMCIA ``scheme'' 䴩ӹFC ϥΨؤP غc
   schemesAOs ``home''  ``work''C HUOӦ scheme w ]w
   network.opts Zd:
   
case "$ADDRESS" in
work,*,*,*)
    # definitions for network card in work scheme
    ...
    ;;
home,*,*,*|default,*,*,*)
    # definitions for network card in home scheme
    ...
    ;;
esac

   PCMCIA ]Ʀ}nOغc schemeC boӨҤlA ĤG
   ``case'' yl|q ``homee'' M ``default'' schemes D@ӡC ] A
   ޥz scheme èSQ]wFAwȬO ``home'' ]wC
   
   {bAnbGӳ]wYD@ӡAi:
   
cardctl scheme home

   Ϊ̬O
   
cardctl scheme work

   cardctl RO۷ҦdAҰʥ̡C  PCMCIA tάO_Q
   JAoөROiwaQCOpGAbɥbϥ L PCMCIA
   ]ƮɳoөROi|ѡC (ML̪غcä a scheme ]wC
   )C
   
   nDثe PCMCIA scheme ]wA:
   
cardctl scheme

5.3 q PCMCIA ]ƶ}

   nb@ PCMCIA ]ƤWɮרtλݭnAӤpiA ] Linux 
   PCMCIA tΨèS]ps֤ߵ{WCDnAiJ ֤߼
   եHΨϥΪ̼Ҧ cardmgr FOb@Ӥwgb檺t WC֤ߪ
   ``initrd'' H\ Linux ϥΤ@Ӧ̤pƪ MɡBJXʵ{Ȯ
   ʪʺAOϺШӶ}AMAsW @ӤPɮרtΡCoӼȮ
   ڨtΥiHغc PCMCIA ]ơAMA ⥦s@ӮڨtΡC
   
   initrd Mɵ沈sb@ӥi}]ƤW: @ӻoNLk 
   PCMCIA ]ƤWFCoO] BIOS AiO֤ߪCbo A 
   X `` i} (boot-able)'' ] (ҦpAiH} ϥΪ]
   ) P `` iڨtΪ (root-able)'' ] (ҦpAiHQ JڨtΪ
   ] ) PB]OܭnC `` i} (Boot-able) '' ]ƬO BIOS
   ҨMwA q`OnоMwϺ C`` iڨtΪ
   (root-able)'' ]ƬOiHbQJYYQ֤ Ҥ䴩϶]ơC
   initrd \iϧh]ܦ `` iڨtΪ (root-able)''AӫD ``
   i} (boot-able)''C
   
    Linux \w˨ PCMCIA SCSI d۪]ƤWCϱo LN
   ahXFi䴩q PCMCIA SCSI CD-ROM ]ƨӦw˪ڮC MӡA 
   eA èS Linux wˤu䴩غc@ӥiHq PCMCIA ɮרt
   W} Linux XA ``initrd''C ]ߤ@ӥH PCMCIA ɮת Linux t
   λݭnzϥΨL Linux tΨӲͤ@ ``initrd'' MɮסCpGSi
   ΪL Linux tΡAt@ӴNk O̤pw˨D PCMCIA ϺФWA
   ߤ@ initrd MɡAMAs w˨ PCMCIA ئa]ƤWC
   
   b Linux Bootdisk-HOWTO ئ@]w}ϺФ@TAo S
    initrd TC initrd DnQb̷s֤ߵ{ X
   YA b linux/Documentation/initrd.txtC b}leAAӭnŪ@
   UoC  lilo x]OU qC nϥ initrd ]ݭnAw
   ӱN CONFIG_BLK_DEV_RAM M CONFIG_BLK_DEV_INITRD \ॴ}ҽsĶXӪ
   ֤ߡC
   
   oOӰغc޳NA ݭnz Linux H PCMCIA tΦ@w{ת x
   CнT{bz\ŪҦA}lCU ``  ''  ӬOi
   A O@̷ӽdҨӰܡA N|ܧ֦aNAV `` Q䴩
    '' aAANoۤvӪC
   
   okݭnA@wnϥ PCMCIA Xʵ{ 2.9.5 γ̷s~iHC ª
   PCMCIA MάOӧOäb initrd بϥΡCФnNP 
   VXFC
   
  pcinitrd UZ
  
   pcinitrd ZΨӫإߤ@Өϥ PCMCIA ںϰϤΨӱҰ Linux 
   initrd MɡC ӬMإ]t@ӳ̤pؿhŵc B HΦΪ]
   ɮסB@ǤGiɮסB@ε{wɥHΤ@M PCMCIA Xʵ{ҲաC A
    pcinitrd ɡAnwnn]tihM حXʵ{ҲզW١C ӥD
   n PCMCIA ֤ߤ pcmcia_core  ds|Q۰ʦa]tihC
   
   ҦpA]AOqϥΤ@ i82365 Pe PCMCIA DAӧA Qq
   @ӱ Adaptec SlimSCSI dӸ˦ɮרtΪwФWҰ Linux CAiH
   إߤ@ӦXA initrd MɡAkpU:
   
pcinitrd -v initrd pcmcia/i82365.o pcmcia/aha152x_cs.o

   Ӧۭq initrd ҨϱƵ{AAiHΤUROӨϥ ``loopback'' ] ӱ
   WӬMɮ:
   
mount -o loop -t ext2 initrd /mnt

   Ms linuxrc ZC PCMCIA غcɮ׷|Qw˨Mɮ Y
   /etc A MA]iHۤw]wC Ӹ`Ь pcinitrd  man C
   
  إߤ@ initrd }nФ
  
   bإߤF pcinitrd MɫA AiHQΫ֤ߪ覡Ӱ@ i}
   ϺФA çQY initrd MɡB䴩 lilo ϥ ɮר@iť
   ϺФWC UClA ڭ̰]ڭ̻ݭn PCMCIA ڳ]ƬO /dev/sda1:
   
mke2fs /dev/fd0
mount /dev/fd0 /mnt
mkdir /mnt/etc /mnt/boot /mnt/dev
cp -a /dev/fd0 /dev/sda1 /mnt/dev
cp [kernel-image] /mnt/vmlinuz
gzip < [initrd-image] > /mnt/initrd

   إߤ@ӥ]tUe /mnt/etc/lilo.conf ɮ:
   
boot=/dev/fd0
compact
image=/vmlinuz
    label=linux
    initrd=/initrd
    read-only
    root=/dev/sda1

   ̫A lilo pU:
   
lilo -r /mnt

    lilo QɰtXϥ -r ﶵA|ҦPQw ؿʧ@
   C b /mnt/dev ثإ߳]ɮתzѬOA ObNڥؿҦU
   lilo õLkϥΦb /dev  ɮסC
   
  w initrd MHɨDLinux ϺФ
  
   initrd \@볣ϥΦbwоQL@~tΨϥή C
   Linux ֤ߥH initrd MɥiHQbD Linux ϰϤΤA ӥB
   lilo άO LOADLIN iHQ]wѳoǬMɨӶ} Linux tΡC
   
   ]AӤwQغcnXAڳ]ơAB initrd MɳQإߦbt~t ΤW
   FAҰ Linux tΪ̮ekOϥ LOADLINApU:
   
LOADLIN <kernel> initrd=<initrd-image>

   @AiHbAؼоWҰ LinuxA ANiHw lilo Ӥ \a
   Ұ Linux FC ҦpA] /dev/hda1 OӫD Linux ؼкϰϤΡAB
   /mnt iHQΰJIC Abؼ ϰϤΤWإߤ@ө Linux ɮ
   lؿ:
   
mount /dev/hda1 /mnt
mkdir /mnt/linux
cp [kernel-image] /mnt/linux/vmlinuz
cp [initrd-image] /mnt/linux/initrd

   boӨҤlA ] /dev/sda1 Oڭ̭n Linux ڤΪ ϺСA O
   g PCMCIA SCSI dұW SCSI wоC nw liloAЫإߤ@ӦHU
   e lilo.conf :
   
boot=/dev/hda
map=/mnt/linux/map
compact
image=/mnt/linux/vmlinuz
        label=linux
        root=/dev/sda1
        initrd=/mnt/linux/initrd
        read-only
other=/dev/hda1
        table=/dev/hda
        label=windows

   b boot= oػnbw]ƤD}O MBR( master boot record) 
   w˶}J{C root= oXbJ initrd M ɫݭnϥΪ
   רtΡApG֤߬MؤwoغcFNݳo FC b other= 
   OΨӴyzL@~tγQw˦b /dev/hda1 ءC
   
   nw˳oӨҤlت lilo Aϥ:
   
lilo -C lilo.conf

   OoboӮפlءAlilo.conf ɮרϥΤF]A /mnt b }Cڥγo
   ӨҤl]OؼɮרtΨä@w䴩ϥ boot= M root= ﶵӫإ
   Linux ]ɮתإߡC
   
6. ϥΥQ䴩d

6.1 غcLkQd

   {bڭ̰]AdwQ{Xʵ{Ҥ䴩Aڭ̩һݭnOb
   /etc/pcmcia/config [J@ӱبӧiD cardmgr p ӿoidA
   Xʵ{ݭnsoidWCغcɮת榡Ӹ` Ьd pcmcia  man
   C pGAJ@iQ{odA cardmgr `ӻ|O@ǿT
   tΤxWA ڭ̥iHQ oǸTӫسyغcءC
   
   HUO cardmgr pN䴩di /usr/adm/messages ҤlC
   
cardmgr[460]: unsupported card in socket 1
cardmgr[460]: version info: "MEGAHERTZ", "XJ2288", "V.34 PCMCIA MODEM"

   ۹/etc/pcmcia/config إiHO:
   
card "Megahertz XJ2288 V.34 Fax Modem"
  version "MEGAHERTZ", "XJ2288", "V.34 PCMCIA MODEM"
  bind "serial_cs"

   AiHϥ ``*'' ӥNorAXաC Agsغc 
   ɡAФpߦa⧹㪺rLhAO즳jpgHΪťզr C٦
   AнT{غcػPQixɮتƦP˼ƥتr C
   
   ШcOzXGiHwXʵ{@idϥΡApGAuOJæa ç
   AäOӫܦͲĲv@kCA]iܩBao{{Xʵ{ w䴩
   FAdCMӡAjGOXʵ{õLku@A] i|
   ڮꦺAtΤFC@몺]Xʵ{u AdA
   PCMCIA ]ƪu@O cardmgr ҰAXʵ{ bյۻP]Ʒqe
   |ԣT{ʧ@C
   
   bs /etc/pcmcia/config A AiHt cardmgr sJɮסA
   :
   
kill -HUP `cat /var/run/cardmgr.pid`

   pGA]wnF@isdAбH@]wڡAoˤlڴNiH⥦] ti
   зǫغcɮءC
   
6.2 WC NE2000ۮeAӺd䴩

   A dݬݳoidO_wQ cardmgr ҿѡC ǨSQCb
   SUPPORTED.CARDS dƹWOǳQ䴩d OEM Cp GAo{
   Fo˪dAڪDAoˤ~⥦[CC
   
   pGAdSQOA Ш̷ [10]3.6  BJAdإߤ@ӫغc
   ءAçoidsôW pcnet_cs Xʵ{C s cardmgr Yiϥ
   QsغcɮפFC
   
   pG pcnet_cs Xʵ{LkMwAdwAӺ} Aнs
   קAsغcرNoidsôWOdXʵ{ memory_cs WC s
    cardmgr YiϥγQsغcɮ FCAݭnDAdwA
   }ȡCoӦ}OӥHGӤQ 줸rXұƦӼƦrAq`
   |QLbdWCpGSL bdWAAiHϥ DOS Xʵ{
   ܳoӦ}C unA@Do ӭȡAа:
   
dd if=/dev/mem0a count=20 | od -Ax -t x1

   MMA}XCuƦ줸ճQwqFA]iHɦL Ƥ
   _Ʀ줸աCOU}Ĥ@Ӧ줸ժQ줸첾C{bAs
   modules/pcnet_cs.c ôM hw_info cyCAݭnA dإߤ@ӷs
   ءCĤ@NOO첾C۪TN w}eTӦ줸
   C̫@tdSO\઺X; }l иյ۱N] 0C
   
   sק pcnet_cs.c A sĶPw˷sҲաC Aק
   /etc/pcmcia/configA Mܥdsôq memory_cs  pcnet_csC
   ܭsJغcɮ׫NFCбzH @Ashw_info ɮץHΫ
   cؤeC
   
   pGASbQiɦLAdw}C̫᪺@ӤkA 
   pcnet_cs ҲժlƮɷQn ``hard-wire( w鱵X )'' Oi ઺Cнs
   /etc/pcmcia/config.opts å[J hw_addr= ﶵAo:
   
module "pcnet_cs" opts "hw_addr=0x00,0x80,0xc8,0x01,0x02,0x03"

   bAyaNAۤvdw}CMAФpߦpGAwg F
   hFAAdNӹO NE2000 ۮedFCƹWAڨä TwO_
     dbgLFeؤk@٤ΪF C
   
6.3 PCMCIA nоd

   b Compaq Aero ΤּƤ@ǵOqҨϥΪ PCMCIA nоd e|
   Q䴩C Dnêb Aero GϥΦۭq PCMCIA Ө DMA 䴩
   nоCbooOp쪺pUAڭ̴NLkXѨM kC
   
   pGb Aero Q}ҮɳnоdO۪A Aero  BIOS N|غc dA
    Linux |⥦@몺nоC Linux  PCMCIA Xʵ{ QJ
   A ̷|dodwQغcäwۦb Linux Xʵ{WA ӳoѤ]|
   QޤFCҥHApGb}ɥdYۤFNiH ΡAƼ
   洫\C
   
6.4 䴩 Xircom d쩳FH

   bثe PCMCIA M󤤦tF@ӥj Xircom AӺΤAӺ / ƾھ
   Xʵ{C onP Werner Koch ͡Cڦ]ߤ@ӱMQ Xircom X
   ʵ{ΪWCsDAb
   [11]http://hyper.stanford.edu/hypernews/get/pcmcia/xircom.htmlC
   
   He Xircom dèSQ䴩O] Xircom qପSL̪d N
   TCӡAL̩PoǳWwA{bDʴXʵ{TC
   
7. pޥε{]pT

7.1 XΪpi

   Xpi̦nkOϥΦb Linux PCMCIA TWCsDT C
   Co˥iLHD̷sD (íקΧܤk )Co Op
   iơG
   
     * ztAH probe ROXTC
     * zϥέ PCMCIA dC
     * z Linux ֤ߵ{ PCMCIA Xʵ{C
     * z /etc/pcmcia ɩ PCMCIA ҰʤZҰܡC
     * btΤxɤҦP PCMCIA TC
       
   Ҧ PCMCIA {ҲթM cardmgr FҶǨtΤxɪTC q`
   /var/log/messages  /usr/adm/messagesC lܤ@ӰDɳoӮɲĤ@
   nݪaCzXpiɽгs P]AoɮסC pGzbtΰT
   DɡA ˬd /etc/syslogd.conf ӬݦǤPTOQB
   zFC
   
   bXpieAбzˬd@UT{zϥΪO̷sXʵ{MC pG
   ݤwQڧ勵᪺iܷ|Hyy@UAMNI Sس]
   adtڪߦFC
   
   pGADO֤ߪAq~a褧~ɦLuAla~ }
    EIP ~ΡC pG~ObDn֤ߤAݬݦb System.map }A
   X~\ơCpGXaObiJҲդA NlaFC
   ϥΥثeҲդu ``ksyms -m'' |X@C @ӥiJҲժ}C
   ]tF EIP }ҲաAM EIP  }YioҲդ첾C
   MA  gdb bӼҲդWAϥ list RO첾C o\ubA
   ϥ -g ﶵbsĶ ӼҲծɥ[JFT\C
   
   pGASϥκApi]iHH dhinds@hyper.stanford.edu ӵ
   AڸƱApiKڪWAoˤlLH]iH ݨC
   
7.2 C PCMCIA U

   PCMCIA Ҳէt\hsĶXC joǽXbemBz
   PCMCIA_DEBUG wqUCpGSQwqAXN|QsĶ CpG]
   w 0AX|QsĶiJ|QҥΡCUjƦrw| o󤾪FC
   H PCMCIA_DEBUG wqӫإߪҲճ|ӾưѼ pc_debugA|
   XhC oiHbҲճQJɥ[H AbݭssĶUϱoXi
   HQHCӼҲլFC
   
   b PCMCIA  debug_tools/ lؿ@ǰu C
   dump_tcic M dump_i365 Ӥε{| PCMCIA  Ȧs
   ɦLAåBN\hȦsTѽXCpGA sܡA
   oǸT̳̦ΪFC dump_tuples ε{CXFd CIS (dT
   c )AñN@ǸnƸѽX XӡC dump_cisreg ε{ܥd
   aݫغcȦs(local configuration registers)ơC
   
   ɭ memory_cs OdXʵ{ΨӰܦnΡCiHP 
   PCMCIA d۳sAӥB|zZLXʵ{CiHQΨӹ d
   ݩʰOγqΰO骺sC
   
7.3 sdgdAXʵ{

   Linux PCMCIA {]pvެO Linux PCMCIA ̦nC ̷s 
   AiHq hyper.stanford.edu  /pub/pcmcia/doc ؿάOb
   [12]http://hyper.stanford.edu/HyperNews/get/pcmcia/home.html C
   
   󨺨Ǳ@몺 ISA ]ƨӻA A]\iHϥΤwsb Linux X
   ʵ{XʡCɭԡA̤jêOק@ӤwsbXʵ{ ϥiHb}
   Bz[JβX]ơCb{檺Xʵ{AuO dOߤ@ `` ۧ
   ]t '' Xʵ{Шä̿ Linux ֤ߪL ӰWuC
   
   bܦhҤlAn䴩@isd̤jêbqsyo޳N T
   C nDݽ֤~άOǸTOݪ]C MӡA uּƨҤl~
   AbSqsyto޳NTpUngӸӥdX {XGC
   
   ڼgF@ӧtFƵӸѻ\h@Xʵ{pP Card Aȵ{ q
   [cXʵ{C AiHb PCMCIA lɮת modules/skeleton.c C
   
7.4  PCMCIA Ȥ۩wXʵ{@̪

   ڨMwYnҦ PCMCIA ȤXʵ{Ӧ PCMCIA M󪺤@ 
   ܡAo˨äAXڡCC@ӷsXʵ{|DnM󺥺aH Ӻ@C
   ӥB]toXʵ{]|ЦۨӦaN@u@q@̨ ಾڪ
   WC]Aڷ|ϥΪ̪ݨDHΥi@ʨӥHӮת MwO_n]t
   ǨXʵ{C󨺨ǤQ]tb֤߮M˪X ʵ{AګĳoX
   ʵ{@̥iHϥΤUרӥ]zXʵ{ @ΡC
   
   Xʵ{ɮӳQwƩbP PCMCIA ӷӪۦPؿcU Ap
   AXʵ{NiQѶ}짹㪺 PCMCIA l{𪺤WFC@ Xʵ{
   ӥ]tl{ɮ (b ./modules/)A man  (b ./man/)Aغcɮ (b
   ./etc/)C b̤Whؿ ]Ӧ README ŪɮסC
   
   ̤Whؿ]ӥ]t@ makefileAO@ӲզXΨӰ ``make -f ...
   all'' H ``make -f... install'' sĶXʵ{æw AɮסCpGo
    makefile  .mk [ɦWA򥦷|۰ aQWh Makefile RO[
   W all H install ؼ aɨӰC
   
   HUO@ makefile pQإߪҤlG
   
# Sample Makefile for contributed client driver
FILES = sample_cs.mk README.sample_cs \
        modules/sample_cs.c modules/sample_cs.h \
        etc/sample etc/sample.opts man/sample_cs.4
all:
        $(MAKE) -C modules MODULES=sample_cs.o
install:
        $(MAKE) -C modules install-modules MODULES=sample_cs.o
        $(MAKE) -C etc install-clients CLIENTS=sample
        $(MAKE) -C man install-man4 MAN4=sample_cs.4
dist:
        tar czvf sample_cs.tar.gz $(FILES)

   o makefile ϥ 2.9.10 ]t^H᪺ PCMCIA M˵{ҩwq w
   ؼЦaC٥]tF@ ``dist'' ؼЦaӵXʵ{@̤K C A]
   \Qn[Ws̫᪺MɦWWC (ҦpA sample_cs-1.5.tar.gz)C
   @ӧiHpUG
   
sample_cs.mk
README.sample_cs
modules/sample_cs.c
modules/sample_cs.h
etc/sample
etc/sample.opts
man/sample_cs.4

   Ho˪wơAXʵ{QѶ}ɡA|ܬ PCMCIA l{ 
   nCo˥NiHϥ PCMCIA YɮץHˬdϥΪ̨tΫ c
   B۰ʬˬdANO `` @몺 '' ȤXʵ{@ C
   
   ڱǨ̷ӳoӳWҷǳƪȤXʵ{N̩bڪ FTP  ׶
   鯸 hyper.stanford.edu  /pub/pcmcia/contrib ؿCboӥؿ
   README ɮ׷|zpѶ}Xʵ{C
   
   PCMCIA ȤXʵ{@HӳSܰʫܦhA åBٳOdV 
   e\C@ȤXʵ{äݦbDn PCMCIA Mp ɴNo
   ɯŤ@Cڤ]|յ۳qǨXʵ{@̹L̪X ʵ{ݭn
   ʪaC
   
7.5  Linux @Hɤ

   pGzϥΪӪѨtΫغcu{ϱz`N PCMCIA A Ш
   Φb /etc/pcmcia  *.opts ɮרӡW ǥ\CpGϥΪ̽sĶ
   w˷s PCMCIA Mɥ̱N|Q CpGzקFDغcZAw
   ˭ӷs PCMCIA MɡAoN|a zwۭqZл\Ӥ_ze
   Pغcu㶡sCpGzo ӼgӦXAﶵZAziHPڳs
   C
   
   pGzNzϥΪӪ PCMCIA M󪺨ϥλP󤧤P a
   gNLϥΪ̥HΧڥHUqCSOOAЦb WIW
   ʤZΫغccPBC
   
   pGzQ Linux  PCMCIAA̦n]D PCMCIA Dn{L 
   Xʵ{@_]AihCFK@Aڷ|ɤOaN֤߮M󪺤jp b@
   wd򤺡ADıo|QjaP쪺~|A[ihCp eһA
   LXʵ{|Q}aCQXM}֤߳ Xʵ{ɩw
   OHNBǬOvʪA]ڭ̤H̦b ~W󪺤PC
   
   O:
   
   Ķ̫: b½Ķg峹L{A@JG½Ķ@bӭ@̭ץ 
   ssƪpC]AĶi঳½ĶPοrBAнеo {~a
   誺BͨӫH [13]linuxer.bbs@cis.nctu.edu.tw ڡAHKץA±z!

References

   1. mailto:linuxer.bbs@cis.nctu.edu.tw
   2. ftp://hyper.stanford.edu/pub/pcmcia/doc
   3. http://hyper.stanford.edu/HyperNews/get/pcmcia/home.html
   4. ftp://sunsite.unc.edu/pub/Linux/kernel/v2.0
   5. ftp://tsx-11.mit.edu/pub/linux/sources/system/v2.0
   6. ftp://ftp.cs.unc.edu/pub/users/faith/linux
   7. http://www-uk.hpl.hp.com/people/jt/Linux/Wavelan.html
   8. file://localhost/tmp/zh-sgmltools.32013/PCMCIA-HOWTO.txt.html#timing
   9. file://localhost/tmp/zh-sgmltools.32013/PCMCIA-HOWTO.txt.html#new-card
  10. file://localhost/tmp/zh-sgmltools.32013/PCMCIA-HOWTO.txt.html#new-card
  11. http://hyper.stanford.edu/hypernews/get/pcmcia/xircom.html
  12. http://hyper.stanford.edu/HyperNews/get/pcmcia/home.html
  13. mailto:linuxer.bbs@cis.nctu.edu.tw
