Opis sterownik�w do PCMCIA
 Autor: David Hinds, [email protected]
 v1.105, 9 Wrze�nia 1997
 WWeerrssjjaa ppoollsskkaa:: BBaarrttoosszz MMaarruusszzeewwsskkii BB..MMaarruusszzeewwsskkii@@jjttzz..oorrgg..ppll
 v2.0, 13 Grudnia 1997

 Dokument ten opisuje jak zainstalowa� i u�ywa� Card Services PCMCIA w
 Linux-ie oraz odpowiada na niekt�re cz�sto zadawane pytania.
 Najnowsz� wersj� orygina�u tego dokumentu mo�na zawsze znale�� pod
 adresem hyper.stanford.edu. Wersja HTML znajduje si� pod adresem
 hyper.stanford.edu/HyperNews/get/pcmcia/home.html <http://hyper.stan
 ford.edu/HyperNews/get/pcmcia/home.html> Dokument ten zosta� napisany
 w standardzie ISO-8859-2.  Nowsza wersja zawiera uaktulanione wskaza�
 nia na katalog zawieraj�cy j�dro na ftp.icm.edu.pl. Kolejna wersja
 jest uaktualnieniem do obecnej wersji orygina�u.
 ______________________________________________________________________

 Table of Contents:

 1.      Informacje og�lne i wymagania sprz�towe.

 1.1.    Wprowadzenie.

 1.2.    Prawa autorskie i Disclaimer.

 1.3.    Jaka jest najnowsza wersja i sk�d mog� j� wzi�� ?

 1.4.    Jakie systemy s� obs�ugiwane ?

 1.5.    Jakie karty PCMCIA s� obs�ugiwane?

 1.6.    Kiedy moja nowa karta b�dzie obs�ugiwana ?

 1.7.    Listy dyskusyjne.

 2.      Kompilacja, instalacja i konfiguracja.

 2.1.    Wymagania i ustawienia j�dra.

 2.2.    Instalacja.

 2.3.    Post-instalacja dla system�w u�ywaj�cych skrypt�w
 inicjacyjnych a'la BSD.

 2.4.    Post-instalacja dla system�w u�ywaj�cych skrypt�w
 inicjacyjnych a'la SYS V.

 2.5.    Opcje konfiguracji specyficzne dla danego systemu.

 2.6.    Problemy podczas �adowania modu��w j�dra.

 2.7.    Problemy z przerwaniem zmiany statusu karty.

 2.8.    Problemy z identyfikacj� karty.

 2.9.    Dlaczego nie dystrybujesz binari�w do PCMCIA ?

 2.10.   Dlaczego ten pakiet jest taki wielki ?

 3.      Stosowanie i zalety.

 3.1.    Narz�dzia do monitorowania urz�dze� PCMCIA.

 3.2.    Przegl�d skrypt�w konfiguracyjnych PCMCIA.

 3.3.    Adaptery sieciowe PCMCIA.

 3.3.1.  Wyb�r transceiver-a.

 3.3.2.  Komentarze na temat konkretnych kart.

 3.3.3.  Diagnozowanie problem�w z kartami sieciowymi.

 3.4.    Urz�dzenia szeregowe i modemy PCMCIA.

 3.4.1.  Diagnozowanie problem�w z urz�dzeniami szeregowymi.

 3.5.    Adaptery PCMCIA SCSI.

 3.5.1.  Diagnozowanie problem�w z kartami SCSI.

 3.6.    Karty pami�ci PCMCIA.

 3.6.1.  U�ywanie kart pami�ci "flash".

 3.7.    Karty PCMCIA nap�d�w ATA/IDE.

 3.7.1.  Diagnozowanie problem�w z adapterami ATA/IDE.

 3.8.    Karty wielofunkcyjne.

 3.9.    Kiedy mo�na bezpiecznie w�o�y� albo wyj�� kart� PCMCIA ?

 3.10.   Card Services i Advanced Power Management.

 3.11.   Jak mam wy��czy� kart� PCMCIA bez wyjmowania jej  ?

 3.12.   Jak usuwam sterowniki PCMCIA z pami�ci ?

 4.      Zaawansowane tematy.

 4.1.    Alokoacja zasob�w dla urz�dze� PCMCIA.

 4.2.    Jak zrobi� dwie r�ne konfiguracje urz�dze� do domu i pracy ?

 4.3.    Startowanie z urz�dzenia PCMCIA.

 4.3.1.  Skrypt-pomocnik pcinitrd.

 4.3.2.  Tworzenie dyskietki startowej z initrd.

 4.3.3.  Instalacja obrazu initrd na nap�dach bez Linux-a.

 5.      Jak radzi� sobie z nieobs�ugiwanymi kartami.

 5.1.    Konfiguracja nieobs�ugiwanych kart.

 5.2.    Jak mam doda� obs�ug� dla karty kompatybilnej z NE2000 ?

 5.3.    Interfejs PCMCIA do dyskietek.

 5.4.    Co jest z obs�ug� kart Xircom ?

 6.      Wskaz�wki do �ledzenia (debugging) i informacje do
 programowania.

 6.1.    Jak mog� wys�a� pomocny list o b��dzie ?

 6.2.    Informacje na temat niskopoziomowego �ledzenia PCMCIA.

 6.3.    Jak mam napisa� sterownik Card Services dla nowej karty ?

 6.4.    Wskaz�wki dla autor�w sterownik�w klient�w PCMCIA.

 6.5.    Od t�umacza.
 ______________________________________________________________________

 11..  IInnffoorrmmaaccjjee oogg��llnnee ii wwyymmaaggaanniiaa sspprrzz��ttoowwee..

 11..11..  WWpprroowwaaddzzeenniiee..

 Card Services dla Linux-a to kompletny pakiet obs�uguj�cy PCMCIA.
 Zawiera on zestaw �adowalnych modu��w j�dra, kt�re tworz� wersj�
 aplikacji interfejsowych dla PCMCIA Card Services, zestaw sterownik�w
 klient�w dla specyficznych kart, oraz demona-mened�era do kart, kt�ry
 mo�e reagowa� na wk�adanie kart i ich wyjmowanie poprzez �adowanie i
 usuwanie odpowiednich modu��w. Obs�uguje on tak�e tzw. "gor�ce
 wymiany" kart PCMCIA, tak �e karty mog� by� wk�adane i wyjmowane w
 ka�dej chwili.

 Oprogramowanie to jest w ci�g�ym rozwoju. Zawiera przypuszczalnie
 b��dy i nale�y go u�ywa� ostro�nie. Zrobi� co w mojej mocy, �eby
 poprawi� b��dy zg�aszane do mnie, ale je�li nie powiesz mi o takim, to
 mog� si� o nim nigdy nie dowiedzie�. Je�li ju� u�yjesz tego
 oprogramowania, mam nadziej�, �e wy�lesz mi swoje do�wiadczenia, z�e
 czy dobre !

 Je�li masz jakie� sugestie na temat polepszenia tego dokumentu, daj mi
 zna� [email protected].

 11..22..  PPrraawwaa aauuttoorrsskkiiee ii DDiissccllaaiimmeerr..

 Copyright (c) 1996, 1997 David A. Hinds

 Dokument tez mo�e by� reprodukowany lub dystrybuowany bez mojej
 wyra�nej zgody. Wersje zmodyfikowane, w��czaj�c t�umaczenia na inne
 j�zyki, mog� by� wolno dystrybuowane, zak�adaj�c, �e s� jasno
 identyfikowane jako takie, i ta uwaga o prawach autorskich jest w nich
 zawarta.

 Dokument ten mo�e by� zawarty w dystrybucjach komercyjnych bez mojej
 wyra�nej zgody. Poniewa� nie jest to wymagane chcia�bym by�
 powiadomiony o takowych dzia�aniach. Je�li zamierzasz rozprowadza� ten
 dokument jako prac� wydawan�, skontaktuj si� ze mn�, aby upewni� si�,
 �e masz najnowsz� wersj�.

 Dokument ten jest rozprowadzany "takim jakim jest", bez wyra�nych czy
 wynikaj�cych gwarancji. U�ywaj informacji zawartych tutaj na swoje
 w�asne ryzyko.

 11..33..  JJaakkaa jjeesstt nnaajjnnoowwsszzaa wweerrssjjaa ii sskk��dd mmoogg�� jj�� wwzzii���� ??

 Bie��c� g��wn� wersj� Card Services jest wersja 2.9, a pomniejsze
 uaktualnienia czy poprawki b��d�w s� numerowane jako 2.9.1, 2.9.2 itd.

 Kod �r�d�owy najnowszej wersji jest dost�pny pod adresem
 hyper.stanford.edu. Nazywa si� _p_c_m_c_i_a_-_c_s_-_2_._9_._?_._t_a_r_._g_z.  B�dzie tam
 przewa�nie kilka wersji. Z regu�y trzymam najnowsz� podwersj� wersji
 g��wnej. Nowe wersje g��wne mog� zawiera� wzgl�dnie nieprzetestowany
 kod, tak wi�c trzymam tak�e najnowsz� wersj� poprzedniej wersji
 g��wnej jako wzgl�dn� stabiln� wersj�, do kt�rej mo�na si� cofn��;
 bie��c� tak� wersj� jest 2.8.23. To ju� zale�y od ciebie czy
 zdecydujesz si� na wersj� najnowsz� z 2.9.x czy na 2.8.23; w pliku
 _C_H_A_N_G_E_S znajduj� si� najwa�niejsze r�nice.

 Adres hyper.stanford.edu jest mirrorowany pod adresem sunsite.unc.edu
 w katalogu /pub/Linux/kernel/pcmcia.  [Od t�umacza.]Serwer ten z kolei
 jest mirrorowany w Polsce pod adresem ftp.icm.edu.pl.
 Postaram si� te� umieszcza� g��wne wersje na tsx-11.mit.edu w katalogu
 /pub/linux/packages/laptops/pcmcia teraz i p�niej.

 Je�li nie czujesz si� na si�ach, �eby skompilowa� sterowniki do
 PCMCIA, w wersji bie��cej s� zawarte pre-kompilowane sterowniki w
 najpopularniejszych dystrybucjach: Slackware, Red Hat, Caldera i
 Yggdrasil, mi�dzy innymi.

 11..44..  JJaakkiiee ssyysstteemmyy ss�� oobbss��uuggiiwwaannee ??

 Kod ten powinien dzia�a� na prawie wszystkich laptopach nadaj�cych si�
 do Linux-a. Obs�ugiwane s� wszystkie popularne kontrolery PCMCIA
 w��czaj�c w to Intel, Cirrus, Vadem, VLSI, Ricoh i Databook.
 Kontrolery ustawiane u�ywane w IBM i Toshiba-ch tak�e s� obs�ugiwane.
 Doki (docks) kart PCMCIA dla system�w typu desktop tak�e powinny
 dzia�a� tak d�ugo, dop�ki s� tego typu, �e wk�ada si� je bezpo�rednio
 do szyny ISA, ni� poprzez kontrolery SCSI-PCMCIA czy IDE-PCMCIA.

 Kontroler Motorola 6AHC05GA u�ywany w niekt�rych laptopach Hyundaia
 nie jest obs�ugiwany. Kontrolery ustawiane w HP Omnibook 600 nie s�
 obs�ugiwane. Kontroler mostka PCI-CardBus (od SMC, Ricoh-a, Cirrus-a i
 TI) jest obecnie obs�ugiwany tylko w przypadku trybu 16-bitowego, a i
 tak obs�uga ta jest ci�gle troch� eksperymentalna.

 11..55..  JJaakkiiee kkaarrttyy PPCCMMCCIIAA ss�� oobbss��uuggiiwwaannee??

 Wersja obecna zawiera sterowniki dla r�nych kart ethernetowych,
 sterownik do modemu, kart port�w szeregowych, niekt�rych kontroler�w
 SCSI, sterownik do kart ATA/IDE oraz sterowniki do kart pami�ci kt�re
 powinny obs�ugiwa� wi�kszo�� kart SRAM i niekt�re karty flash. Plik
 _S_U_P_P_O_R_T_E_D_._C_A_R_D_S zawarty w ka�dej wersji Card Services zawiera
 wszystkie karty jakie dzia�aj� w przynajmniej jednym w�a�ciwym
 systemie.

 Prawdopodobie�stwo tego, �e karta nie wymieniona w tym pliku b�dzie
 dzia�a� zale�y od typu tej karty. Zasadniczo wszystkie modemy powinny
 dzia�a� z zawartym sterownikiem. Niekt�re karty sieciowe mog� dzia�a�
 je�li s� wersjami OEM karty obs�ugiwanej. Inne typy kart IO (bufory
 ramkowe, karty d�wi�kowe itd.) nie b�d� dzia�a� dop�ki kto� nie
 napisze odpowiednich sterownik�w.

 11..66..  KKiieeddyy mmoojjaa nnoowwaa kkaarrttaa bb��ddzziiee oobbss��uuggiiwwaannaa ??

 Niestety, nikt mi z regu�y nie p�aci za pisanie sterownik�w, tak wi�c
 je�li chcesz mie� sterownik do swojej ulubionej karty, b�dziesz
 przypuszczalnie musia� zrobi� cz�� roboty na w�asn� rek�. W wersji
 idelanej, chcia�bym si� kierowa� w stron� modelu zbli�onego do j�dra
 Linux-a, gdzie b�d� g��wnie odpowiedzialny za "rdze�" kodu do PCMCIA a
 inni autorzy pisaliby sterowniki do konkretnych urz�dze�. W pliku
 SUPPORTED.CARDS wspomniane s� niekt�re karty, dla kt�rych sterownik
 jest w trakcie pisania. B�d� si� stara� pom�c gdzie tylko mog� ale
 miej na uwadze, �e �ledzenie (debugging) sterownik�w do urz�dze� w
 j�drze poprzez e-mail nie jest zbytnio efektywne.

 Producenci zainteresowani pomoc� w tworzeniu obs�ugi ich urz�dze� mog�
 si� ze mn� skontaktowa� w sprawie konkret�w.

 11..77..  LLiissttyy ddyysskkuussyyjjnnee..

 Kiedy� zajmowa�em si� baz� danych i list� dyskusyjn� na temat
 u�ytkownik�w Linux-a na PCMCIA. Ostatnio zmieni�em swoj� stron� WWW z
 informacjami na temat PCMCIA w stron� "HyperNews", ze zbiorem
 wiadomo�ci na temat PCMCIA w Linux-ie. S� listy na temat instalacji i
 konfiguracji, na temat r�nych typ�w kart oraz na temat programowania
 i �ledzenia (debug) pod PCMCIA. Strona z informacjami na temat PCMCIA
 jest pod adresem
 http://hyper.stanford.edu/HyperNews/get/pcmcia/home.html
 <http://hyper.stanford.edu/HyperNews/get/pcmcia/home.html>.
 U�ytkownicy mog� ustawi� sobie opcj� informowania poprzez email o
 nowych odpowiedziach na konkretne pytania, albo o wszystkich nowych
 wiadomo�ciach w danej kategorii. Mam nadziej�, �e stanie si� to
 u�ytecznym archwium informacji dla pyta�, kt�re wychodz� poza tre��
 tego HOWTO.

 Jest lista dyskusyjna, kt�rej tematem jest Linux na laptopie - lista
 "linux-laptop". Aby uzyska� wi�cej informacji, wy�lij list zawieraj�cy
 s�owo "help" na adres [email protected]. Aby zapisa� si� na
 t� list�, wy�lij list zawieraj�cy �a�cuch "subscribe linux-laptop" na
 ten sam adres. Lista ta mo�e by� dobrym forum dyskusyjnym na temat
 Linux-a na PCMCIA.

 Na Stronie Domowej Linux-a na Laptopy
 http://www.cs.utexas.edu/users/kharker/linux-laptop znajduje si� wiele
 odwo�a� do adres�w, na kt�rych s� informacje na temat konfigurowania
 Linux-a na konkretnych typach laptop�w. Jest tak�e przeszukiwalna baza
 danych na temat konfiguracji systemu.

 22..  KKoommppiillaaccjjaa,, iinnssttaallaaccjjaa ii kkoonnffiigguurraaccjjaa..

 22..11..  WWyymmaaggaanniiaa ii uussttaawwiieenniiaa jj��ddrraa..

 Zanim zaczniesz, powiniene� pomy�le� czy rzeczywi�cie musisz samemu
 skompilowa� pakiet PCMCIA. Wszyskie popularne dystrybucje Linux-a s�
 dostarczane wraz z pakietami zawieraj�cymi skompilowane sterowniki dla
 PCMCIA. Og�lnie musisz tylko zainstalowa� od nowa sterowniki je�li
 potrzebujesz jakiej� nowej cechy obecnych sterownik�w albo je�li
 zaktualizowa�e� czy przekonfigurowa�e� j�dro tak, �e przesta�o by�
 kompatybilne ze sterownikami przychodz�cymi z dystrybucj�. Chocia�
 kompilacja pakietu PCMCIA nie jest trudna technicznie, to wymaga
 jednak pewnego obycia z Linux-em.

 Nast�puj�ce elementy powinny by� zainstalowane w twoim systemie zanim
 zaczniesz instalowa� PCMCIA:

 �  Jedno z nast�puj�cych j�der:  1.2.8 do 1.2.13, 1.3.30, 1.3.37,
    1.3.39 do 1.3.99, 1.99.* (czyli, pre-2.0), 2.0.* lub 2.1.*.

 �  Bie��ca wersja pakietu z modu�ami i narz�dziami do nich.

 �  (Opcjonalnie) "Forms" - interface dla u�ytkownika pod X11.

 Wersja najnowsza wymaga j�dra w wersji 1.2.8 lub wy�szej, albo j�dra z
 serii testowych 1.3.30 lub wy�sze, 1.3.38 jest definitywnie popsute, a
 1.3.31 do 1.3.36 nie s� przetestowane.  Wymaga tak�e wzgl�dnie �wie�ej
 wersji narz�dzi do modu��w. Nie ma �at na j�dro specyficznych dla
 PCMCIA.

 Musiz mie� pe�ne drzewo �r�de� j�dra, nie tylko aktualny obraz j�dra,
 aby skompilowa� pakiet PCMCIA. Modu�y PCMCIA zawieraj� niekt�re
 odwo�ania do plik�w ze �r�de� j�dra. O ile ty mo�esz chcie�
 skompilowa� nowe j�dro, �eby usun�� niepotrzebne sterowniki,
 instalacja PCMCIA nie wymaga tego.

 Bie��ce stabilne wersje �r�de� j�dra oraz �aty do niego s� dost�pne
 pod adresem ftp://ftp.icm.edu.pl/pub/Linux/kernel/v2.0. Bie��ca wersja
 narz�dzi jest pod tym samym adresem w pliku modules-2.0.0.tgz.  J�dra
 w wersji rozwojowej znajduj� si� pod adresem
 ftp://ftp.icm.edu.pl/pub/Linux/kernel/v2.1.

 W pliku Documentation/Changes znajduj� si� opisy wersji wszystkich
 rodzaj�w innych sk�adnik�w systemu, kt�re s� wymagane dla tej wersji
 j�dra. Mo�esz sprawdzi� t� list� i upewni� si� czy tw�j system jest
 aktualny, szczeg�lnie je�li ostatnio uaktualnia�e� j�dro. Je�li
 u�ywasz j�dra 2.1, upewnij si�, �e u�ywasz poprawnej kombinacji
 bibliotek dzielonych i narz�dzi do modu��w. Najnowsze wersje narz�dzi
 do modu��w, tak samo jak wersje dla starszych j�der mo�na znale�� pod
 adresem http://www.pi.se/blox/modules.

 Je�li planujesz u�ywanie karty ethernetowej PCMCIA podczas
 konfigurowania twojego j�dra powiniene� w��czy� obs�ug� sieci, ale
 wy��cz obs�ug� zwyk�ych kart sieciowych, w��czaj�c w to "pocket and
 portable adapters". Sterowniki do kart sieciowych PCMCIA s�
 zaimplementowane jako �adowalne modu�y. Jakiekolwiek sterowniki
 wkompilowane w twoje j�dro b�d� tylko zabiera� miejsce.

 Je�li chcesz u�ywa� SLIP-a, PPP czy PLIP-a musisz albo skonfigurowa�
 twoje j�dro z w��czonymi tymi opcjami, albo u�y� modu��w �adowalnych
 tych sterownik�w. Niestety w j�drze w wersji 1.2.X nie mo�na
 skompilowa� pewnych opcji jako modu�y �adowalne (jak np. kompresja
 SLIP-a) wi�c najlepiej b�dzie je�li wkompilujesz ten sterownik do
 j�dra je�li go potrzebujesz.

 Je�li chcesz u�ywa� kontrolera Token Ring do PCMCIA, musisz
 wkompilowa� obs�ug� Token Ring do swojego j�dra - "Token Ring driver
 support", ale powiniene� wy��czy� CONFIG_IBMTR.

 Je�li chcesz u�ywa� kontrolera IDE PCMCIA, musisz w��czy� opcj�
 CONFIG_BLK_DEV_IDE_PCMCIA, w j�drach w wersji 1.3.72 do 2.1.7. Starsze
 j�dra nie obs�uguj� urz�dze� IDE. nowsze j�dra nie wymagaj�
 specjalnych ustawie�.

 Je�li b�dziesz u�ywa� kontrolera SCSI PCMCIA, powiniene� w��czy� opcj�
 CONFIG_SCSI podczas konfiguracji j�dra. W��cz tak�e wszelkie
 sterowniki "top level" (dyski SCSI, ta�my, CD-ROM-y, generic), kt�rych
 spodziewasz si� u�ywa�. Wszystkie sterowniki "low level" dla
 konkretnych kontroler�w powinny by� wy��czone, poniewa� b�d� tylko
 zajmowa� miejsce.

 Je�li chcesz zmodularyzowa� sterownik, kt�ry jest potrzebny do
 urz�dzenia PCMCIA, musisz zmodyfikowa� plik /etc/pcmcia/config, aby
 poda�, kt�re modu�y maj� by� za�adowane dla kt�rych typ�w kart. Na
 przyk�ad, je�li sterownik szeregowy jest zmodularyzowany, wtedy
 m�g�by� zmieni� definicj� urz�dzenia szeregowego na:

    device "serial_cs"
    class "serial" module "misc/serial", "serial_cs"

 Pakiet ten zawiera narz�dzie do podawania statusu karty oparte na X11
 - cardinfo. Narz�dzie to jest oparte na wolno dystrybuowanym
 interfejsie zwanym "Forms Library", kt�re b�dziesz musia� zainstalowa�
 przed stworzeniem cardinfo.  Dystrybucja binarna jest na
 hyper.stanford.edu. S� tam wersje a.out oraz ELF.  B�dziesz tak�e
 musia� mie� wszystkie normalne pliki nag��wkowe pod X i biblioteki.

 22..22..  IInnssttaallaaccjjaa..

 Oto streszczenie procesu instalacji:

 �  Rozpakuj pcmcia-cs-2.9.?.tar.gz w /usr/src.

 �  Uruchom make config w nowym katalogu pcmcia-cs-2.9.?

 �  Uruchom make all, potem make install.

 �  Ustaw skrypty startowe dla PCMCIA i pliki opcji w /etc/pcmcia
    odpowiednio dla twojego systemu.

 Je�li planujesz zainstalowa� jakie� dodatkowe sterowniki klienta nie
 zawarte w dystrybucji PCMCIA, rozpakuj ka�dy z nich w g��wnym katalogu
 �r�de� PCMCIA. Potem post�puj zgodnie z normalnymi instrukcjami
 kompilacji. Dodatkowe sterowniki zostan� skompilowane i zainstalowane
 automatycznie.

 Uruchomienie make config zapyta o kilka opcji konfiguracyjnych i
 sprawdzi tw�j system, aby zweryfikowa� czy spe�nia on wszystkie
 wymagania instalacji obs�ugi PCMCIA. W wi�kszo�ci przypadk�w, b�dziesz
 po prostu akceptowa� wszystkie domy�lne opcje. Upewnij si�, �e
 dok�adnie sprawdzi�e� komunikaty wyj�ciowe w razie b��d�w.

 Je�li kompilujesz zestaw PCMCIA do instalacji na inn� maszyn�, podaj
 alternatywny katalog docelowy kiedy zostaniesz zapytany przez skrypt
 konfiguracyjny. Powinna to by� �cie�ka bezwzgl�dna.  Wszystkie
 narz�dzia do PCMCIA zostan� zainstalowane wzgl�dem tego katalogu.
 B�dziesz m�g� nast�pnie "zarchiwizowa�" ten katalog poleceniem tar i
 skopiowa� go na maszyn� docelow�, a nast�pnie rozpakowa� wzgl�dem jej
 katalogo g��wnego, aby zainstalowa� wszystko we w�a�ciwym miejscu.

 Je�li "cross-kompilujesz" na innej maszynie, mo�esz poda� alternatywne
 nazwy kompilatora i linkera. Mo�e to by� tak�e pomocne na systemach z
 pomieszan� architektur� a.out i ELF. Skrypt zapyta tak�e o dodatkowe
 opcje �ledzenia dla kompilatora.

 Niekt�re z narz�dzi wspieraj�cych (cardctl i cardinfo) mog� by�
 skompilowane w formie "safe" (bezpiecznej) lub "trusting" (ufaj�cej).
 Forma bezpieczna nie pozwala u�ytkownikom innym ni� root na
 modyfikacj� konfiguracji karty.  Forma ufaj�ca pozwala zwyk�emu
 u�ytkownikowi na zawieszenie, odwieszenie i reset karty oraz na zmian�
 bie��cej konfiguracji.  Skrypt konfiguracyjny zapyta ci� czy chcesz
 skompilowa� narz�dzia jako "safe" czy "trusting"; warto�ci� domy�ln�
 jest "safe".

 Jest kilka opcji konfiguracji j�dra kt�re maj� wp�ywa na narz�dzia do
 PCMCIA. Skrypt konfiguracyjny mo�e je wywnioskowa� z dzia�aj�cego
 j�dra (najpopularniejszy przypadek). Alternatywnie, je�li kompilujesz
 do instalacji na inn� maszyn� mo�e przeczyta� konfiguracj� z drzewa
 �r�de� j�dra, albo ka�da opcja mo�e by� podana interaktywnie.

 Uruchomienie make all a potem make install stworzy i nast�pnie
 zainstaluje modu�y do j�dra i programy narz�dziowe.  Modu�y do j�dra
 s� instalowane w /lib/modules/<wersja>/pcmcia.  Programy cardmgr i
 cardctl s� instalowane w /sbin.  Je�li tworzony jest cardinfo, to
 instalowany jest on w /usr/bin/X11.

 Pliki konfiguracyjne zostan� zainstalowane w /etc/pcmcia.  Je�li
 instalujesz na starej wersji, twoje stare pliki konfiguracyjne zostan�
 zarchiwizowane przed skasowaniem ich.  Zachowanym skryptom zostan�
 nadane rozszerzenia w stylu *.~1~, *.~2~.

 Je�li nie wiesz jakiego typu jest tw�j kontroler, to mo�esz u�y�
 narz�dzia probe z podkatalogu cardmgr, aby go wykry�. S� dwa g��wne
 typy: Databook TCIC-2 i kompatybilne  z Intel i82365SL.

 Demon na poziomie u�ytkownika obs�uguje w�o�enie i wyj�cie karty.
 Nazywa si� on cardmgr. Jest podobny w funkcjonowaniu do wcze�niejszej
 wersji pcmciad Barry'ego Jaspana. Cardmgr czyta plik konfiguracyjny
 opisuj�cy znane karty PCMCIA z /etc/pcmcia/config. W pliku tym zawarte
 jest jakie zasoby mog� by� zaalokowane dla u�ycia przez urz�dzenia
 PCMCIA, i mog� by� zmodyfikowane dla twojego systemu. Zobacz stron� w
 podr�czniku systemowym "man" na temat pcmcia, aby dowiedzie� si�
 wi�cej na temat tego pliku.

 22..33..  PPoosstt--iinnssttaallaaccjjaa ddllaa ssyysstteemm��ww uu��yywwaajj��ccyycchh sskkrryypptt��ww iinniiccjjaaccyyjjnnyycchh
 aa''llaa BBSSDD..

 Niekt�re dystrybucje Linux-a, w��czaj�c Slackware, u�ywaj� systemu
 skrypt�w a'la BSD. Je�li istnieje plik /etc/rc.d/rc.M, to tw�j system
 zalicza si� do tej grupy.
 Skrypt rc.pcmcia, zainstalowany w /etc/rc.d kontroluje startowanie i
 wy��czanie systemu PCMCIA.
 make install u�yje polecenia probe, aby wykry� typ twojego kontrolera
 i odpowiednio zmodyfikowa� rc.pcmcia.  Powiniene� doda� do skryptu
 startowego /etc/rc.d/rc.M lini�, kt�ra wywo�uje skrypt startowy
 PCMCIA, np. tak:

      /etc/rc.d/rc.pcmcia start

 W�a�ciwie nie ma znaczenia, gdzie umie�cisz ten plik, tak d�ugo jak
 sterowniki PCMCIA s� startowane po syslogd.

 22..44..  PPoosstt--iinnssttaallaaccjjaa ddllaa ssyysstteemm��ww uu��yywwaajj��ccyycchh sskkrryypptt��ww iinniiccjjaaccyyjjnnyycchh
 aa''llaa SSYYSS VV..

 Red Hat, Caldera i Debian maj� ten w�a�nie system. Je�li masz katalog
 /etc/init.d albo /etc/rc.d/init.d, to tw�j system jest w tej grupie.
 Skrypt rc.pcmcia zostanie zainstalowany jako /etc/rc.d/init.d/pcmcia,
 lub /etc/init.d/pcmcia. Nie ma potrzeby edytowania �adnego skryptu
 startowego, aby w��czy� PCMCIA: zostanie to zrobione automatycznie.

 Je�li istnieje katalog /etc/sysconfig, wtedy zostanie utworzony
 oddzielny plik konfiguracyjny /etc/sysconfig/pcmcia z opcjami
 startowymi. Je�li musisz zmieni� jakiekolwiek opcje modu��w (jak PCIC=
 czy PCIC_OPTS=) modyfikuj raczej ten plik konfiguracyjny ani�eli
 w�a�ciwy skrypt startowy PCMCIA. Plik ten nie zostanie skasowny przez
 kolejne instalacje.
 Niekt�re wcze�niejsze wersje u�ywa�y katalogu /etc/sysconfig/pcmcia-
 scripts zamiast /etc/pcmcia na tych platformach. Wersja bie��ca
 natomiast u�ywa /etc/pcmcia dla wszystkich system�w, a istniej�cy
 /etc/sysconfig/pcmcia-scripts przeniesie do /etc/pcmcia.

 22..55..  OOppccjjee kkoonnffiigguurraaccjjii ssppeeccyyffiicczznnee ddllaa ddaanneeggoo ssyysstteemmuu..

 Pakiet Card Services powinien automatycznie zapobiega� alokacji port�w
 IO i przerwa�, kt�re s� ju� u�ywane przez inne urz�dzenia.  Spr�buje
 on tak�e wykry� konflikty z nieznanymi urz�dzeniami, ale nie jest to w
 pe�ni godne zaufania. W niekt�rych przypadkach, muisz wyra�nie poda�
 zasoby, kt�re maj� by� niedost�pne dla danego urz�dzenia w pliku
 /etc/pcmcia/config.opts.

 Oto niekt�re ustawienia zasob�w dla specyficznych typ�w laptop�w.

 �  W AMS SoundPro wy��cz IRQ 10.

 �  W niekt�rych modelach TravelPro 5300 u�yj adres�w pami�ci
    0xc8000-0xcffff.

 �  W BMX 486DX2-66 wy��cz IRQ 5 i 9

 �  W Chicony NB5 u�yj adres�w pami�ci 0xda000-0xdFFFF.

 �  Na Compaq Presario 1020, wy��cz porty 0x2F8-0x2FF, IRQ 3 i IRQ 5.

 �  W HP Omnibook 4000C wy��cz porty 0x300-0x30F.

 �  Na Micron Millenia Transport, wy��cz IRQ 5, IRQ 9.

 �  W NEC Versa M, wy��cz IRQ 9 i porty 0x2E0-2FF.

 �  W NEC Versa P/75 wy��cz IRQ 5 i 9.

 �  W NEC Versa S wy��cz IRQ 9 i 12.

 �  W NEC Versa seria 6000 wy��cz porty 0x300-0x33f, IRQ 9 i 10.

 �  W ProStar 9200, Altima Virage i Acquiline Hurricane DX4-100 wy��cz
    IRQ 5 i porty 0x330-0x35f. U�yj mo�e adres�w pami�ci
    0xd8000-0xdffff.

 �  W Siemens Nixdorf SIMATIC PG 720C u�yj adres�w pami�ci
    0xc0000-0xcffff i port�w 0x300-0x3bf.

 �  W TI TravelMate 5000 u�yj adres�w pami�ci 0xd4000-0xdffff.

 �  W Toshiba T4900 CT wy��cz IRQ 5, porty 0x2E0-0x2E8 i 0x330-0x338.

 �  W Twinhead 5100, HP 4000, Sharp PC-8700 i PC-8900 wy��cz IRQ 9
    (d�wi�k) i 12

 �  W MPC seria 800 wy��cz IRQ i porty 0x300-0x30f dla CD-ROM-u.

 Niekt�re kontrolery PCMCIA maj� opcjonalne zalety, kt�re mog� by�
 zaimplementowane w danym systemie, ale nie musz�. Generalnie jest
 niemo�liwe dla sterownika gniazdka (socket driver), aby wykry� czy te
 zalety s� zaimplementowane. Sprawd� stron� w podr�czniku systemowym na
 temat swojego sterownika, aby zobaczy� jakie opcjonalne zalety mog�
 by� w��czone.

 W kilku przypadkach polecenie probe nie b�dzie w stanie wykry�
 automatycznie typu twojego kontrolera. Je�li masz system Halikan NBD
 486, to jego kontroler TCIC-2 znajduje si� w niezwyk�ym miejscu:
 b�dziesz musia� zmodyfikowa� rc.pcmcia, aby za�adowa� modu� tcic oraz
 ustawi� PCIC_OPTS na tcic_base=0x2C0.

 Sterowniki gniazda typu "low level" tcic i i82365 maj� liczne
 parametry do timing-�w szyny, kt�re mo�e b�dzie trzeba ustawi� dla
 system�w ze szczeg�lnie szybkimi procesorami. Symptomy problem�w z
 timing-ami zawieraj� problemy z wykryciem karty, zawi�ni�cia przy
 du�ym za�adowaniu systemu, du�e �rednie b��d�w, albo z�a wydajno��
 urz�dze�. Sprawd� odpowiednie strony w podr�czniku systemowym, aby
 dowiedzie� si� wi�cej szczeg��w. A tu jest kr�tkie podsumowanie:

 �  Kontrolery Cirrus maj� liczne konfigurowalne parametry timing-�w.
    Najwa�niejszy wydaje si� by� cmd_time, kt�ry okre�la d�ugo�� cyklu
    szyny PCMCIA. Szybkie systemy 486 (np.  DX4-100) wydaj� si�
    zwi�ksza� wydajno�� przy zwi�kszeniu tego parametru z domy�lnej
    warto�ci 6 na 12 czy 16.

 �  Kontroler Cirrus PD6729 PCI ma parametr fast_pci, kt�ry powinien
    by� ustawiony je�li szybko�� szyny PCI jest wi�ksza ni� 25 MHz.

 �  W kontrolerach Vadem VG-468 i Databook TCIC-2 parametr async_clock
    zmienia wzgl�dne taktowanie szyny PCMCIA i cykle szyny host.
    Ustawienie tego parametru spowoduje dodanie stan�w oczekiwania na
    niekt�re operacje. Chocia� jeszcze nie s�ysza�em o jakim� laptopie,
    kt�ry by tego potrzebowa�.

 �  Modu� pcmcia_core posiada parametr cis_speed, kt�ry zmienia
    pr�dko�� pami�ci u�ywan� dla dost�pu do Card Information Structure
    (CIS). Na niekt�rych systemach z szybkimi zegarami szynowymi,
    zwi�kszanie tego parametru (czyli zwalnianie dost�pu do kart) mo�e
    przynie�� po�ytek przy problemach z rozpoznaniem karty.

 �  To nie jest sprawa timing-�w, ale je�li masz wi�cej ni� jeden
    kontroler PCMCIA w twoim systemie, albo jakie� dodatkowe gniazda w
    stacji dokowania (docking station), powiniene� za�adowa� modu�
    i82365 z parametrem extra_sockets ustawionym na 1.

 Wszystkie te opcje powinny by� skonfigurowane przez modyfikowanie
 pocz�tku pliku /etc/rc.d/rc.pcmcia. Na przyk�ad:

    # Albo i82365 albo tic
    PCIC=i82365
    # Wstaw tu parametry timing-�w dla sterownika gniazd
    PCIC_OPTS="cmd_time=12"
    # Wstaw tu opcje pcmcia_core
    CORE_OPTS="cis_speed=500"

 Oto niekt�re ustawienia timing-�w dla specyficznych sytem�w:

 �  W ARM Pentium-90 albo Midwest Micro Soundbook Plus u�yj
    freq_bypass=1 cmd_time=8.

 �  W Midwest Micro Soundbook Elite u�yj cmd_time=12.

 �  W Gateway Liberty spr�buj cmd_time=16.

 W niekt�rych systemach u�ywaj�cych kontrolera Cirrusa, w��czaj�c NEC
 Versa M, BIOS ustawia kontroler w specyficzny stan zawieszenia podczas
 startu systemu. W tych systemach, polecenie probe nie powiedzie si�.
 Je�li tak si� zdarzy, zmodyfikuj plik /etc/rc.d/rc.pcmcia r�cznie tak:

    # Wstaw tu parametry timing-�w dla sterownika gniazd
    PCIC=i82365
    # Wstaw tu opcje pcmcia_core
    PCIC_OPTS="wakeup=1"

 22..66..  PPrroobblleemmyy ppooddcczzaass ��aaddoowwaanniiaa mmoodduu����ww jj��ddrraa..

 Skrypt konfiguracyjny normalnie upewni si� czy modu�y PCMCIA s�
 kompatybilne z twoim j�drem. Tak wi�c, problemy podczas �adownia
 modu��w wskazuje z regu�y na to, �e u�ytkownik ingerowa� w jaki�
 spos�b w normalny proces instalacji. Niekt�re z tych problem�w s�
 wysy�ane bezpo�rednio na konsol� Linux-a. Inne b��dy s� zapisywane w
 pliku "log-file", zwykle jest to /usr/adm/messages albo
 /var/log/messages. W zale�no�ci od konfiguracji twojego syslogd,
 niekt�re komunikaty mog� by� zapisane do innych plik�w, kt�re zwykle
 znajduj� si� tak�e w /usr/adm czy var/log. Aby wy�ledzi� problem,
 upewnij si�, �e sprawdzi�e� obie lokalizacje.

 Niekt�re modu�y PCMCIA wymagaj� serwis�w j�dra, kt�re mog�, ale nie
 musz� by� obecne, zale�nie od konfiguracji j�dra. Na przyk�ad,
 sterowniki kart SCSI wymagaj� skonfigurowanej obs�ugi SCSI w j�drze, a
 sterowniki sieci wymagaj� skonfigurowania sieci w j�drze. Je�li w
 j�drze brakuje potrzebnego serwisu insmod mo�e twierdzi�, �e s�
 niezdefiniowane symbole i nie za�adowa� modu�u.

 Je�li insmod zwraca b��d "wrong version", oznacza to, �e modu� by�
 skompilowany dla innej wersji j�dra ni� to, kt�re akurat dzia�a. Mo�e
 to si� pojawi� je�li modu�y skompilowane na jednej maszynie s�
 kopiowane na drug� z inn� konfiguracj�, albo je�li j�dro jest
 rekonfigurowane po tym, jak pakiet PCMCIA zosta� zainstalowany.

 Innym �r�d�em b��d�w podczas �adowana modu��w mo�e by� to, �e modu�y i
 j�dra by�y skompilowane z r�nymi ustawieniami CONFIG_MODVERSIONS.
 Je�li modu� z wkompilowanym sprawdzaniem wersji jest �adowany do j�dra
 bez sprawdzania wersji, insmod zwr�ci b��d "undefined symbols".

 Ostatecznie, wzgl�dnie nowe wersje binutils s� niekompatybilne ze
 starszymi wersjami narz�dzi do modu��w, i mog� powodowa�, �e s�
 zwracane takie w�a�nie b��dy. Najcz�stszym symptomem jest b��d o
 niezdefiniowaniu gcc_compiled. Je�li masz takie b��dy, od�wie�
 narz�dzia do modu��w do najnowszej wersji, dost�pnych z
 ftp.icm.edu.pl.

 22..77..  PPrroobblleemmyy zz pprrzzeerrwwaanniieemm zzmmiiaannyy ssttaattuussuu kkaarrttyy..

 W wi�kszo��i wypadk�w sterownik do gniazd (i82365 albo tcic)
 automatycznie wykryje i wybierze odpowiednie przerwanie, aby
 sygnalizowa� zmiany statusu karty. Automatyczne wyszukiwanie
 przerwania nie dzia�a na niekt�rych kontrolerach kompatybilnych z
 Intel-em, w��czaj�c Cirrus-a i niekt�re IBM ThinkPad. Je�li urz�dzenie
 nie jest aktywne w czasie sprawdzania, jego przerwanie mo�e tak�e
 pojawi� si� jako niedost�pne. W takich przypadkach sterownik gniazd
 mo�e wybra� przerwanie kt�re jest u�ywane przez inne urz�dzenie.

 W sterownikach i82365 i tcic mo�na u�ywa� opcji irq_list aby
 ograniczy� ilo�� wyszukiwanych przerwa�. Lista ta ogranicza zbi�r
 przerwa�, kt�re mog� by� u�yte przez karty PCMCIA oraz do
 monitorowania zmian statusu karty. Opcja cs_irq mo�e by� u�yta, aby
 wyra�nie okre�li� przerwanie, kt�rego nale�y u�y� do monitorowania
 zmian statusu karty.

 Je�li nie mo�esz znale�� numeru przerwania, kt�re dzia�a, jest jeszcze
 tryb statusu "polled": oba - i82365 i tcic zaakceptuj� opcj�
 poll_interval=100, aby sprawdza� zmiany statusu karty raz na sekund�.
 Opcja ta powinna by� tak�e u�ywana je�li w twoim systemie brakuje
 dost�pnych przerwa� dla kart PCMCIA. Szczeg�lnie w systemach z wi�cej
 ni� jednym kontrolerem PCMCIA, nie ma zbytnio sensu w przeznaczaniu
 przerwa� na monitorowanie zmian statusu kart.

 Wszystkie te opcje powinny by� ustawiane w linii PCIC_OPTS= w pliku
 /etc/rc.d/rc.pcmcia albo /etc/sysconfig/pcmcia zale�nie od twojego
 systemu.

 22..88..  PPrroobblleemmyy zz iiddeennttyyffiikkaaccjj�� kkaarrttyy..

 Domy�lnie, sterowniki PCMCIA alokuj� okna pami�ci w przestrzeni
 0xC0000-0xFFFFF, po sprawdzeniu czy nie ma w niej jakich� konflikt�w z
 ROM-em czy innymi urz�dzeniami. To okno pami�ci jest podane w pliku
 /etc/pcmcia/config.opts. Sprawdzanie ma miejsce przy pierwszej pr�bie
 skonfigurowania nowej karty.  Procedura sprawdzania nie jest idioto-
 odporna, wi�c mo�liwe jest niezidentyfikowanie konfliktu. Je�li obszar
 ten jest u�ywany przez inne urz�dzenia w twoim systemie, karty mog�
 nie zosta� zidentyfikowane poprawnie. Przy uk�adach kt�re to
 obs�uguj�, konflikt mo�e te� powstawa� przy przes�anianiu tego obszaru
 pami�ci.

 Klasycznym symptomem problemu z konfiguracj� okna pami�ci jest
 zidentyfikowanie wszystkich kart jako karty pami�ci. W nadzwyczajnych
 przypadkach konflikt taki mo�e powsta� z jakim� krytycznym serwisem
 systemowym, co mo�e powodowa� zawieszenia czy restarty. Je�li
 podejrzewasz taki konflikt, sprawd� najpierw czy wy��czone jest
 przes�anianie ROM-u w ustawieniach twojego sprz�tu.  Znalezienie
 dobrego okna mo�e wymaga� troch� eksperyment�w. Kilka alternatywnych
 okien to: 0xD0000-0xDFFFF, 0xC9000-0xCFFFF i 0xD8000-0xDFFFF.

 Je�li masz sterowniki DOS-owe do PCMCIA, mo�esz zobaczy� jakich
 obszar�w pami�ci one u�ywaj�. Zauwa�, �e adresy pami�ci w DOS-ie s�
 cz�sto podawane w formie segment�w, kt�ra to obcina ostatni� cyfr�
 szesnastkow� (tak, �e adres bezwzgl�dny 0xD0000 by�by podany jako
 0xD000. Upewnij si�, �e doda�e� t� jedn� cyfr� kiedy wpisywa�e�
 warto�� do pliku /etc/pcmcia/config.opts.

 Je�li problem z identyfikacj� karty nie zosta� rozwi�zany
 dopasowywaniem okien pami�ci, to prawdopodobnie jest to problem z
 "timing-ami"

 22..99..  DDllaacczzeeggoo nniiee ddyyssttrryybbuujjeesszz bbiinnaarrii��ww ddoo PPCCMMCCIIAA ??

 Dla mnie, dystrybucja binari�w jest bardzo niewygodna. Jest to sprawa
 skomplikowana poniewa� niekt�re zalety mog� by� podane dopiero w
 czasie kompilacji, oraz dlatego, �e modu�y PCMCIA s� zale�ne od
 "poprawnej" konfiguracji j�dra. Wi�c musia�bym przypuszczalnie
 dystrybu�owa� prekompilowane modu�y wraz z odpowiednimi wersjami
 j�der. Id�c dalej, prekompilowane modu�y s� najbardziej potrzebne
 kiedy instalujemy Linux-a od pocz�tku. To z regu�y wymaga ustawienia
 PCMCIA tak, �eby mo�na jej by�o u�y� w procesie instalacji dla
 konkretnej dystrybucji Linux-a. Ka�da dystrybucja Linux-a ma w�asn�
 procedur�, i nie jest dla mnie wykonalnym udost�pnia� dyskietki "boot"
 i "root" chcocia�by tylko dla tych najbardziej popularnych kombinacji
 sterownik�w i dystrybucji.

 PCMCIA jest teraz cz�ci� wi�kszo�ci wa�niejszych dystrybucji,
 w��czaj�c Red Hat, Caldera, Slackware, Yggdrasil, Craftworks oraz
 Nascent Technology.

 22..1100..  DDllaacczzeeggoo tteenn ppaakkiieett jjeesstt ttaakkii wwiieellkkii ??

 No c�, po pierwsze, to on wcale nie jest taki wielki. Wszystkie
 modu�y sterownik�w razem wzi�te zajmuj� jakie� 200k. Programy
 narz�dziowe dodaj� jeszcze jakie� 70k, a rzeczy w /etc/pcmcia zajmuj�
 jakie� 30k. Podczas dzia�ania, rdze� modu��w PCMCIA zabiera oko�o 48k
 pami�ci systemowej. Demon cardmgr z regu�y jest wyswapowywany opr�cz
 moment�w kiedy karty s� wsadzane lub wyjmowane. Ca�kowita obj�to��
 pakietu nie wiele r�ni si� od implementacji Card Services pod DOS-a.

 W por�wnaniu z DOS-owymi "w��cznikami", mo�e si� to wydawa� troch�
 przesadzone, szczeg�lnie dla ludzi, kt�rzy nie planuj� u�ywa� tych
 wszystkich zalet jakie posiada PCMCIA, jak np. zarz�dzanie zasilaniem
 czy "gor�ce wymiany". "W��czniki" mog� by� malutkie poniewa�
 generalnie obs�uguj� one ograniczon� ilo�� kontroler�w PCMCIA. Je�li
 kto� mia�by napisa� autentycznie "og�lny" "w��cznik" do modemu,
 sko�ycz�oby si� na tym, �e pojawi�aby si� tam wi�kszo�� funkcji z Card
 Services, aby obs�u�y� karty od r�nych sprzedawc�w oraz pe�ny zakres
 r�nych wariant�w kontroler�w PCMCIA.

 33..  SSttoossoowwaanniiee ii zzaalleettyy..

 33..11..  NNaarrzz��ddzziiaa ddoo mmoonniittoorroowwaanniiaa uurrzz��ddzzee�� PPCCMMCCIIAA..

 Demon cardmgr normalnie wydaje sygna� d�wi�kowy (beep) kiedy karta
 jest wsadzana, a ton tego d�wi�ku informuje nas o statusie nowo
 w�o�onej karty. D�wi�k wysoki a po nim niski informuje, �e karta
 zosta�a zidentyfikowana, ale z jakiego� powodu nie mog�a zosta�
 skonfigurowana. Jeden d�wi�k niski informuje, �e karta nie mog�a
 zosta� zidentyfikowana.

 Je�li wszystkie modu�y s� poprawnie za�adowane, polecenie lsmod daje
 mniej wi�cej taki wynik (bez w�o�onych kart):

    Module:        #pages:  Used by:
    ds                 2
    i82365             3
    pcmcia_core        7    [ds i82365]

 Wszystkie modu�y PCMCIA oraz demon cardmgr wysy�aj� komunikaty o
 statusie do systemowego programu loguj�cego. B�dzie to z regu�y
 /var/log/messages albo /usr/adm/messages. Powinno to by� pierwsze
 miejsce, do kt�rego nale�y zajrze� kiedy co� nie dzia�a. Kiedy
 wysy�asz mi wiadomo�� o jakim� b��dzie, zawsze do��cz zawarto�� tego
 pliku.  Je�li nie mo�esz znale�� komunikat�w z twojego systemu, to
 sprawd� konfiguracj� w pliku /etc/syslogd.conf, aby zobaczy� do jakich
 plik�w s� one zapisywane. Cardmgr tak�e zapisuje niekt�re bie��ce
 informacje o urz�dzeniach dla ka�dego gniazda w pliku /var/run/stab.
 Oto przyk�adowa zawarto�� tego pliku:

    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

 W liniach opisuj�cych urz�dzenia, pierwsze pole jest gniazdem, drugie
 - klas� urz�dzenia, trzecie - nazw� sterownika, czwarte jest u�ywane,
 aby numerowa� urz�dzenia z�o�one (multiple devices) zwi�zane z tym
 samym sterownikiem, pi�te - nazw� urz�dzenia, a ostatnie dwa pola s�
 liczb� g��wn� i poboczn� dla danego urz�dzenia (je�li jest dost�pne).

 Polecenie cardctl mo�e s�u�y� do sprawdzenia statusu gniazda, albo
 jego konfiguracji. Oto przyk�adowy rezultat polecenia "cardctl
 config":

      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

 Je�li masz uruchomione X-y, to narz�dzie cardinfo wy�wietla informacje
 o statusie wszystkich gniazd PCMCIA, podobn� w zawarto�ci do "cardctl
 config".

 33..22..  PPrrzzeeggll��dd sskkrryypptt��ww kkoonnffiigguurraaccyyjjnnyycchh PPCCMMCCIIAA..

 Ka�de urz�dzenie PCMCIA jest przyporz�dkowane jakiej� klasie, kt�ra
 opisuje jak powinno ono zosta� skonfigurowane i jak nim zarz�dza�.
 Klasy s� zwi�zane ze sterownikami urz�dze� w /etc/pcmcia/config. Jest
 w tej chwili pi�� klas urz�dze� IO (sie�, SCSI, CD-ROM, dyski fixed i
 szeregowe) oraz dwie klasy urz�dze� zwi�zanych z pami�ci� (pami�� i
 FTL). Dla ka�dej klasy s� dwa skrypty w /etc/pcmcia/config: g��wny
 skrypt konfiguracyjny (/etc/pcmcia/scsi dla urz�dze� SCSI), i skrypt z
 opcjami (/etc/pcmcia/scsi.opts). Skrypt g��wny dla danego urz�dzenia
 zostanie wywo�any, aby skonfigurowa� to urz�dzenie kiedy karta jest
 wk�adana, i �eby wy��czy� dane urz�dzenie kiedy karta jest wyjmowana.
 Dla kart, z kt�rymi jest zwi�zane kilka urz�dze�, skrypt zostanie
 wywo�any dla ka�dego urz�dzenia.

 Skrypty konfiguracyjne zaczynaj� od wyci�gni�cia pewnych informacji o
 danym urz�dzeniu z pliku /var/run/stab.  Ka�dy skrypt konstruuje
 "adres urz�dzenia" w zmiennej ADDRESS, kt�ry jest unikatowy dla
 urz�dzenia, kt�re ma by� skonfigurowane.  Jest to przekazywane do
 skryptu *.opts, kt�ry powinien zwr�ci� informacj� o tym, jak dane
 urz�dzenie z podanego adresu powinno zosta� skonfigurowane. Dla
 niekt�rych urz�dze�, adres ten jest po prostu numerem gniazda. Dla
 innych, zawiera on dodatkowe informacje, kt�re mog� by� przydatne do
 zadecydowania jak skonfigurowa� dane urz�dzenie. Na przyk�ad,
 urz�dzenia sieciowe przekazuj� sw�j adres Ethernet-owy jako cz��
 swojego "adresu urz�dzenia", tak �eby skrypt network.opts m�g� tego
 u�y�, aby wybra� z kilku r�nych konfiguracji.

 Pierwsz� cz�ci� wszystkich adres�w urz�dze� jest bie��cy schemat
 PCMCIA. Parametr ten jest u�ywany do obs�ugi z�o�onych zbior�w
 konfiguracji urz�dze� opartych na pojedynczej zewn�trznej zmiennej
 podanej przez u�ytkownika. Jeden ze sposob�w u�ycia schemat�w to
 posiadanie schematu domowego, i schematu roboczego, kt�ry zawiera�by
 r�ne zbiory parametr�w konfiguracji sieci. Schemat bie��cy jest
 wybierany przy pomocy polecenia cardctl.  Domy�lnym schematem, je�li
 �aden nie jest podany, jest "default".

 Jako zasada og�lna podczas konfiguracji Linux-a na laptopa, urz�dzenia
 PCMCIA powinny by� konfigurowane tylko przy pomocy skrypt�w do
 urz�dze� PCMCIA. Nie pr�buj konfigurowa� urz�dzenia PCMCIA w ten sam
 spos�b co urz�dzenie do��czone na sta�e.

 33..33..  AAddaapptteerryy ssiieecciioowwee PPCCMMCCIIAA..

 Normalnie interfejsy sieciowe typu Ethernet na Linux-ie maj� nazwy
 eth0, eth1 itd. Kontrolery Token-Ring s� obs�ugiwane podobnie, chocia�
 nazywane s� tr0, tr1 itd. Polecenie ifconfig jest wywo�ywane, aby
 zobaczy� albo zmodyfikowa� stan urz�dzenia sieciowego. W�asno�ci�
 Linux-a jest to, �e interfejsy sieciowe nie maj� odpowiednich plik�w w
 katalogu /dev, wi�c nie b�d� zaskoczony, �e nie mo�esz ich znale��.

 Kiedy zostanie wykryta karta Ethernet-owa PCMCIA, zostanie jej
 przydzielona pierwsza wolna nazwa interfejsu, kt�r� b�dzie
 przypuszczalnie eth0. Cardmgr wykona skrypt /etc/pcmcia/network, aby
 skonfigurowa� ten interfejs.

 Nie konfiguruj swojej karty Ethernet-owej w /etc/rc.d/rc.inet1
 poniewa� karty mo�e nie by� kiedy skrypt ten jest wykonywany. Wstaw w
 komentarz wszystko, opr�cz urz�dzenia "loopback" w rc.inet1.
 Je�li tw�j system ma automatyczn� procedur� konfiguracji sieci
 powiniene� zwykle wskaza�, �e nie masz zainstalowanej karty sieciowej.
 W zamian, zmodyfikuj plik /etc/pcmcia/network.opts, tak aby odpowiada�
 twojej lokalnej konfiguracji sieci. Skrypty network i network.opts
 zostan� wykonane tylko je�li twoja karta Ethernet-owa jest obecna.

 Adres urz�dzenia przekazany do network.opts sk�ada si�, z czterech p�l
 oddzielonych przecinkami: schematu, numeru gniazda, numeru urz�dzenia
 i sprz�towego adresu karty Ethernet. Numer urz�dzenia jest u�ywany do
 numerowania urz�dze� dla kart, kt�re maj� kilka interfejs�w
 sieciowych, tak wi�c zwykle b�dzie to 0.  Je�li masz kilka kart
 sieciowych u�ywanych do r�nych cel�w, jedn� z opcji by�oby
 skonfigurowanie kart oparte na numerze gniazda, jak tu:

    case "$ADDRESS" in
    *,0,*,*)
        # definicje dla karty sieciowej w gnie�dzie 0
        ;;
    *,1,*,*)
        # definicje dla karty sieciowej w gnie�dzie 1
        ;;
    esac

 Alternatywnie mog�yby one by� skonfigurowane u�ywaj�c ich adres�w
 sprz�towych, jak tu:

    case "$ADDRESS" in
    *,*,*,00:80:C8:76:00:B1)
        # definicje dla karty D-Link
        ;;
    *,*,*,08:00:5A:44:80:01)
        # definicje dla karty IBM
    esac

 Aby automatycznie zamontowa� i odmontowa� system plik�w NFS, najpierw
 dodaj te wszystkie systemy do /etc/fstab, ale w opcjach podaj _n_o_a_u_t_o.
 W network.opts wpisz katalogi, w kt�rych maj� by� zamontowane systemy
 plik�w NFS w zmiennej MOUNTS. Jest tu szczeg�lnie wa�ne, aby u�y� albo
 cardctl albo cardinfo, aby wy��czy� kart� sieciow� kiedy montowanie z
 NFS jest w ten spos�b skonfigurowane. Nie jest mo�liwe czyste
 odmontowanie systemu plik�w NFS je�li karta sieciowa jest po prostu
 wyrzucana bez ostrze�enia.

 Dodatkowo opr�cz zwyk�ych parametr�w konfiguracyjnych dla sieci,
 skrypt network.opts mo�e podawa� inne akcje, kt�re maj� mie� miejsce
 po tym jak interfejs zosta� skonfigurowany, albo przed zamkni�ciem
 interfejsu. Je�li w network.opts zdefiniowana jest funkcja start_fn,
 zostanie ona wywo�ana przez skrypt sieciowy po skonfigurowaniu
 interfejsu, a nazwa interfejsu zostanie przekazana do tej funkcji jako
 pierwszy i jedyny argument. Podobnie je�li funkcja stop_fn jest
 zdefiniowana, to zostanie ona wywo�ana przed zamkni�ciem interfejsu.

 33..33..11..  WWyybb��rr ttrraannsscceeiivveerr--aa..

 Typ transceiver-a mo�na wybra� w network.opts przy pomocy ustawienia
 IF_PORT. Mo�e to by� zar�wno warto�� numeryczna jak we wcze�niejszych
 wydaniach PCMCIA, jak i s�owo kluczowe identyfikuj�ce typ transceiver-
 a. Warto�ciami domy�lnymi we wszystkich sterownikach sieciowych s�:
 wykrywanie automatyczne interfejsu je�li jest to mo�liwe, a w
 przeciwnym razie - 10baseT.  Przy pomocy polecenia ifport mo�na
 sprawdzi� lub ustawi� bie��cy typ transceiver-a. Np.:

      # ifport eth0 10base2
      #
      # ifport eth0
      eth0    2 (10base2)

 Obecne wersje sterownika 3c589 pr�buj� automatycznie wykry� po��czenie
 sieciowe, ale nie jest to jeszcze w pe�ni funkcjonalne.  Aby
 automatyczne wykrywanie dzia�a�o, kabel sieciowy powinien tkwi� w
 karcie podczas jej konfiguracji. Alternatywnym rozwi�zaniem jest
 zmuszenie sterownika do sprawdzenia po��czenia przy pomocy polecenia:

      ifconfig eth0 down up

 33..33..22..  KKoommeennttaarrzzee nnaa tteemmaatt kkoonnkkrreettnnyycchh kkaarrtt..

 �  Przy kartach IBM CCAE i Socket EA musisz wybra� typ transceiver-a
    (10base2, 10baseT, AUI) gdy urz�dzenie sieciowe jest ju�
    skonfigurowane. Upewnij si�, �e typ transceiver-a zapisany w logach
    jest zgodny z rzeczywistym.

 �  Sterowniki dla kart SMC, Megahertz, Ositech i 3Com powinny
    automatycznie wykry� typ do��czonej sieci (10base2 lub 10baseT).
    Ustawienie typu transceiver-a kiedy sterownik jest ju� za�adowany
    ma na celu zdefiniowanie pierwszej warto�ci sprawdzanej przez
    sterownik.

 �  Karta Farallon EtherWave jest w�a�ciwie zbudowana na bazie 3Com
    3c589 ze specjalnym transceiver-em. Pomimo, i� EtherWave u�ywa
    po��cze� 10baseT jej transceiver wymaga, �eby 3c589 by�a
    skonfigurowana na tryb 10base2.

 �  Je�li masz problemy z kartami IBM CCAE, NE4100, Thomas Conrad czy
    Kingston - spr�buj zwi�kszy� czas dost�pu do pami�ci opcj�
    mem_speed=# dla modu�u pcnet_cs. Przyk�ad jak to zrobi� znajdziesz
    w standardowym pliku config.opts. Wypr�buj pr�dko�ci do 1000
    nanosekund.

 �  Na niekt�rych systemach przy karcie New Media Ethernet mo�liwe, �e
    trzeba zwi�kszy� czas dost�pu do port�w IO opcj� io_speed=# podczas
    �adowania modu�u pcmcia_core. Aby ustawi� t� opcj� zmodyfikuj
    linijk� CORE_OPTS w skrypcie startowym.

 �  Obs�uga muticastingu w sterowniku dla New media Ethernet nie jest
    pe�na. Najnowszy sterownik b�dzie dzia�a� z j�drem skompilowanym do
    multicastingu, ale b�dzie ignorowa� takie pakiety. Tryb
    "promiscuous" powinien dzia�a� poprawnie.

 �  Wygl�da na to, �e sterownik u�ywany przez karty IBM i 3Com token
    ring zachowuje si� bardzo �le je�li karty nie s� po��czone z
    pier�cieniem podczas inicjalizacji. Zawsze pod��czaj te karty do
    sieci kiedy s� uruchamiane. Sterownik ten wymaga tak�e wolnych
    port�w w obszarze 0xA20-0xA27. Na niekt�rych systemach,
    automatyczne sprawdzanie konflikt�w w�r�d port�w IO b��dnie okre�li
    ten obszar jako niedost�pny. W tym wypadku, sprawdzanie mo�e zosta�
    wy��czone poprzez za�adowanie modu�u pcmcia_core z opcj�
    probe_io=0.

 �  Nowsze karty Linksys i D-Link maj� sw�j unikalny spos�b wybierania
    typu transceiver-a, kt�ry nie jest obs�ugiwany przez sterowniki
    Linux-owe. Jednym ze sposob�w na obej�cie tego jest wystartowa�
    DOS-a i u�y� narz�dzia dostarczonego przez sprzedawc�, aby wybra�
    transceiver i potem wystartowa� Linux-a na "ciep�o".  Szukam beta-
    tester�w do narz�dzia na Linux-a, kt�re by umo�liwia�o tak�
    funkcj�.

 �  Jean Tourrilhes ([email protected] napisa� HOWTO <http://www-
    uk.hpl.hp.com/people/jt/Linux/Wavelan.html> na temat
    bezprzewodowych kart sieciowych WaveLAN.

 33..33..33..  DDiiaaggnnoozzoowwaanniiee pprroobblleemm��ww zz kkaarrttaammii ssiieecciioowwyymmii..

 �  Czy twoja karta jest rozpoznawana jako karta etnernetowa?  Sprawd�
    logi systemowe i upewnij si�, �e cardmgr identyfikuje twoj� kart�
    poprawnie i startuje jeden ze sterownik�w sieciowych.  Je�li nie,
    to twoj� kart� mo�na wci�� u�y� je�li jest ona kompatybilna z jak��
    obs�ugiwan�. Najpro�ciej jest to zrobi� je�li karta "twierdzi", �e
    jest kompatybilna z NE2000.

 �  Czy karta jest poprawnie skonfigurowana? Je�li u�ywasz obs�ugiwanej
    karty i zosta�a ona rozpoznana przez cardmgr, ale wci�� nie dzia�a,
    to mo�liwy jest konflikt z przerwaniami lub portami. Zobacz jakich
    zasob�w u�ywa karta (z log�w systemowych) i spr�buj wy��czy� je w
    /etc/pcmcia/config.opts, aby zmusi� kart� do u�ycia innych.

 �  Je�li twoja karta wydaje si� by� skonfigurowana poprawnie, ale
    czasami si� zawiesza, szczeg�lnie przy du�ym obci��eniu systemu,
    mo�liwe, �e musisz spr�bowa� zmieni� paramtery "timing-owe" gniazda
    dla sterownika. Wi�cej informacji znajdziesz w sekcji ``2.3''.

 �  Je�li masz komunikaty w stylu "network unreachable" kiedy pr�bujesz
    dosta� si� do sieci, to przypuszczalnie b��dnie ustawi�e� parametry
    w /etc/pcmcia/network.opts. Jednak z drugiej strony b��dnie
    skonfigurowane karty z regu�y nie zainicjuj� si� i nie wy�wietl�
    przy tym �adnych komunikat�w

 �  Aby sprawdzi� problemy z /etc/pcmcia/network.opts, zacznij od pr�by
    ping-owania innych system�w w tej samej podsieci uzywaj�c ich
    adres�w IP. Potem spr�buj ping-owa� sw�j gateway, i maszyny w
    innych podsieciach. Ping-uj maszyny po ich adresach tylko po
    zrobieniu tych prostych test�w.

 �  Upewnij si�, �e tw�j problem to naprawd� problem z PCMCIA.
    Sprawdzenie, czy karta dzia�a pod DOS-em ze sterownikiem od
    sprzedawcy mo�e pom�c. Sprawd� dwa razy modyfikacje w skrypcie
    /etc/pcmcia/network.opts. Upewnij si�, �e twoje kable, wtyczka "T",
    terminator itp. dzia�aj�.

 33..44..  UUrrzz��ddzzeenniiaa sszzeerreeggoowwee ii mmooddeemmyy PPCCMMCCIIAA..

 Linux-owe urz�dzenia szeregowe s� dost�pne poprzez specjalne pliki
 /dev/cua* i /dev/ttyS*. Urz�dzenia ttyS* s� dla po��cze�
 przychodz�cych, jak np. bezpo�rednio pod��czone terminale. Urz�dzenia
 cua* s� dla po��cze� wychodz�cych, jak np. modemy. Ka�dy fizyczny port
 szeregowy ma plik urz�dzenia ttyS i cua: to ju� zale�y od ciebie jaki
 plik wykorzystasz w swojej aplikacji. Konfiguracja urz�dzenia
 szeregowego mo�e by� sprawdzana i modyfikowana poprzez polecenie
 setserial.

 Kiedy zostanie wykryta karta szeregowa lub modemowa PCMCIA, zostanie
 jej przypisany pierwszy dost�pny slot urz�dzenia szeregowego. B�dzie
 to zwykle /dev/ttyS1 (cua1) albo /dev/ttyS2 (cua2) w zale�no�ci od
 ilo�ci wbudowanych port�w szeregowych.  Urz�dzenie ttyS* jest
 raportowane w pliku /var/run/stab.  Domy�lny skrypt z opcjami dla
 urz�dzenia szeregowego /etc/pcmcia/serial.opts pod��czy odpowiedni w
 ramach udogodnienia plik urz�dzenia cua* do /dev/modem.

 Nie pr�buj u�ywa� /etc/rc.d/rc.serial do konfiguracji modemu PCMCIA.
 Skrypt ten powinien by� u�ywany tylko do konfiguracji urz�dze�
 zainstalowanych na sta�e. Modyfikuj /etc/pcmcia/serial.opts je�li
 chcesz jakich� specjalnych ustawie� dla swojego modemu. Nie pr�buj
 tak�e zmienia� portu IO czy IRQ szeregowego urz�dzenia PCMCIA
 programem setserial.  Poinformowa�oby to sterownik szeregowy, �e karta
 jest w innym miejscu, ale nie zmieni�oby ustawie� sprz�towych karty.
 Skrypt konfiguracyjny pozwala na podanie innych opcji setserial jak
 rownie� to czy linia dla tego portu powinna zosta� dodana do
 /etc/inittab.

 Adres urz�dzenia przekazywany do serial.opts ma trzy pola odzielone
 przecinkami: pierwsze jest schematem, drugie - numerem gniazda,
 trzecie - numerem urz�dzenia. Numer urz�dzenia mo�e przyjmowa� kilka
 warto�ci dla kart, kt�re obs�uguj� wieloportowe karty szeregowe, ale
 dla kart jednoportowych b�dzie to zawsze 0.  Je�li zwykle u�ywasz
 wi�cej ni� jednego modemu PCMCIA, mo�esz poda� r�ne ustawienia oparte
 na numerze gniazda, jak tu:

    case "$ADDRESS" in
    *,0,*)
        # Opcje dla modemu w gnie�dzie 0
        LINK=/dev/modem0
        ;;
    *,1,*)
        # Opcje dla modemu w gnie�dzie 1
        LINK=/dev/modem1
        ;;
    esac

 Je�li modem PCMCIA jest ju� skonfigurowany gdy Linux startuje, mo�e
 zosta� �le zidentyfikowany jako zwyk�y wbudowany port szeregowy. Jest
 to nieszkodliwe, chocia�, kiedy sterowniki PCMCIA przejmuj� kontrol�
 nad modemem, b�dzie mu nadany inny slot.  Najlepiej albo zmodyfikowa�
 /var/run/stab albo u�y� /dev/modem ni� liczy� na to, �e modem PCMCIA
 b�dzie zawsze mia� przypisane to samo urz�dzenie.

 Je�li skonfigurujesz twoje j�dro, aby �adowa�o podstawowy sterownik do
 port�w szeregowych jako modu�, musisz zmodyfikowa� /etc/pcmcia/config,
 aby wskaza�, �e ten modu� ma by� �adowany. Zmie� pozycj� urz�dzenia
 szeregowego tak:

    device "serial_cs"
      class "serial" module "char/serial", "serial_cs"

 33..44..11..  DDiiaaggnnoozzoowwaanniiee pprroobblleemm��ww zz uurrzz��ddzzeenniiaammii sszzeerreeggoowwyymmii..

 �  Czy twoja karta jest rozpoznawana jako modem? Sprawd� log systemowy
    i upewnij si�, �e cardmgr identyfikuje kart� poprawnie i startuje
    sterownik serial_cs. Je�li nie, to mo�liwe, �e musisz doda� jeszcze
    jedn� pozycj� do swojego pliku /etc/pcmcia/config tak, �e zostanie
    ona poprawnie zidentyfikowana. Wi�cej szczeg��w w sekcji ``3.6''.

 �  Czy modem zosta� poprawnie skonfigurowany przez serial_cs? Znowu,
    sprawd� logi systemowe i poszukaj komunikat�w pochodz�cych od
    sterownika serial_cs. Je�li zobaczy� "register_serial() failed()",
    to mo�esz mie� konflikt port�w IO. Inn� wskaz�wk� na konflikt jest
    zg�oszenie urz�dzenia 8250; wi�kszo�� nowoczesnych modem�w PCMCIA
    powinna by� identyfikowana jako UART 16550A. Je�li s�dzisz, �e masz
    do czynienia z konfliktem port�w, zmodyfikuj
    /etc/pcmcia/config.opts i wy��cz obszar port�w, kt�ry zosta�
    zaalokowany dla modemu.

 �  A mo�e jest konflikt przerwa�? Je�li log systemowy wygl�da na
    dobry, ale modem po prostu nie dzia�a, to spr�buj u�y� setserial,
    aby zmieni� IRQ na 0 i sprawd� czy modem dzia�a.  Wywo�anie takie
    wymusza na sterowniku u�ycie wolniejszego trybu "_p_o_l_l_e_d" zamiast
    u�ycia przerwa�. Je�li to naprawia problem, to ca�kiem mo�liwe, �e
    jakie� inne urz�dzenie w twoim systemie u�ywa przerwania wybranego
    przez serial_cs.  Powiniene� doda� lini� do pliku
    /etc/pcmcia/config.opts wy��czaj�ce to przerwanie.

 �  Je�li modem zdaje si� dzia�a�, ale bardzo, bardzo wolno, to jest
    prawie pewne, �e jest konflikt przerwa�.

 �  Upewnij si�, �e tw�j problem, to rzeczywi�cie problem z PCMCIA.
    Pomocne mo�e by� sprawdzenie, czy karta dzia�a pod DOS-em u�ywaj�c
    sterownika dostarczonego przez sprzedawc�. Nie testuj tak�e karty w
    skomplikowanych warunkach jak SLIP czy PPP dop�ki nie jeste�
    pewnien, �e mo�esz nawi�zywa� proste po��czenia. Je�li proste
    rzeczy dzia�aj� a SLIP - nie, to problem jest ze SLIP-em, a nie
    PCMCIA.

 �  Je�li otrzymujesz komunikaty od j�dra wskazuj�ce na to, �e modu�
    serial_cs nie mo�e by� za�adowany, to znaczy, �e j�dro nie ma
    obs�ugi dla urz�dze� szeregowych. Je�li skompilowa�e� sterownik
    szeregowy jako modu�, to musisz zmodyfikowa� /etc/pcmcia/config,
    aby zaznaczy�, �e modu� serial powinien by� za�adowany przed
    serial_cs.

 33..55..  AAddaapptteerryy PPCCMMCCIIAA SSCCSSII..

 Wszystkie obecnie obs�ugiwane karty PCMCIA SCSI s� podobne w dzia�aniu
 do jednej z nast�puj�cych kart: Qlogic, Adaptec AHA-152X albo Future
 Domain TMC-16x0. Sterowniki PCMCIA s� stworzone przez do��czanie
 cz�ci specyficznego dla PCMCIA kodu (w qlogic_cs.c, toaster_cs.c albo
 fdomain_cs.c) do normalnego sterownika SCSI dla Linux-a.

 Kiedy wykryty zostanie nowy kontroler SCSI, sterowniki do SCSI b�d�
 szuka� urz�dze�. Sprawd� logi systemowe, aby upewni� si�, �e twoje
 urz�dzenia zosta�y wykryte poprawnie. Nowym urz�dzeniom SCSI zostanie
 przypisany pierwszy wolny plik urz�dzenia SCSI. Pierwszy dysk SCSI
 b�dzie /dev/sda, pierwsza ta�ma SCSI b�dzie /dev/st0, a pierwszy CD-
 ROM SCSI b�dzie /dev/scd0.

 Rdzeniowe sterowniki PCMCIA s� w stanie dowiedzie� si� od j�dra 1.3.X
 i p�niejszego, kt�re urz�dzenia SCSI s� pod��czone do karty. B�d� one
 wymienione w /var/run/stab, a skrypt konfiguracyjny SCSI
 /etc/pcmcia/scsi b�dzie wywo�any jeden raz dla ka�dego do��czonego
 urz�dzenia, aby je albo skonfigurowa� albo wy��czy�.  Skrypt domy�lny
 nie robi nic, aby skonfigurowa� urz�dzenia SCSI, ale poprawnie
 odmontuje systemy plik�w z urz�dze� SCSI kiedy karta zostanie
 usuni�ta.

 Sterowniki PCMCIA z j�drem w wersji 1.2.X nie potrafi� automatycznie
 wykry� , kt�re urz�dzenia s� przypisane konkretnemu sterownikowi. W
 zamian za to, je�li masz jedn� normaln� konfiguracj� urz�dzenia SCSI,
 mo�esz wymieni� te urz�dzenia w /etc/pcmcia/scsi.opts. Na przyk�ad:
 je�li normalnie masz dysk i CD-ROM SCSI, u�y�by�:

    # Dla j�dra 1.2: lista urz�dze� do��czonych
    SCSI_DEVICES="sda scd0"

 Adresy urz�dze� przekazywane do scsi.opts s� skomplikowane, z powodu
 du�ej ilo�ci urz�dze�, kt�re mog� by� do��czone do kontrolera SCSI.
 Adresy sk�adaj� si� albo z sze�ciu albo z siedmiu p�l oddzielonych
 przecinkami: bie��cy schemat, typ urz�dzenia, numer gniazda, kana�
 SCSI, ID, numer logicznej jednostki i opcjonalnie numer partycji. Typ
 urz�dzenia b�dzie jednym z: "sd" dla dysk�w, "st" dla ta�m, "sr" dla
 CD-ROM-�w i "sg" dla og�lnych urz�dze� SCSI. W wi�kszo�ci ustawie�,
 kana� SCSI oraz numer logicznej jednostki b�dzie 0. Dla urz�dze�
 dyskowych z kilkoma partycjami, scsi.opts zostanie najpierw wywo�any
 dla ca�ego urz�dzenia, z pi�ciopolowym adresem. Skrypt ten powinien
 ustawi� w zmiennej PARTS list� partycji. Potem, scsi.opts zostanie
 wywo�any dla ka�dej partycji, z d�u�szymi - siedmiopolowymi adresami.
 Na przyk�ad: oto skrypt do konfiguracji urz�dzenia dyskowego pod SCSI
 ID = 3 z dwiema partycjami oraz CD-ROM pod SCSI ID = 6:

 case "$ADDRESS" in
 *,sd,*,0,3,0)
     # To urz�dzenie ma dwie partycje...
     PARTS="1 2"
     ;;
 *,sd,*,0,3,0,1)
     # Opcje dla partycji nr 1:
     # zaktualizuj /etc/fstab i zamontuj system plik�w ext2 na /usr1
     DO_FSTAB="y" ; DO_FSCK="y" ; DO_MOUNT="y"
     FSTYPE="ext2"
     OPTS=""
     MOUNTPT="/usr1"
     ;;
 *,sd,*,0,3,0,2)
     # Opcje dla partycji nr 2:
     # zaktualizuj /etc/fstab i zamontuj system plik�w ext2 na /usr2
     DO_FSTAB="y" ; DO_FSCK="y" ; DO_MOUNT="y"
     FSTYPE="msdos"
     OPTS=""
     MOUNTPT="/usr2"
     ;;
 *,sr,*,0,6,0)
     # Opcje dla CD-ROM-u ID = 6
     PARTS=""
     DO_FSTAB="y" ; DO_FSCK="n" ; DO_MOUNT="y"
     FSTYPE="iso9660"
     OPTS="ro"
     MOUNTPT="/cdrom"
     ;;
 esac

 Je�li twoje j�dro nie posiada sterownika "_t_o_p_-_l_e_v_e_l" (do dysku, ta�my
 itp.) dla konkretnego urz�dzenia SCSI, wtedy urz�dzenie to nie
 zostanie skonfigurowane przez sterownik PCMCIA. Jako efekt uboczny,
 nazwa urz�dzenia w /var/run/stab b�dzie wygl�da� mniej wi�cej tak:
 "sd#nnnn", gdzie "nnnn" jest czterocyfrow� liczb� szesnastkow�. Zdarza
 si� to, je�li cardmgr nie jest w stanie przet�umaczy� ID urz�dzenia
 SCSI na odpowiadaj�c� mu nazw� urz�dzenia Linux-owego.

 Mo�liwe jest zmodularyzowanie sterownik�w "top-level" do SCSI, tak aby
 by�y �adowane tylko wtedy kiedy zostanie wykryty kontroler SCSI. Aby
 tak zrobi�, musisz zmodyfikowa� /etc/pcmcia/config, aby poinformowa�
 cardmgr, kt�re dodatkowe modu�y musz� by� za�adowane kiedy dany
 kontroler jest konfigurowany.
 Na przyk�ad:

 device "aha152x_cs"
   class "scsi" module "scsi/scsi_mod", "scsi/sd_mod", "aha152x_cs"

 Taka zawarto�� pliku spowodowa�aby za�adowanie rdzennego modu�u SCSI
 oraz modu�u sterownika "_t_o_p_-_l_e_v_e_l" do dysk�w przed �adowaniem
 normalnego modu�u sterownika PCMCIA. Skrypt Configure nie wykryje
 automatycznie zmodularyzowanych sterownik�w SCSI, tak wi�c b�dziesz
 musia� w��czy� obs�ug� SCSI r�cznie u�ywaj�c opcji konfiguracyjnych.

 Zawsze w��czaj swoje urz�dzenia przed w��czeniem laptopa, albo przed
 w�o�eniem karty kontrolera, tak aby szyna SCSI zosta�a poprawnie
 zako�czona podczas konfiguracji kontrolera. B�d� tak�e bardzo ostro�ny
 przy wyjmowaniu kontrolera SCSI. Przed wyj�ciem karty upewnij si�, �e
 wszystkie urz�dzenia do niej przydzielone zosta�y odmontowane i
 wy��czone. Najlepiej przed wyj�ciem karty skorzysta� z programu
 cardctl albo cardinfo i za��da� usuni�cia karty z systemu. W chwili
 obecnej wszystkie urz�dzenia SCSI powinny by� w��czane przed w�o�eniem
 karty sterownika SCSI i powinny pozosta� pod��czone do momentu wyj�cia
 karty sterownika lub wy��czenia laptopa.

 Korzystanie z tych kart niesie za sob� potencjalne komplikacje
 nieznane w przypadku korzystania ze zwyk�ych sterownik�w ISA. Szyna
 SCSI przenosi sygna� "termination power" niezb�dny do prawid�owego
 dzia�ania zwyk�ych pasywnych terminator�w SCSI. Sterowniki SCSI
 standardu PCMCIA nie dostarczaj� sygna�u "power termination", je�li
 jest on wymagany musi zosta� dostarczony przez urz�dzenie zewn�trzne.
 Niekt�re zewn�trzne urz�dzenia SCSI mog� zosta� skonfigurowane w taki
 spos�b, aby dostarcza�y wspomnianego sysgna�u. Inne, jak np. Zip Drive
 czy Syquest EZ-Drive u�ywaj� aktywnych terminator�w, przez co nie s�
 zale�ne od sygna�u podawanego na szynie SCSI. W niekt�rych przypadkach
 mo�e okaza� si� konieczne skorzystanie ze specjalnego bloku
 terminatora, np. APS SCSI Sentry 2, kt�ry posiada niezale�ne,
 zewn�trzne �r�d�o zasilania.  Konfiguruj�c �a�cuch urz�dze� SCSI
 musisz sobie zdawa� spraw�, kt�re z nich wymagaj� lub dostarczaj�
 sygna� "power termination".

 Kontroler Adaptec APA-460 SlimSCSI nie jest obs�ugiwany. Kart� t�
 sprzedawano oryginalnie pod nazw� Trantor, a kiedy Adaptec po��czy�
 si� z Trantor-em, kontynuowano sprzeda� Trantora z nazw� Adaptec.
 APA-460 nie jest kompatybilny z jakimkolwiek istniej�cym sterownikiem
 Linux-owym. Nie jestem pewien jak trudno by�oby napisa� sterownik; nie
 s�dz�, �eby kto� by� w stanie wyci�gn�� jakiekolwiek informacje od
 Adaptec-a.

 (Nieobs�ugiwany) Trantor SlimSCSI mo�e zosta� zidentyfikowany
 nast�puj�co:

    Trantor / Adaptec APA-460 SlimSCSI
    FCC ID: IE8T460
    Shipped with SCSIworks! driver software

 (Obs�ugiwany) Adaptec SlimSCSI mo�e zosta� zidentyfikowany
 nast�puj�co:

    Adaptec APA-1460 SlimSCSI
    FCC ID: FGT1460
    P/N: 900100
    Shipped with EZ-SCSI driver software

 33..55..11..  DDiiaaggnnoozzoowwaanniiee pprroobblleemm��ww zz kkaarrttaammii SSCCSSII..

 �  Przy sterowniku aha152x_cs (u�ywanym przez Adaptec-a, New Media i
    kilka innych) �r�d�em cz�stych problem�w w nap�dach ta�m wydaje si�
    by� obs�uga od��czania/pod��czania SCSI. Aby wy��czy�, t�
    w�a�ciwo�� dodaj nast�puj�c� lini� do pliku
    /etc/pcmcia/config.opts:

      module "aha152x_cs" opts "reconnect=0"

 �  Je�li skompilowa�e� obs�ug� SCSI jako modu� (CONFIG_SCSI to "m"),
    podczas konfiguracji PCMCIA, musisz wyra�nie zaznaczy�, �e chcesz,
    aby sterownik zosta� skompilowany. Musisz zmodyfikowa� plik
    /etc/pcmcia/config, aby �adowa� modu� SCSI przed odpowiednim
    sterownikiem *_cs.

 33..66..  KKaarrttyy ppaammii��ccii PPCCMMCCIIAA..

 Sterownik memory_cs obs�uguje wszystkie typy kart pami�ci, jak r�wnie�
 dostarcza bezpo�redniego dostepu do obszaru adresowego pami�ci PCMCIA
 dla kart, kt�re maj� inne funkcje. Po za�adowaniu tworzy kombinacj�
 urz�dze� znakowych i blokowych. Przeczytaj stron� podr�cznika na temat
 modu��w, aby dowiedzie� si� wi�cej o schemacie nazewnictwa urz�dze�.
 Urz�dzenia blokowe s� u�ywane do dost�pu a'la dysk (tworzenie i
 montowanie system�w plik�w itp.)  Urz�dzenia znakowe s�u�� do
 bezpo�redniego (raw) niebuforowanego czytania i pisania do jakiego�
 miejsca.

 Adres urz�dzenia przekazany do memory.opts sk�ada si� z dw�ch p�l:
 schematu i numeru gniazda. Opcje odnosz� si� do pierwszej zwyk�ej
 partycji pami�ci na odpowiedniej karcie pami�ci. Oto przyk�ad skryptu,
 kt�ry automatycznie montuje karty pami�ci w zale�no�ci od z��cza, w
 kt�re zostan� karty w�o�one:

    case "$ADDRESS" in
    *,0,0)
        # Zamontuj systemy plik�w, ale nie uaktualniaj /etc/fstab
        DO_FSTAB="n" ; DO_FSCK="y" ; DO_MOUNT="y"
        FSTYPE="ext2" ; OPTS=""
        MOUNTPT="/mem0"
        ;;
    *,1,0)
        # Zamontuj systemy plik�w, ale nie uaktualniaj /etc/fstab
        DO_FSTAB="n" ; DO_FSCK="y" ; DO_MOUNT="y"
        FSTYPE="ext2" ; OPTS=""
        MOUNTPT="/mem0"
        ;;
    esac

 Niekt�re starsze karty pami�ci i wi�kszo�� prostych statycznych kart
 RAM nie posiadaj� "Card Information Structure" (CIS), kt�ra jest
 schematem u�ywanym przez karty PCMCIA do identyfikowania si�.
 Normalnie cardmgr za�o�y, �e ka�da karta, w kt�rej brakuje owej
 struktury jest prost� kart� pami�ci i za�aduje sterownik memory_cs. I
 tak, cz�stym skutkiem ubocznym og�lnego identyfikowania kart jest
 identyfikacja innego typu kart jako karty pami�ci.

 Sterownik memory_cs u�ywa heurystyki, aby zgadn�� pojemno�� tych kart.
 Heurystyka nie dzia�a jednak dla kart zabezpieczonych przed zapisem i
 mo�e czyni� b��dy tak�e w innych przypadkach. Je�li karta zosta�a �le
 zidentyfikowana, jej rozmiar powinien by� wyra�nie podany podczas
 u�ywania takich polece� jak dd czy mkfs.

 33..66..11..  UU��yywwaanniiee kkaarrtt ppaammii��ccii ""ffllaasshh""..

 Adres urz�dzenia przekazywany do ftl.opts sk�ada si� z trzech lub
 czterech p�l: schematu, numeru gniazda, numeru regionu i opcjonalnie
 numeru partycji. Wi�kszo�� kart "flash" ma tylko jeden region pami�ci
 "flash", wi�c numerem regionu zwykle b�dzie zero.

 Aby u�y� karty pami�ci "flash" jako zwyk�ego urz�dzenia blokowego jak
 dysk, stw�rz najpierw partycj� "flash translation layer" na tym
 urz�dzeniu poleceniem ftl_format:

      ftl_format -i /dev/mem0c0c

 Zauwa�, �e polecenie to uzyskuje dost�p do karty przez bezpo�redni
 interfejs pami�ci karty. Raz sformatowana karta mo�e by� u�ywana jako
 zwyk�e urz�dzenie blokowe przy pomocy sterownika ftl_cs.  Na przyk�ad:

      mke2fs /dev/ftl0c0
      mount -t ext2 /dev/ftl0c0 /mnt

 Nazewnictwo dla urz�dze� FTL jest troch� pokr�cone. Poboczne liczby
 urz�dze� maj� trzy cz�ci: numer karty, numer regionu na tej karcie i
 opcjonalnie partycj� w tym regionie. Region mo�e by� traktowany jako
 pojedyncze urz�dzenie blokowe bez tablicy partycji (jak dyskietka)
 albo mo�na go podzieli� na partycje tak jak dysk twardy. Urz�dzenie
 "ftl0c0" jest kart� 0 o numerze regionu 0 i ca�ym regionem. Urz�dzenia
 od "ftl0c0p1" do "ftl0c0p4" s� g��wnymi partycjami 1 do 4 je�li region
 zosta� podzielony.

 S� dwa g��wne formaty dla kart pami�ci flash: styl "flash translation
 layer", i styl "Microsoft Flash File System". Format FTL jest og�lnie
 bardziej elastyczny poniewa� pozwala na u�ycie ka�dego zwyk�ego
 wysokopoziomowego systemu plik�w (ext2, ms-dos itp.)  na kartach
 pami�ci "flash" tak jakby by�y one na zwyk�ym urz�dzeniu dyskowym. FFS
 jest ca�kiem odmiennym systemem plik�w.  Linux nie umie w tej chwili
 ob�ugiwa� kart sformatowanych w tym systemie.

 33..77..  KKaarrttyy PPCCMMCCIIAA nnaapp��dd��ww AATTAA//IIDDEE..

 Obs�uga nap�d�w ATA/IDE wymaga jadra 1.3.72 lub nowszego.  Specyficzna
 dla PCMCIA cz�� sterownika to fixed_cs. Pami�taj �eby u�ywa� cardctl
 albo cardinfo do wy��czania karty ATA/IDE przed wyj�ciem jej, poniewa�
 sterownik nie jest odporny na "gor�ce zmiany".

 Adresy urz�dzenia przekazywane do fixed.opts sk�adaj� si� z trzech
 albo czterech p�l: bie��cy schemat, numer gniazda, numer seryjny
 nap�du i opcjonalny numer partycji. Tak samo jak w przypadku urz�dze�
 SCSI, fixed.opts jest najpierw wywo�ywany dla ca�ego urz�dzenia. Je�li
 fixed.opts zwr�ci list� partycji w zmiennej PARTS, skrypt zostanie
 wtedy wywo�any dla ka�dej partycji.

 Oto przyk�ad pliku fixed.opts, kt�ry montuje pierwsz� partycj�
 jakiejkolwiek karty ATA/IDE na /mnt.

    case "$ADDRESS" in
    *,*,*)
        PARTS="1"
        ;;
    *,*,*,1)
        DO_FSTAB="y" ; DO_FSCK="y" ; DO_MOUNT="y"
        FSTYPE="msdos"
        OPTS=""
        MOUNTPT="/mnt"
        ;;
    esac

 Zauwa�, �e domy�lny plik fixed.opts posiada te linie, ale s� one w
 komentarzu. Je�li chcesz, mo�esz mie� oddzielne konfiguracje dla
 konkretnych kart oparte na ich numerach seryjnych. Aby odszuka� numer
 seryjny nap�du, u�yj narz�dzia ide_info. Wtedy cz�� fixed.opts mo�e
 wygl�da� tak:

    case "$ADDRESS" in
    *,*,Z4J60542)
        # To s� moje rzeczy DOS-owe
        PARTS="1"
        ;;
    *,*,Z4J60542,1)
        DO_FSTAB="y" ; DO_FSCK="y" ; DO_MOUNT="y"
        FSTYPE="msdos"
        OPTS=""
        MOUNTPT="/mnt"
        ;;
    esac

 33..77..11..  DDiiaaggnnoozzoowwaanniiee pprroobblleemm��ww zz aaddaapptteerraammii AATTAA//IIDDEE..

 �  Niekt�re napedy IDE zaburzaj� specyfikacj� PCMCIA przez ��danie
    d�u�szego czasu na "_r_o_z_k_r_�_c_e_n_i_e _s_i_�" ni� maksymalny dozwolony czas
    na setup. Aby u�ywa� tych kart za�aduj modu� pcmcia_core z opcj�:

      CORE_OPTS="unreset_delay=400"

 �  Aby u�ywa� urz�dzenia ATA/IDE CD-ROM, twoje j�dro musi by�
    skompilowane z w��czon� opcj� CONFIG_BLK_DEV_IDECD. B�dzie to
    zwykle przypadek dla standardowych j�der, chocia� jest to co� o
    czym� powiniene� wiedzie� je�li kompilujesz j�dro z w�asn�
    konfiguracj�.

 33..88..  KKaarrttyy wwiieellooffuunnkkccyyjjnnee..

 Od j�dra w wersji 1.3.73 pojedyncze przerwanie mo�e by� dzielone
 mi�dzy kilka sterownik�w jak sterownik szeregowy i ethernetu.  Je�li
 u�ywasz wielofunkcyjnej karty z nowszym j�drem, to wszystkie funkcje
 tej karty s� dost�pne bez potrzeby prze�adowywania sterownik�w.

 Symultaniczne u�ycie dw�ch funkcji karty wymaga troch� sprytu i r�ni
 sprzedawcy sprz�tu zaimplementowali dzielenie przerwa� na sw�j,
 niekompatybilny (i czasem nieudokumentowany) spos�b. Sterowniki do
 niekt�rych kart (Ositech Jack of Diamonds, 3Com 3c562, Linksys)
 udost�pniaj� poprawnie symultaniczno��, ale inne (szczeg�lnie
 Megahertz) - nie.

 Wcze�niejsze j�dra nie obs�ugiwa�y dzielenia przerwa� pomi�dzy r�ne
 sterowniki urz�dze�, wi�c jest niemo�liwe skonfigurowanie kart modemu
 i ethernetu do dzia�ania symultanicznego. Sterowniki ethernetowy i
 modemowy s� �adowane jednocze�nie automatycznie.  Chocia� sterownik
 ethernetowy przejmuje przerwanie domy�lnie. Aby u�y� modemu mo�esz
 usun�� sterownik ethernetowy z pami�ci i zrekonfigurowa� port
 szeregowy czym� takim:

      ifconfig eth0 down
      rmmod 3c589_cs
      setserial /dev/modem autoconfig auto_irq
      setserial /dev/modem

 Drugie polecenie setserial powinno zweryfikowa� czy port zosta�
 skonfigurowany tak, aby u�y� przerwania poprzednio u�ywanego przez
 sterownik ethernetowy.

 33..99..  KKiieeddyy mmoo��nnaa bbeezzppiieecczznniiee ww��oo��yy�� aallbboo wwyyjj���� kkaarrtt�� PPCCMMCCIIAA ??

 Teoretycznie mo�esz wk�ada� i wyjmowa� karty PCMCIA w ka�dym momencie.
 Chcocia�, generalnie dobrze jest nie wyjmowa� karty je�li jest ona
 akurat u�ywana przez jak�� aplikacj�. J�dra starsze ni� 1.1.77 cz�sto
 zawiesza�yby si� podczas wyjmowania kart szeregowych lub modemowych,
 ale to powinno ju� by� naprawione.

 33..1100..  CCaarrdd SSeerrvviicceess ii AAddvvaanncceedd PPoowweerr MMaannaaggeemmeenntt..

 Pakiet Card Services mo�e zosta� skompilowany z obs�ug� APM (Advanced
 Power Management) je�li zainstalowa�e� ten pakiet w swoim systemie.
 APM jest do��czony do j�der 1.3.46 i nowszych.  Opiekunem tego pakietu
 jest obecnie Rick Faith (_f_a_i_t_h_@_c_s_._u_n_c_._e_d_u), a narz�dzia do APM mo�na
 uzyska� z ftp.cs.unc.edu.  Modu�y PCMCIA zostan� skonfigurowane
 automatycznie pod wzgl�dem APM je�li na twoim systemie zostanie
 wykryta wersja kompatybilna.

 Aby poprawnie zako�czy� dzia�anie i ponownie wystartowa� karty PCMCIA,
 mo�esz wykona� cardctl suspend przed zawieszeniem twojego laptopa i
 cardctl resume po przywr�ceniu go do pracy bez zmian w APM.
 Niezadzia�a to jednak z modemem PCMCIA, kt�ry jest w�a�nie u�ywany,
 poniewa� sterownik szeregowy nie jest w stanie zachowa� i odtworzy�
 parametr�w operacyjnych modemu.

 APM wydaje si� by� niepewne na niekt�rych systemach. Je�li masz
 problemy z APM i PCMCIA w twoim systemie, spr�buj zaw�zi� problem do
 jednego albo drugiego pakietu zanim wy�lesz list z raportem o b��dzie.

 Niekt�re sterowniki, szczeg�lnie sterowniki PCMCIA SCSI, nie mog� si�
 odtworzy� ze stanu zawie�/odtw�rz. Kiedy u�ywasz karty PCMCIA SCSI,
 u�yj cardctl eject zanim zawiesisz system.

 33..1111..  JJaakk mmaamm wwyy����cczzyy�� kkaarrtt�� PPCCMMCCIIAA bbeezz wwyyjjmmoowwaanniiaa jjeejj  ??

 U�yj polecenia cardctl albo cardinfo. Polecenie cardctl suspend #
 zawiesi jedno gniazdo, i wy��czy jego zasilanie. Odpowiednie polecnie
 resume obudzi kart� w stan poprzedni.

 33..1122..  JJaakk uussuuwwaamm sstteerroowwnniikkii PPCCMMCCIIAA zz ppaammii��ccii ??

 Aby usun�� ca�y pakiet PCMCIA, uruchomrc.pcmcia tak:

 /etc/rc.d/rc.pcmcia stop

 Uruchomienie tego skryptu zajmie kilka sekund, poniewa� daje on czas
 wszystkim sterownikom-klientom na poprawne zako�czenie dzia�ania.
 Je�li jakie� urz�dzenie PCMCIA jest akurat u�ywane, zako�czenie b�dzie
 niekompletne, i niekt�re modu�y j�dra mog� nie zosta� usuni�te. Aby
 tego unikn�� u�yj cardctl eject, aby zamkn�� wszystkie gniazda przed
 uruchomieniem rc.pcmcia.  Status wyj�ciowy polecenia cardctl okre�li
 czy jakie� gniazdo nie mog�o by� zamkni�te.

 44..  ZZaaaawwaannssoowwaannee tteemmaattyy..

 44..11..  AAllookkooaaccjjaa zzaassoobb��ww ddllaa uurrzz��ddzzee�� PPCCMMCCIIAA..

 Teoretycznie nie powinno mie� znaczenia kt�re przerwanie jest
 alokowane dla kt�rego urz�dzenia tak d�ugo jak dwa urz�dzenia nie s�
 skonfigurowane, aby u�ywa� tego samego przerwania. W pliku
 /etc/pcmcia/config.opts znajdziesz miejsce na wy��czenie przerwa�,
 kt�re s� u�ywane przez inne urz�dzenia ni� PCMCIA.

 Podobnie, nie ma sposobu, aby bezpo�rednio poda� adresy IO, kt�re maj�
 byc u�ywane przez karty PCMCIA. Plik /etc/pcmcia/config.opts pozwala
 na podanie obszaru port�w dost�pnego dla wszystkich sterownik�w
 PCMCIA, albo wy��czy� obszary, kt�re powoduj� konflikty.

 Po zmodyfikowaniu pliku /etc/pcmcia/config.opts mo�esz zrestartowa�
 cardmgr poleceniem "kill -HUP".

 Przerwanie u�ywane do monitorowania statusu zmian karty jest wybierane
 przez modu� sterownika niskiego poziomu (i82365 lub tcic) przed
 zinterpretowaniem pliku /etc/pcmcia/config przez cardmgr, wi�c plik
 ten nie ma wp�ywu na wyb�r tego w�a�nie przerwania. Aby ustawi� to
 przerwanie u�yj opcji cs_irq= podczas �adowania sterownika gniazd,
 przez ustawienie zmiennej PCIC_OPTS w pliku /etc/rc.d/rc.pcmcia.

 Wszystkie sterowniki kart klient�w maj� parametr irq_list do
 podawania, kt�re przerwania mog� pr�bowa� one zaalokowa�. Te opcje
 powinny by� ustawione w pliku /etc/pcmcia/config. Np.:

      device "serial_cs"
        module "serial_cs" opts "irq_list=8,12"
        ...

 wymusi�oby u�ycie tylko przerwa� IRQ 8 i 12. Nie zale�nie od usatwie�
 irq_list, Card Services nigdy nie zaalokuje przerwania, kt�re jest ju�
 u�ywane przez inne urz�dzenie albo przerwania, kt�re jest wy��czone w
 pliku konfiguracyjnym.

 44..22..  JJaakk zzrroobbii�� ddwwiiee rr���nnee kkoonnffiigguurraaccjjee uurrzz��ddzzee�� ddoo ddoommuu ii pprraaccyy ??

 Jest to ca�kiem proste u�ywaj�c schemat�w PCMCIA.
 U�yj dw�ch schemat�w konfiguracyjnych o nazwie "dom" i "praca".  Oto
 przyk�ad skryptu network.opts z konkretnymi  ustawieniami dla r�nych
 schemat�w:

    case "$ADDRESS" in
    praca,*,*,*)
        # definicje dla kart sieciowych w pracy
        ...
        ;;
    dom,*,*,*|default,*,*,*)
        # definicje dla kart sieciowych w domu
        ...
        ;;
    esac

 Pierwsz� cz�ci� adresu urz�dzenia PCMCIA jest zawsze schemat
 konfiguracyjny. W tym przyk�adzie, drugi przypadek w "case" wybierze
 oba schematy: domowy i domy�lny. Wi�c je�li schemat nie jest
 ustawiony, domy�lnym b�dzie schemat domowy.

 Teraz, aby wybra� pomi�dzy tymi dwoma ustawieniami uruchom albo:

    cardctl scheme dom

 albo

    cardctl scheme praca

 Polecenie cardctl wy��cza wszystkie twoje karty i inicjuje je
 ponownie. Polecenie to mo�e by� bezpiecznie u�ywane, nie zale�nie od
 tego czy system PCMCIA jest za�adowany czy nie, ale polecenie to mo�e
 si� nie powie�� je�li u�ywasz innych urz�dze� PCMCIA w tym samym
 czasie (nawet je�li ich konfiguracje nie r�ni� si� wyra�nie od
 ustawie� schemat�w).

 Aby zobaczy� bie��ce ustawienia schematu PCMCIA uruchom:

    cardctl scheme

 44..33..  SSttaarrttoowwaanniiee zz uurrzz��ddzzeenniiaa PPCCMMCCIIAA..

 Posiadanie g��wnego systemu plik�w na urz�dzeniu PCMCIA jest troch�
 k�opotliwe, bo system PCMCIA na Linux-a nie zosta� przystosowany do
 w��czenia do j�dra. G��wne sk�adniki, �adowalne modu�y i uruchamiany w
 trybie u�ytkownika demon cardmgr, zale�� od ju� dzia�aj�cego systemu.
 Mo�liwo�� startu przy pomocy "initrd" pozwala obej�� ten problem
 pozwalaj�c Linux-owi wystartowa� u�ywaj�c tymczasowego ramdysku jako
 minimalnego obrazu katalogu g��wnego, za�adowa� sterowniki i potem
 ponownie zamontowa� inny system plik�w jako katalog g��wny. Tymczasowy
 katalog g��wny mo�e skonfigurowa� urz�dzenia PCMCIA i potem zamontowa�
 urz�dzenie PCMCIA jako katalog g��wny.

 Niekt�re dystrybucje Linux-a pozwalaj� na instalacj� na urz�dzeniu
 pod��czonym do kontrolera SCSI PCMCIA, jako niezamierzony skutek
 uboczny mo�liwo�ci instalacji z CD-ROM-�w pod��czonych do SCSI PCMCIA.
 Aczkolwiej w tej chwili �adne narz�dzie instalacyjne dla Linux-a nie
 pozwala na konfiguracj� odpowiedniego "initrd" do startu z g��wnym
 systemem plik�w na PCMCIA. Dlatego te� konfiguracja takiego systemu
 wymaga u�ycia drugiego Linux-a, aby stworzy� obraz "initrd". Je�li nie
 masz dost�pu do drugiego Linux-a, to inn� mo�liwo�ci� jest tymczasowe
 zainstalowanie minimalnego Linux-a na nap�dzie nie b�d�cym urz�dzeniem
 PCMCIA, stworzenie obrazu initrd i zainstalowanie na PCMCIA.

 W Bootdisk-HOWTO znajduj� si� og�lne informacje jak zrobi� dyskietki
 startowe, ale nic konkretnego na temat initrd. G��wny dokument
 opisuj�cy initrd zawarty jest w ostatnich �r�d�ach j�dra Linux-a w
 katalogu linux/Documentation/initrd.txt. Zanim zaczniesz powiniene� to
 przeczyta�. Pomocna jest te� znajomo�� lilo. U�ycie initrd wymaga
 tak�e w��czonych opcji CONFIG_BLK_DEV_RAM i CONFIG_BLK_DEV_INITRD w
 j�drze.

 44..33..11..  SSkkrryypptt--ppoommooccnniikk ppcciinniittrrdd..

 Skrypt pcinitrd tworzy podstawowy obraz initrd do startowania z
 g��wnej partycji na PCMCIA. W obrazie tym zawarte s�: minimalna
 struktura katalog�w, potrzebne pliki urz�dze�, kilka program�w,
 biblioteki dzielone i zbi�r sterownik�w-modu��w PCMCIA. Podczas
 uruchamiania pcinitrd podajesz sterowniki-modu�y, kt�re maj� by�
 zawarte w obrazie. G��wne sk�adniki PCMCIA, pcmcia_core i ds s�
 do��czane automatycznie.

 Na przyk�ad powiedzmy, �e tw�j laptop u�ywa kontrolera PCMCIA
 kompatybilnego z i82365 i chcesz startowa� Linux-a z g��wnym systemem
 plik�w na dysku twardym przy��czonym do kontrolera Adpatec SlimSCSI.
 Mo�esz stworzy� odpowiedni obraz przy pomocy;

      pcinitrd -v initrd pcmcia/i82365.o pcmcia/aha152x_cs.o

 Aby ustawi� sobie start initrd wedle swojego uznania, mo�esz
 zamontowa� obraz u�ywaj�c urz�dzenia "loopback" poleceniem:

      mount -o loop -t ext2 initrd /mnt

 i potem zmodyfikuj skrypt linuxrc. Pliki konfiguracyjne PCMCIA zostan�
 zainstalowane w obrazie w katalogu /etc i tak�e mog� by� ustawione
 wedle w�asnego uznania. Wi�cej informacji znajdziesz w podr�czniku
 'man pcinitrd'.

 44..33..22..  TTwwoorrzzeenniiee ddyysskkiieettkkii ssttaarrttoowweejj zz iinniittrrdd..

 Po stworzeniu obrazu skryptem pcinitrd, mo�esz stworzy� dyskietk�
 startow� kopiuj�c j�dro, skompresowany obraz initrd i kilka
 pomocniczych program�w dla lilo na czyst� dyskietk�. W nast�puj�cym
 przyk�adzie zak�adamy, �e g��wny system plik�w znajduje si� na
 /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 [j�dro] /mnt/vmlinuz
      gzip < [obraz-initrd] > /mnt/initrd

 Stw�rz /mnt/etc/lilo.conf z tak� zawarto�ci�:

      boot=/dev/fd0
      compact
      image=/vmlinuz
          label=linux
         initrd=/initrd
          read-only
          root=/dev/sda1

 Na ko�cu uruchom:

      lilo -r /mnt

 Je�li lilo uruchomione jest z parametrem -r, wszystkie akcje
 wykonywane s� z podanym katalogiem jako g��wny system plik�w.  Powodem
 utworzenia plik�w urz�dze� w /mnt/dev by�o to, �e lilo nie b�dzie w
 stanie u�y� plik�w w /dev kiedy b�dzie uruchomione z alternatywnym
 katalogiem g��wnym.
 44..33..33..  IInnssttaallaaccjjaa oobbrraazzuu iinniittrrdd nnaa nnaapp��ddaacchh bbeezz LLiinnuuxx--aa..

 Jednym z popularnych zastosowa� initrd s� systemy gdzie wewn�trzny
 dysk twardy jest dedykowany dla innego systemu operacyjnego. J�dro
 Linux-a i obraz initrd mog� zosta� umieszczone na partycji bez Linux-a
 a lilo lub LOADLIN mog� zosta� skonfigurowane, aby �adowa�y Linux-a z
 tych obraz�w.

 Zak��daj�c, �e twoje j�dro jest skonfigurowane na odpowiednie
 urz�dzenie z g��wnym systemem plik�w i masz stworzony obraz initrd na
 innym Linux-ie, najprostszym sposobem aby zacz��, to wystartowanie
 Linux-a u�ywaj�c LOADLIN-a w ten spos�b:

      LOADLIN <kernel> initrd=<initrd-image>

 Jak ju� mo�esz wystartowa� Linux-a na swojej maszynie, mo�esz wtedy
 zainstalowa� lilo aby umo�liwi� startowanie Linux-a bezpo�rednio.
 Na przyk�ad powiedzmy, �e /dev/hda1 jest partycj� bez Linux-a i /mnt
 mo�na u�y� jako katalog do montowania.  najpierw utw�rz podkatalog na
 partycji docelowej dla plik�w Linux-a:

      mount /dev/hda1 /mnt
      mkdir /mnt/linux
      cp [obraz-j�dra] /mnt/linux/vmlinuz
      cp [obraz-initrd] /mnt/linux/initrd

 W tym przyk�adzie, powiedzmy, �e /dev/sda1 jest partycj� na kt�rej ma
 si� znale�� g��wny system plik�w, dysk twardy SCSI zamontowany przez
 kontroler SCSI PCMCIA. Aby zainstalowa� lilo, stw�rz plik lilo.conf z
 tak� zawarto�ci�:

      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

 Linia boot= informuje, �eby zainstalowa� program �aduj�cy system do
 Master Boot Record podanego urz�dzenia. Linia root= identyfikuje
 konkretny g��wny system plik�w, kt�ry ma zosta� u�yty po za�adowaniu
 obrazu initrd, parametr ten mo�e by� niepotrzebny je�li j�dro jest ju�
 skonfigurowane w ten spos�b. Sekcja other= u�ywana jest do opisania
 innego systemu operacyjnego zainstalowanego na /dev/hda1.

 Aby zainstalowa� lilo w tym przypadku u�yj:

      lilo -C lilo.conf

 Zauwa�, �e w tym przypadku plik lilo.conf u�ywa scie�ek absolutnych,
 kt�re zawieraj� /mnt. Zrobi�em tak w przyk�adzie poniewa� docelowy
 system plik�w mo�e nie umie� tworzy� urz�dze� Linux-a dla parametr�w
 boot= i root=.

 55..  JJaakk rraaddzzii�� ssoobbiiee zz nniieeoobbss��uuggiiwwaannyymmii kkaarrttaammii..

 55..11..  KKoonnffiigguurraaccjjaa nniieeoobbss��uuggiiwwaannyycchh kkaarrtt..

 Zak�adaj�c, �e twoja karta jest obs�ugiwana przez istniej�cy
 sterownik, wszystko co trzeba zrobi�, to doda� pozycj� do
 /etc/pcmcia/config, kt�ra poinformuje cardmgr jak zidentyfikowa� kart�
 i kt�ry(e) sterownik(i) do��czy� do tej karty. Wi�cej informacji na
 temat formatu pliku konfiguracyjnego na stronie podr�cznika "man" na
 temat pcmcia. Je�li w�o�ysz nieznan� kart�, to cardmgr z regu�y
 zapisze troch� informacji identyfikacyjnych w logu systemowym, kt�ry
 mo�e zosta� u�yty do konfiguracji.

 Oto przyk�ad raportu cardmgr w /usr/adm/messages na temat nieznanej
 karty:

    cardmgr[460]: unsupported card in socket 1
    cardmgr[460]: version info: "MEGAHERTZ", "XJ2288", "V.34 PCMCIA
    MODEM"

 Odpowiadaj�ca pozycja konfiguracyjna w /etc/pcmcia/config wygl�da�oby
 tak:

    card "Megahertz XJ2288 V.34 Fax Modem"
      version "MEGAHERTZ", "XJ2288", "V.34 PCMCIA MODEM"
      bind "serial_cs"

 Mo�esz u�y� "*", aby oznaczy� �a�cuchy, kt�re nie musz� si� dok�adnie
 zgadza�, jak np. numery wersji. Kiedy robisz now� pozycj�
 konfiguracyjn�, zwr�� uwag� na to, �eby dok�adnie skopiowa� �a�cuchy,
 zachowuj�c wszelkie du�e i ma�e litery oraz przerwy (spacje). Upewnij
 si� tak�e, �e pozycja konfiguracyjna ma tak� sam� ilo�� �a�cuch�w jak
 to stwierdzono w logach.

 Po tym jak zmodyfikujesz /etc/pcmcia/config, mo�esz poinformowa�
 cardmgr, aby prze�adowa� plik konfiguracyjny:

    kill -HUP `cat /var/run/cardmgr.pid`

 Je�li uda ci si� ustawi� jak�� pozycj� konfiguracyjn� dla nowej karty,
 przy�lij mi kopi� prosz�, tak �ebym m�g� j� do��czy� do standardowego
 pliku konfiguracyjnego.

 55..22..  JJaakk mmaamm ddooddaa�� oobbss��uugg�� ddllaa kkaarrttyy kkoommppaattyybbiillnneejj zz NNEE22000000 ??

 Najpierw sprawd�, czy karta nie zosta�a ju� rozpoznana przez cardmgr.
 Niekt�re karty nie wymienione w SUPPORTED.CARDS s� wersjami OEM kart
 obs�ugiwanych. Je�li znajdziesz taka kart�, daj mi zna�, �ebym m�g� j�
 doda� do listy.

 Je�li twoja karta nie zosta�a rozpoznana, post�puj zgodnie z
 instrukcjami w sekcji ``3.6'', aby stworzy� pozycj� konfiguracyjn� dla
 twojej karty oraz powi�� swoj� kart� ze sterownikiem pcnet_cs.
 Zrestartuj cardmgr, aby u�y� nowego zaktualizowanego pliku
 konfiguracyjnego.

 Je�li sterownik pcnet_cs twierdzi, �e nie mo�e okre�li� adresu
 sprz�towego twojej karty ethernet-owej, to zmodyfikuj nowy plik
 konfiguracyjny, aby powi�za� kart� ze sterownikiem karty pami�ci -
 memory_cs. Zrestartuj cardmgr, aby u�y� nowego zaktualizowanego pliku
 konfiguracyjnego.  B�dziesz musia� zna� adres sprz�towy swojej karty
 sieciowej. Adres ten jest seri� dwucyfrowych szesnastkowych liczb,
 cz�sto wydrukowanych na karcie.  Je�li go tam nie ma, mo�esz u�y�
 sterownika DOS-owego, aby go wy�wietli�. W ka�dym razie, jak go ju�
 znasz to uruchom:

    dd if=/dev/mem0a count=20 | od -Ax -t x1

 i poszukaj linijki z twoim adresem. Tylko parzyste bajty s�
 zdefiniowane, wiec zignoruj bajty nieparzyste w wyniku. Zapisz
 szesnastkowy offset pierwszego bajtu adresu. Teraz wyedytuj
 modules/pcnet_cs.c i znajd� struktur� hw_info.  B�dziesz musia�
 utworzy� now� pozycj� dla twojej karty. Pierwsze pole jest offsetem
 pami�ci. Nast�pne trzy pola to pierwsze trzy bajty adresu sprz�towego.
 Ostatnie pole zawiera flagi dla konkretnych cech karty; na pocz�tek
 spr�buj ustawi� tu 0.

 Po edycji pcnet_cs.c, skompiluj i zainstaluj nowy modu�.  Zmodyfikuj
 jeszcze raz /etc/pcmcia/config i zmie� powi�zania karty z memory_cs na
 pcnet_cs. Post�puj zgodnie z instrukacjami dla prze�adowywania pliku
 konfiguracyjnego i wszystko powinno by� ustawione. Przy�lij mi prosz�
 kopie twoich nowych pozycji konfiguracyjnych i hw_info.

 Je�li nie mo�esz znale�� adresu sprz�towego swojej karty w formie
 szesnastkowej, ostateczn� metod� mo�e okaza� si� jawne podanie adresu
 w czasie inicjacji modu�u pcnet_cs. Popraw plik /etc/pcmcia/config
 dodaj�c opcj� hw_addr=:

    module "pcnet_cs" opts "hw_addr=0x00,0x80,0xc8,0x01,0x02,0x03"

 Oczywi�cie zamiast podanego adresu podaj adres swojej karty w
 odpowiednim miejscu.

 55..33..  IInntteerrffeejjss PPCCMMCCIIAA ddoo ddyysskkiieetteekk..

 Pakiet ten nie obs�uguje jeszcze interfejs�w u�ywanych przez Compaq
 Aero i kilka innych laptop-�w. Kruczkiem w obs�udze dyskietek w Aero
 jest to, �e Aero wydaje si� u�ywa� ustawianego kontrolera PCMCIA, aby
 obs�ugiwa� DMA dla dyskietek. Nie wiedz�c jak to jest dok�adnie
 robione, nie ma sposobu, aby zaimplementowa� to w Linux-ie.

 Je�li kontroler dyskietek jest obecny podczas startowania Aero, BIOS
 Aero skonfiguruje kart� i Linux zidentyfikuje j� jako normaln� stacj�
 dyskietek. Kiedy za�adowane s� sterowniki Linux-owe PCMCIA, zauwa��,
 �e karta jest ju� skonfigurowana i skojarzona ze sterownikiem Linux-
 owym i zostawi� to gniazdo w spokoju. Tak wi�c nap�d mo�e by� u�ywany
 je�li jest obecny podczas startu, ale nie mo�e by� wymieniany podczas
 pracy (hot swapping).

 55..44..  CCoo jjeesstt zz oobbss��uugg�� kkaarrtt XXiirrccoomm ??

 Dzi�ki pracy Wernera Kocha w aktualnej wersji pakietu PCMCIA zawarty
 jest sterownik do kart ethernetowej i ethernet/modem firmy Xircom.
 Specjalnie dla dyskusji na temat rozwoju sterownika Xircom ustawi�em
 forum HyperNews pod adresem
 hyper.stanford.edu/HyperNews/get/pcmcia/xircom.html
 <http://hyper.stanford.edu/HyperNews/get/pcmcia/xircom.html>.

 Przez d�ugi czas karty Xircom nie by�y obs�ugiwane poniewa� Xircom
 mia� tak� zasad�, �eby nie ujawnia� technicznych informacji o swoich
 kartach. Jednak troch� zmienili zasady i teraz rozprowadzaj�
 informacje o sterowniku.

 66..  WWsskkaazz��wwkkii ddoo ��lleeddzzeenniiaa ((ddeebbuuggggiinngg)) ii iinnffoorrmmaaccjjee ddoo pprrooggrraammoowwaanniiaa..

 66..11..  JJaakk mmoogg�� wwyyss��aa�� ppoommooccnnyy lliisstt oo bb����ddzziiee ??

 Najlepszym sposobem na zg�aszanie b��d�w jest u�ycie listy
 komunikatowej na HyperNews-ach na stronie dotycz�cej PCMCIA na Linux-
 ie. W ten spos�b inni tak�e mog� �ledzi� bie��ce problemy (i poprawki
 czy obej�cia je�li s� dost�pne).

 Oto rzeczy, kt�re powinny by� zawarte w ka�dym li�cie na temat b��du:

 �  Typ twojego systemu i wynik polecenia probe.

 �  Jakich kart PCMCIA u�ywasz.

 �  Wersja twojego j�dra i wersja PCMCIA.

 �  Jakiekolwiek zmiany, jakie zrobi�e� w pliku /etc/pcmcia albo
    rc.pcmcia.

 �  Wszystko co jest zwi�zane z kartami PCMCIA z log-�w systemowych.

 Przed wys�aniem listu o b��dzie, upewnij si� prosz�, �e u�ywasz
 najnowszej wersji sterownik�w do PCMCIA. Szczerze powiem, �e czytanie
 o czym�, co ju� naprawi�em nie jest najbardziej konstruktywnym
 sposobem na sp�dzanie czasu.

 Je�li tw�j problem zwi�zany jest tak�e z nag�ym przerwaniem dzia�ania
 j�dra, podczas kt�rego wy�wietlane s� zawarto�ci rejestr�w, to
 zawarto�� ta jest przydatna tylko wtedy je�li mo�esz wskaza� adres
 EIP. Je�li jest on w g��wnym j�drze, sprawd� ten adres w System.map,
 aby zidentyfikowa� funkcj�, kt�ra by�a w tym momencie wykonywana.
 Je�li przerwa nast�pi�a podczas dzia�ania jakiego� modu�u �adowalnego,
 jest to troch� trudniejsze do prze�ledzenia. W bie��cej wersji
 narz�dzi do modu��w program ksyms -m wy�wietli adres podstawowy
 ka�dego modu�u. We� modu�, kt�ry zawiera podane EIP, i odejmij jego
 adres podstawowy od EIP, aby otrzyma� w ten spos�b offset w module.
 Uruchom wtedy gdb z tym modu�em jako parametr i sprawd� otrzymany
 offset poleceniem list. Zadzia�a to tylko wtedy kiedy dany modu� by�
 skompilowany z opcj� -g, czyli z informacjami dla debugger-a.

 Je�li nie masz dost�pu do WWW, informacje o b��dach mo�na wysy�a� do
 mnie na adres [email protected]. Chocia� wol�, aby informacje
 takie by�y wysy�ane na mojej stronie WWW, tak �eby inni tak�e mogli je
 widzie�.

 66..22..  IInnffoorrmmaaccjjee nnaa tteemmaatt nniisskkooppoozziioommoowweeggoo ��lleeddzzeenniiaa PPCCMMCCIIAA..

 Modu�y PCMCIA zawieraj� du�o warunkowo skompilowanego kodu �ledzenia.
 Wi�kszo�� tego kodu jest pod kontrol� definicji preprocesora
 PCMCIA_DEBUG. Je�li jest to niezdefiniowane, to kod do �ledzenia nie
 zostanie wkompilowany. Je�li jest utawione na 0, kod ten jest
 wkompilowany, ale nieaktywny. Im wi�ksze poziomy tym wi�cej
 informacji. Ka�dy modu� stworzony ze zdefiniowanym symbolem
 PCMCIA_DEBUG b�dzie mia� parametr typu _I_n_t_e_g_e_r, pc_debug, kt�ry
 kontroluje ilo�� pojawiaj�cych si� informacji. Mo�e to by� ustawiane
 wtedy, kiedy modu� jest �adowany, tak wi�c wyj�cie mo�e by�
 kontrolowane, na zasadzie "dla ka�dego modu�u" bez potrzeby
 przekompilowywania.

 Jest kilka narz�dzi do �ledzenia w podkatalogu debug_tools/ w
 dystrybucji PCMCIA. Narz�dzia dump_tcic i dump_i365 generuj� kompletny
 zrzut rejestr�w kontrolera PCMCIA i dekoduj� du�o informacji z
 rejestr�w. S� najbardziej po�yteczne wtedy, gdy masz dost�p do
 schematu danych konkretnego uk�adu scalonego kontrolera. Narz�dzie
 dump_tuples wy�wietla CIS-y (Card Information Structure) danej karty i
 dekoduje niekt�re z najwa�niejszych bit�w. A narz�dzie dump_cisreg
 wy�wietla rejestry lokalnej konfiguracji karty.

 Sterownik memory_cs do karty pami�ci jest tak�e czasami przydatny do
 �ledzenia. Mo�e on zosta� powi�zany z ka�d� kart� PCMCIA i nie wp�ywa
 to negatywnie na inne sterowniki. Mo�e on zosta� u�yty do
 bezpo�redniego dost�pu do pami�ci atrybutowej karty albo zwyk�ej
 pami�ci.

 66..33..  JJaakk mmaamm nnaappiissaa�� sstteerroowwnniikk CCaarrdd SSeerrvviicceess ddllaa nnoowweejj kkaarrttyy ??

 Najlepsz� dokumentacj� dla interfejsu PCMCIA dla Linux-a jest "The
 Linux PCMCIA Programmer's Guide". Najnowsza wersja jest zawsze
 dost�pna z hyper.stanford.edu albo na WWW -
 hyper.stanford.edu/HyperNews/get/pcmcia/home.html
 <http://hyper.stanford.edu/HyperNews/get/pcmcia/home.html>.

 Dla urz�dze�, kt�re s� wzgl�dnie podobne do normalnych urz�dze� kart
 ISA, b�dziesz m�g� przypuszczalnie u�y� fragment�w sterownik�w Linux-
 a, kt�re ju� istniej�. W niekt�rych przypadkach, najwi�kszym problem
 b�dzie takie przerobienie ju� istniej�cego sterownika, aby m�g� on
 sobie poradzi� z wk�adaniem i wyjmowaniem danej karty. W bie��cej
 wersji, sterownik do karty pami�ci jest jedynym sterownikiem, kt�ry
 nie zale�y od �adnej cz�ci innego sterownika, kt�ry wykonywa�by za
 niego brudn� robot�.

 Napisa�em szkielet sterownika z du�� ilo�ci� komentarzy, kt�re
 wyja�niaj� jak sterownik si� komunikuje z Card Sevices; znajdziesz ten
 szkielet w dystrybucji �r�d�owej PCMCIA w podkatalogu
 modules/skeleton.c.

 66..44..  WWsskkaazz��wwkkii ddllaa aauuttoorr��ww sstteerroowwnniikk��ww kklliieenntt��ww PPCCMMCCIIAA..

 Zdecydowa�em, �e nie jest rozs�dne dla mnie, abym rozprowadza�
 wszystkie sterowniki klient�w PCMCIA jako cz�� pakietu PCMCIA.  Ka�dy
 nowy sterownik czyni g��wny pakiet trudniejszym do utrzymania i, co
 mo�na by�o przewidzie�, do��czenie sterownika przenosi troch� pracy
 opiekuna z autora na mnie. W zamian za to, zdecyduj� osobno dla
 ka�dego przypadku (case by case) czy w��czy� czy nie sterowniki pisane
 przez osoby trzecie, w zale�no�ci od ��da� u�ytkownik�w jak i
 mo�liwo�ci utrzymywania. Sugeruj�, �eby autorzy sterownik�w, kt�re nie
 dosta�y si� do g��wnego pakietu, zaadoptowali nast�puj�cy schemat przy
 przygotowywaniu ich sterownik�w do dystrybucji.

 Pliki sterownika powinny by� u�o�one w takiej samej strukturze
 katalog�w jak w g��wnej dystrybucji, tak, �eby mo�na by�o rozpakowa�
 sterownik ten w g��wnym katalogu �r�de� g��wnej dystrybucji. Sterownik
 powinien posiada� pliki �r�d�owe (w Katalog g��wny powinien zawiera�
 tak�e plik README.

 W katalogu g��wnym powinien si� tak�e znajdowa� makefile, ustawiony w
 taki spos�b, �e "make -f ... all" i "make -f ... install" skompiluje
 sterownik i zainstaluje wszystkie potrzebne pliki. Je�li plik ten
 posiada rozszerzenie .mk, to zostanie on automatycznie wykonany przez
 g��wny pliku Makefile dla cel�w all i install.
 Oto przyk�ad jak taki plik m�g�by by� skonstruowany.

      # Przyk�adowy Makefile dla sterownik�w pisanych przez osoby trzecie
      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)

 Plik ten u�ywa cel�w install zdefiniowanych w pakiecie PCMCIA 2.9.10 i
 p�niejszych. Zawiera on tak�e cel "dist" dla wygody autora
 sterownika. Przypuszczalnie b�dziesz chcia� doda� numer wersji do
 ostatecznego pakietu (np. sample_cs-1.5.tar.gz).  Pe�na dystrybucja
 mog�aby wygl�da� tak:

 sample_cs.mk
 README.sample_cs
 modules/sample_cs.c
 modules/sample_cs.h
 etc/sample
 etc/sample.opts
 man/sample_cs.4

 Z takim uk�adem katalog�w, po rozpakowaniu sterownik staje si� cz�ci�
 g��wnej dystrybucji. Mo�e korzysta� z plik�w nag��wkowych PCMCIA, tak
 jak i z mo�liwo�ci sprawdzania konfiguracji systemu u�ytkownika i
 automatycznego sprawdzania zale�no�ci tak samo jak "normalny"
 sterownik klienta.

 B�d� akceptowa� sterowniki przygotowane zgodnie z t� specyfikacj� i
 umieszcza� je w katalogu /pub/pcmcia/contrib na moim serwerze FTP -
 hyper.stanford.edu. Plik README w tym katalogu b�dzie opisywa� jak
 rozpakowa� sterownik pisany przez trzeci� osob�.

 Interfejs sterownika PCMCIA nie zmieni� si� wiele przez ten czas i
 prawie zawsze zachowywa� wsteczn� kompatybilno��. Sterownik klienta
 nie b�dzie musia� by� aktualizowany dla pobocznych wersji w pakiecie
 g��wnym PCMCIA. Spr�buj� powiadamia� autor�w sterownik�w o zmianach,
 kt�re wymagaj� uaktualnienia ich sterownik�w.

 66..55..  OOdd tt��uummaacczzaa..

 T�umaczenie to jest chronione prawami autorskimi � Bartosza
 Maruszewskiego.  Dozwolone jest rozprowadzanie i dystrybucja na
 prawach takich samych jak dokument oryginalny.

 Je�li znalaz�e� jakie� ra��ce b��dy ortograficzne, gramatyczne,
 sk�adniowe, techniczne to pisz do mnie:

 [email protected] A mo�esz tu znale�� do�� du�o mo�e nie
 b��d�w, ale konstrukcji, kt�re nie s� podobne do j�zyka polskiego. Ale
 to wszystko dlatego, �e jest troch� ci�ko przet�umaczy� zdanko z
 angielskiego je�li jest obok siebie 4 czy czasami nawet 6 rzeczownik�w
 ;) Je�li zauwa�ysz taki stw�r i wpadniesz na lepsze okre�lenie,
 napisz.  Je�li b�dzie to w miar� sensowne, to napewno tego nie
 zignoruj�.

 Oficjaln� stron� t�umacze� HOWTO jest http://www.jtz.org.pl/

 Aktualne wersje przet�umaczonych dokument�w znajduj� si� na tej�e
 stronie. Dost�pne s� tak�e poprzez anonimowe ftp pod adresem
 ftp.jtz.org.pl w katalogu /JTZ/.

 Przet�umaczone przeze mnie dokumenty znajduj� si� tak�e na mojej
 stronie WWW. <http://www.jtz.org.pl/bartek/tlumaczenie.html> S� tam
 te� odwo�ania do Polskiej Strony T�umaczeniowej.

 Kontakt z nasz� grup�, grup� t�umaczy mo�esz uzyska� poprzez list�
 dyskusyjn� [email protected]. Je�li chcesz sie na ni� zapisa�, to wy�lij
 list o tre�ci subscribe jtz Imi� Nazwisko na adres
 [email protected]

 Zmiany w tym dokumencie wprowadzone przez t�umacza to odwo�ania do
 polskich serwer�w ftp.