Provided by: manpages-pl_20060617-4_all bug

NAZWA

       setserial - pobierz/ustaw informacje o porcie szeregowym

SK/LADNIA

       setserial [ -abqvVWz ] device [ parameter1 [ arg ] ] ...

       setserial -g [ -abGv ] device1 ...

OPIS

       setserial jest programem przeznaczonym do ustawiania i/lub raportowania
       danych konfiguracyjnych zwizanych z portem szeregowym. Dane te zawieraj
       port  I/O,  numer  IRQ, to czy klawisz break powinien by interpretowany
       jako Secure Attention Key, itd.

       Podczas normalnego bootowania, inicjalizowane s jedynie porty COM  1-4;
       uywane  s przy tym domylne wartoci portow I/O i IRQ. Aby zainicjalizowa
       dodatkowe porty szeregowe, lub  aby  zmieni  konfiguracje  portow  1-4,
       musisz  uy  programu  setserial.   Zazwyczaj  jest on wolany ze skryptu
       rc.serial, ktory z kolei jest normalnie uruchamiany z /etc/rc.local.

       Argument(y)  device   okrela,   ktore   urzdzenie   szeregowe   ma   by
       skonfigurowane lub odpytane.  Zazwyczaj przyjmuje posta /dev/cua[0-3].

       Bez  parametrow, setserial drukuje rodzaj portu np. 8250, 16450, 16550,
       16550A), sprztowy port I/O, sprztow lini IRQ, szybko i  niektore  flagi
       operacyjne.

       Przy  podanej opcji -g, argumenty setserial s interpretowane jako lista
       urzdze, dla ktorych naley wydrukowa charakterystyk.

       Bez opcji -g, pierwszy argument jest interpretowany jako  urzdzenie  do
       zmodyfikowania   lub   do  wydrukowania  charakterystyki,  a  dodatkowe
       argumenty  interpretowane  s   jako   parametry,   ktore   powinny   by
       zaaplikowane do tego urzdzenia.

       W  wikszoci  wypadkow  wymagane  s  uprawnienia superuytkownika. Jednak
       kilka opcji portow mog ustawia zwykli  uytkownicy  i  opcje  te  zostan
       zaznaczone jako wyjtki w tym podrczniku.

OPCJE

       Setserial przyjmuje nastpujce opcje:

       -a     Podczas  raportowania konfiguracji urzdzenia szeregowego, drukuj
              wszelkie dostpne informacje.

       -b     Podczas raportowania konfiguracji urzdzenia szeregowego,  drukuj
              zestawienie konfiguracji urzdzenia, ktore moe by wystarczajce do
              wypisania podczas procesu bootowania w skrypcie /etc/rc.

       -G     Wydrukuj informacj o konfiguracji portu szeregowego  w  postaci,
              ktora  moe  zosta  zassana  do  setseriala  jako argumenty linii
              polece.

       -q     Bd cicho.  Setserial wydrukuje wtedy mniej linii na wyjciu.

       -v     Bd gadatliwy.  Setserial wydrukuje  wtedy  dodatkowy  status  na
              wyjciu.

       -V     Wywietl wersj i zakocz.

       -W     Dokonaj  dzikiej  inicjalizacji  przerwa  i zakocz. Opcja ta nie
              jest istotna w jdrach po wersji 2.1.

       -z     Zeruj flagi szeregowe przed rozpoczciem ich ustawiania. Jest  to
              zwizane  z  automatycznym  zachowywaniem flag szeregowych z flag
              -G.

PARAMETRY

       Portowi szeregowemu mona przyzna niej wymienione parametry.

       Wszystkie  wartoci  argumentow  s  wartociami  dziesitnymi,   chyba   e
       poprzedzone s "0x".

       port port_number
              Opcja port ustawia port I/O, jak opisano wyej.

       irq irq_number
              Opcja irq ustawia sprztowe IRQ, jak opisano wyej.

       uart uart_type
              Opcja  ta  jest uywana do ustawienia typu UART-a. Dozwolone typy
              to none, 8250, 16450,  16550,  16550A,  16650,  16650V2,  16654,
              16750, 16850, 16950, i 16954.  Uycie typu UART none wylczy port.

              Niektore  modemy wewntrzne s oznaczone jako majce "UART 16550A z
              buforem 1K" Jest to klamstwo. Nie  maj  w  rzeczywistoci  UART-a
              kompatybilnego  z  16550A; zamiast niego maj UART kompatybilny z
              16450 z 1K buforem odbiorczym dla zapobiegania  spustoszeniom  u
              odbiorcy.  Jest  to  istotne, poniewa nie maj one transmitujcego
              FIFO. Dlatego nie s  kompatybilne  z  UART-em  16550A  i  proces
              autokonfiguracji  zidentyfikuje  je  prawidlowo jako 16450. Jeli
              sprobujesz obej to, uywajc parametru uart, pojawi  si  porzucone
              znaki  podczas  transmisji  plikow.  UART-y  te  maj zwykle inne
              problemy: parametr skip_test powinien by rownie czsto podawany.

       autoconfig
              Gdy  podano  ten  parametr,  setserial  poprosi  jdro   o   prob
              automatycznego  skonfigurowania portu szeregowego. Port I/O musi
              by ustawiony  prawidlowo;  jdro  sprobuje  okreli  typ  UART,  a
              dodatkowo  jeli  podano  parametr  auto_irq,  Linux  sprobuje te
              automatycznie  okreli  IRQ.   Parametr  autoconfig  powinien  by
              podawany po parametrach port,auto_irq, i skip_test.

       auto_irq
              Sprobuj  podczas  autokonfiguracji  okreli  IRQ.  Wlaciwo ta nie
              zawsze musi da prawidlowy wynik; niektore konfiguracje  sprztowe
              mog  oglupi jdro.  Ogolnie, bezpieczniej jest nie uywa wlaciwoci
              auto_irq, lecz raczej samemu podawa warto IRQ, uywajc  parametru
              irq.

       ^auto_irq
              Nie probuj okreli IRQ podczas autokonfiguracji.

       skip_test
              Pomi   test   UART  podczas  autokonfiguracji.  Niektore  modemy
              wewntrzne   nie   maj   UART-ow   kompatybilnych   z    National
              Semiconductor, lecz zamiast nich tanie imitacje. Niektore z nich
              nie wspieraj w pelni trybu detekcji loopback, ktorego uywa  jdro
              do upewnienia si, czy pod podanym adresem jest rzeczywicie UART.
              Dlatego dla niektorych modemow bdzie trzeba  poda  ten  parametr
              aby mona bylo zainicjalizowa UART prawidlowo.

       ^skip_test
              Nie pomijaj testu UART podczas autokonfiguracji.

       baud_base baud_base
              Opcja  ta  ustawia  podstawow  prdko  (baud  rate),  ktora  jest
              czstotliwoci  zegara  podzielon  przez  16.  Normalnie  jest  to
              115200, co jest zarazem najwiksz prdkoci wspieran przez UART.

       spd_hi Gdy  aplikacja  da  38.4kb,  uywaj  57.6kb.  Parametr ten moe by
              ustawiany przez nieuprzywilejowanego uytkownika.

       spd_vhi
              Gdy aplikacja da  38.4kb,  uywaj  115kb.  Parametr  ten  moe  by
              ustawiany przez nieuprzywilejowanego uytkownika.

       spd_shi
              Uyj  230kb gdy aplikacja da 38.4kb. Parametr ten moe by podawany
              przez uytkownika nieuprzywilejowanego.

       spd_warp
              Uyj 460kb gdy aplikacja da 38.4kb. Parametr ten moe by  podawany
              przez uytkownika nieuprzywilejowanego.

       spd_cust
              Gdy aplikacja da 38.4kb, uyj ustawionego dzielnika do ustawienia
              szybkoci. W tym wypadku, prdko  jest  okrelona  przez  baud_base
              podzielone   przez   divisor(dzielnik).   Parametr  ten  moe  by
              podawany przez nieuprzywilejowanego uytkownika.

       spd_normal
              Gdy aplikacja da 38.4kb,  uywaj  38.4kb.  Parametr  ten  moe  by
              ustawiany przez nieuprzywilejowanego uytkownika.

       divisor divisor
              Opcja  ta ustawia konfigurowalny dzielnik. Dzielnik bdzie uywany
              gdy wybrana zostanie opcja  spd_cust,  a  port  szeregowy  bdzie
              ustawiony  przez  aplikacj  na  38.4kb.   Parametr  ten  moe  by
              podawany przez nieuprzywilejowanego uytkownika.

       sak    Ustaw klawisz break na Secure Attention Key.

       ^sak   wylcz Secure Attention Key.

       fourport
              Skonfiguruj port jako kart AST Fourport.

       ^fourport
              Wylcz konfiguracj AST Fourport.

       close_delay delay
              Podaj ilo czasu w setnych sekundy, podczas ktorych DTR  powinien
              zosta  w  stanie  obnionym  na  linii  szeregowej  po  tym,  jak
              urzdzenie wydzwaniajce (callout  device)  jest  zamykane,  zanim
              blokowane   urzdzenie   wdzwaniajce   si  (dialin  device)  znow
              podniesie DTR. Domyln wartoci tej opcji jest 50 lub pol sekundy.

       closing_wait oponienie
              Podaj ilo czasu w setnych sekundy, podczas ktorej  jdro  powinno
              czeka   na  dane  nadawane  z  portu  szeregowego  podczas  jego
              zamykania. Jeli podane zostanie "none", nie  bdzie  oczekiwania.
              Jeli podane zostanie "infinite", jdro bdzie czeka w nieokrelenie
              dlugo na przybycie buforowanych  danych.   Domylnym  ustawieniem
              jest  3000  lub  30  sekund  oponienia.  Ta  warto  domylna jest
              wskazana dla  wikszoci  urzdze.  Jeli  wybrane  zostanie  dlugie
              oponienie,  to  port  szeregowy  moe  si  zawiesi  na dlugi czas
              podczas zamykania. Jeli  wybrany  bdzie  zbyt  krotki  czas,  to
              istnieje ryzyko utraty danych. Jeli urzdzenie jest bardzo wolne,
              jak w ploterze, to mona wybra wiksze wartoci.

       session_lockout
              Blokuj dostp do portu wydzwaniajcego (/dev/cuaXX) na przestrzeni
              ronych sesji. To znaczy, e gdy proces otworzy port, to aden inny
              proces nie moe go ju otworzy,  dopoki  pierwszy  proces  go  nie
              zamknie.

       ^session_lockout
              Nie blokuj portu wydzwaniajcego na przestrzeni sesji.

       pgrp_lockout
              Blokuj port wydzwaniajcy (/dev/cuaXX) na przestrzeni ronych grup
              procesow.  To znaczy, e gdy proces otworzyl port, to  aden  inny
              proces  z  innej  grupy  procesow nie moe go otworzy, dopoki ten
              proces go nie zamknie.

       ^pgrp_lockout
              Nie blokuj  portu  wydzwaniajcego  na  przestrzeni  ronych  grup
              procesow.

       hup_notify
              Poinformuj  proces  blokowany  na otwieraniu linii wdzwaniajcej,
              gdy  proces  skoczy  uywa  linii  wydzwaniajcej  (zarowno  przez
              zamknicie  jej,  lub  przez  zawieszenie  jej)  przez  zwrocenie
              (funkcji?) open EAGAIN.

              Zastosowanie  tego  parametru  odnosi  si  do  getty,  ktore   s
              blokowane  na liniach wdzwaniajcych portow szeregowych. Umoliwia
              to getty zresetowanie modemu  (ktory  moe  mie  dziki  aplikacji
              uywajcej  urzdzenia  wydzwaniajcego  zmienion konfiguracj) przed
              ponownym blokowaniem.

       ^hup_notify
              Nie   informuj   procesu   blokowanego   na   otwieraniu   linii
              wdzwaniajcej, gdy urzdzenie wydzwaniajce jest odwieszone.

       split_termios
              Traktuj ustawienia termios uywane przez urzdzenie wydzwaniajce i
              ustawienia urzdzenia wdzwaniajcego osobno.

       ^split_termios
              Uywaj tej samej  struktury  termios  do  przechowywania  ustawie
              urzdzenia wdzwaniajcego i wydzwaniajcego.

       callout_nohup
              Jeli   dany   port   szeregowy  jest  otworzony  jako  urzdzenie
              wydzwaniajce, nie odwieszaj tty gdy porzucony zostanie CD.

       ^callout_nohup
              Nie pomijaj odwieszania tty gdy port  szeregowy  jest  otworzony
              jako  urzdzenie  wydzwaniajce.  Oczywicie  musi by wlczona flaga
              HUPCL termios, jeli odwieszenie ma si pojawi.

       low_latency
              Minimalizuj oponienia odbioru z  urzdzenia  szeregowego  kosztem
              wikszego  zaangaowania CPU. (Normalnie jest 5-10ms oponienie nim
              znaki zostan przekazane dyscyplinie  linii.)  Jest  to  domylnie
              wylczone,  lecz  niektore aplikacje czasu rzeczywistego mog tego
              potrzebowa.

       ^low_latency
              Optymalizuj efektywne przetwarzanie przez CPU znakow szeregowych
              kosztem  placenia  redniego  oponienia  5-10ms  nim znaki zostan
              przetworzone. Jest to domylne.

ROZWAANIA O KONFIGUROWANIU PORT'OW SZEREGOWYCH

       Wanym jest, by zauway i setserial zwyczajnie mowi jdru  Linuksa,  gdzie
       powinien  spodziewa  si  znale  port  I/O  i linie IRQ okrelonego portu
       szeregowego. Nie konfiguruje on sprztu! Aby to uczyni, musisz fizycznie
       zaprogramowa  kart  szeregow, zazwyczaj przez przestawienie zworek, lub
       przelczenie przelcznikow DIP.

       Sekcja  ta  udostpni  pewne  wskazowki  pomocne   w   decydowaniu   jak
       skonfigurowa porty szeregowe.

       "Standardowe powizania MS-DOS" zostaly pokazane niej:

              /dev/ttyS0 (COM1), port 0x3f8, irq 4
              /dev/ttyS1 (COM2), port 0x2f8, irq 3
              /dev/ttyS2 (COM3), port 0x3e8, irq 4
              /dev/ttyS3 (COM4), port 0x2e8, irq 3

       Z  powodu  ogranicze  w  projekcie  architektury szyn AT/ISA, normalnie
       linia  IRQ  nie  moe  by  dzielona  midzy  dwoma  lub   wicej   portami
       szeregowymi.  Jeli sprobujesz tak zrobi, jeden lub obydwa z tych portow
       stan si niedostpne, gdy sprobujesz uywa ich naraz. Ograniczenie to mona
       obej   przez   specjalne   wieloportowe   karty   szeregowe,   ktore  s
       skonstruowane do dzielenia wielu portow  szeregowych  na  jednej  linii
       IRQ. Karty wspierane przez Linuksa zawieraj AST FourPort, Accent Async,
       Usenet Serial II, Bocaboard BB-1004, BB-1008, i BB-2016, oraz HUB-6.

       Wybor alternatywnej linii IRQ jest trudny, gdy prawie wszystkie z  nich
       s ju w uytku. Nastpujca tabela zawiera wykaz "standardowych przydzialow
       MS-DOS" dla linii IRQ:

              IRQ 3: COM2
              IRQ 4: COM1
              IRQ 5: LPT2
              IRQ 7: LPT1

       Wiele osob uwaa, e IRQ 5 jest dobrym wyborem, zakladajc e w  komputerze
       aktywny jest tylko jeden port rownolegly. Innym dobrym wyborem jest IRQ
       2 (aka IRQ 9); chocia to IRQ jest czasem uywane przez karty sieciowe  i
       bardzo  rzadko  przez karty VGA (dla przerwania vertical retrace). Jeli
       twoja karta VGA jest tak skonfigurowana, sprobuj to wylczy, tak by mogl
       wykorzysta   to   IRQ  dla  innej  karty.  Nie  jest  to  niezbdne  pod
       GNU/Linuksem i wikszoci innych systemow operacyjnych.

       Jedynymi  innymi  dostpnymi  liniami  IRQ  s  3,  4  i  7,  a   s   one
       prawdopodobnie  uywane  przez  inne porty szeregowe i rownolegle. (Jeli
       twoja karta szeregowa ma  16-bitowy  edge  connector  i  wspiera  wysze
       numery IRQ, to dostpne sa te IRQ 10, 11, 12 i 15.)

       W  maszynach  klasy  AT,  IRQ  2  jest  widziane  jako  IRQ  9  i Linux
       interpretuje je w ten sposob.

       Przerwania inne ni 2 (9), 3, 4, 5, 7, 10, 11, 12, i 15, nie powinny  by
       uywane,  gdy s przyznane innym elementom sprztowym i ogolnie nie mog by
       zmieniane. Oto "standardowe" przyznania:

              IRQ  0      Kanal timera 0
              IRQ  1      Klawiatura
              IRQ  2      Kaskada kontrolera 2
              IRQ  3      Port szeregowy 2
              IRQ  4      Port szeregowy 1
              IRQ  5      Port rownolegly 2 (Zarezerwowane w PS/2)
              IRQ  6      Stacja dyskow
              IRQ  7      Port rownolegly 1
              IRQ  8      Zegar czasu rzeczywistego
              IRQ  9      Przekierowane na IRQ2
              IRQ 10      Zarezerwowane
              IRQ 11      Zarezerwowane
              IRQ 12      Zarezerwowane (Pomocnicze urzdzenie w PS/2)
              IRQ 13      Koprocesor matematyczny
              IRQ 14      Kontroler dysku twardego
              IRQ 15      Zarezerwowane

KONFIGURACJA WIELOPORTOWA

       Niektore wieloportowe uklady szeregowe, dzielce wiele portow na  jednym
       IRQ  uywaj  jednego  lub  wicej  portow  do okrelania czy s tam aktywne
       porty, ktore naley obsluy. Jeli twoj uklad  wieloportowy  obsluguje  te
       porty,   to  powiniene  z  nich  skorzysta  aby  zapobiec  potencjalnym
       zablokowaniom, gdy zginie przerwanie.

       Aby ustawi te porty, musisz  przekaza  set_multiport  jako  parametr  i
       wypisa za nim parametry wieloportowe. Parametry wieloportowe przybieraj
       posta  podania  sprawdzanego  portu,  maski,  wskazujcej,  ktore   bity
       rejestru  s  znaczce  oraz, ostatecznie parametru dopasowania, (match),
       okrelajcego, ktore bity znaczce tego rejestru musz pasowa, gdy  nie  ma
       ju niczego do zrobienia.

       Mona poda do czterech takich kombinacji. Pierwsze kombinacje powinny by
       podawane przez ustawianie parametrow port1, mask1  i  match1.   Nastpne
       przez  ustawianie  port2,  mask2  i match2, itd. Aby wylczy sprawdzanie
       wieloportowe, ustaw port1 na zero.

       Aby  obejrze  biece  ustawienia  wieloportowe,  podaj  w  linii  polece
       parametr get_multiport.

       Oto pewne ustawienia wieloportowe dla popularnych ukladow szeregowych:

              AST FourPort    port1 0x1BF mask1 0xf match1 0xf

              Boca BB-1004/8  port1 0x107 mask1 0xff match1 0

              Boca BB-2016    port1 0x107 mask1 0xff match1 0
                              port2 0x147 mask2 0xff match2 0

Konfiguracja ESP Hayesa

       Setserial moe by rownie uywany do konfigurowania portow na ukladzie ESP
       Hayesa.

       Mona do tego uywa nastpujcych parametrow:

       rx_trigger
              Jest to poziom wyzwalania (w bajtach) FIFO  odbiorczego.  Wiksze
              wartoci  powoduj  mniej przerwa i lepsz wydajno; jednak zbyt due
              wartoci powoduj utrat danych. Dostpne wartoci to 1 do 1023.

       tx_trigger
              Jest to poziom wyzwalania (w bajtach)  FIFO  nadawczego.  Wiksze
              wartoci  mog powodowa mniej przerwa i lepsz wydajno; jednak zbyt
              due  wartoci  powoduj  zdegradowan  wydajno  nadawania.  Dostpne
              wartoci to 1 do 1023.

       flow_off
              Jest to poziom (w bajtach) przy ktorym port ESP zrobi "flow off"
              dla zdalnego nadajnika (tj. powie mu by  przestal  nadawa  wicej
              bajtow).  Dostpne  wartoci  to  1  do  1023. Warto ta powinna by
              wiksza od poziomu wyzwalania odbiorczego i poziomu flow on.

       flow_on
              Jest to poziom (w bajtach) przy ktorym port ESP zrobi "flow  on"
              dla  zdalnego  nadajnika  (tzn.  powie  mu  by wznowil nadawanie
              bajtow) po "flow off".  Dostpne wartoci to 1 do 1023.  Warto  ta
              powinna  by mniejsza ni poziom "flow off", lecz wiksza ni poziom
              wyzwalania odbiorczego.

       rx_timeout
              Jest to ilo  czasu,  przez  ktor  port  ESP  powinien  czeka  po
              odebraniu  ostatniego  znaku  przed  sygnalizowaniem przerwania.
              Prawidlowe  wartoci  to  0  do  255.  Zbyt  dua  warto   zwikszy
              oponienia, a zbyt mala spowoduje niepotrzebne przerwania.

UWAGA

       UWAGA:  Skonfigurowanie portu szeregowego tak, by uywal nieprawidlowego
       portu I/O moe zablokowa twoj maszyn.

PLIKI

       /etc/rc.local /etc/rc.serial

ZOBACZ TAKE

       tty(4), ttys(4), kernel/chr_drv/serial.c

AUTOR

       Oryginalna wersja  setserial  zostala  napisana  przez  Ricka  Sladkeya
       (jrs@world.std.com)  i zostala zmodyfikowana przez Michaela K. Johnsona
       (johnsonm@stolaf.edu).

       Ta wersja zostala od tej pory napisana ponownie od zera przez  Theodore
       Ts'o  (tytso@mit.edu)  1/1/93. Wszelkie bldy i problemy s wylcznie jego
       odpowiedzialnoci.

INFORMACJE O T/LUMACZENIU

       Powysze tlumaczenie pochodzi z nieistniejcego ju  Projektu  Tlumaczenia
       Manuali  i  moe nie by aktualne. W razie zauwaenia ronic midzy powyszym
       opisem a rzeczywistym zachowaniem  opisywanego  programu  lub  funkcji,
       prosimy o zapoznanie si z oryginaln (angielsk) wersj strony podrcznika.