Provided by: manpages-pl_4.13-4_all bug

NAZWA

       lp - urządzenia drukarek wierszowych

SKŁADNIA

       #include <linux/lp.h>

KONFIGURACJA

       lp[0–2]  are  character devices for the parallel line printers; they have major number 6 and minor number
       0–2.  The minor numbers correspond to the  printer  port  base  addresses  0x03bc,  0x0378,  and  0x0278.
       Usually  they  have  mode  220 and are owned by user root and group lp.  You can use printer ports either
       with polling or with interrupts.  Interrupts are recommended when high traffic is expected, for  example,
       for  laser  printers.   For  typical dot matrix printers, polling will usually be enough.  The default is
       polling.

OPIS

       Obsługiwane są następujące wywołania funkcji ioctl(2):

       int ioctl(int fd, LPTIME, int arg)
              Sets the amount of time that the driver sleeps before rechecking the printer  when  the  printer's
              buffer appears to be filled to arg.  If you have a fast printer, decrease this number; if you have
              a  slow  printer,  then  increase it.  This is in hundredths of a second, the default 2 being 0.02
              seconds.  It influences only the polling driver.

       int ioctl(int fd, LPCHAR, int arg)
              Sets the maximum number of busy-wait iterations which the polling driver does  while  waiting  for
              the printer to get ready for receiving a character to arg.  If printing is too slow, increase this
              number;  if  the  system gets too slow, decrease this number.  The default is 1000.  It influences
              only the polling driver.

       int ioctl(int fd, LPABORT, int arg)
              Jeśli parametr arg jest równy 0, wtedy sterownik drukarki będzie powtarzał operację po wystąpieniu
              błędu; w przeciwnym wypadku przerwie działanie. Standardową wartością tego parametru jest 0.

       int ioctl(int fd, LPABORTOPEN, int arg)
              Jeśli arg jest równy 0, funkcja open(2) zostanie przerwana  po  wystąpieniu  błędu;  w  przeciwnym
              wypadku błąd zostanie zignorowany. Standardowe zachowanie polega na ignorowaniu błędów.

       int ioctl(int fd, LPCAREFUL, int arg)
              If  arg  is  0,  then the out-of-paper, offline, and error signals are required to be false on all
              writes, otherwise they are ignored.  The default is to ignore them.

       int ioctl(int fd, LPWAIT, int arg)
              Ustawia na arg liczbę iteracji aktywnego oczekiwania (busy-wait) przed spróbkowaniem, czy drukarka
              zaakceptowała właśnie zapisany znak, oraz liczbę iteracji, które należy przeczekać przed  kolejnym
              próbkowaniem.  Specyfikacje określają ten czas jako 0.5 mikrosekundy, lecz doświadczenie wykazało,
              że opóźnienie spowodowane wykonaniem kodu jest już wystarczające. Z tego powodu wartością domyślną
              dla tego ustawienia jest 0. Jest ono wykorzystywane w sterowniku zarówno w trybie próbkowania, jak
              i w trybie przerwań.

       int ioctl(int fd, LPSETIRQ, int arg)
              To wywołanie funkcji ioctl(2) wymaga uprawnień administratora. Funkcja pobiera argument  typu  int
              zawierający nowe przerwanie IRQ. Skutkiem ubocznym jest inicjacja drukarki. Gdy arg jest zerem, to
              stosowany będzie sterownik z próbkowaniem; jest to równocześnie zachowanie domyślne.

       int ioctl(int fd, LPGETIRQ, int *arg)
              Zachowuje w parametrze arg aktualnie stosowane przerwanie IRQ.

       int ioctl(int fd, LPGETSTATUS, int *arg)
              Zachowuje wartość stanu portu w zmiennej arg.  Poszczególne bity mają następujące znaczenie:
              LP_PBUSY     odwrócony sygnał zajętości
              LP_PACK      niezmienione potwierdzenie wejścia
              LP_POUTPA    niezmieniony sygnał braku papieru
              LP_PSELECD   niezmieniony sygnał wyboru
              LP_PERRORP   niezmieniony sygnał błędu

              Znaczenia  sygnałów  należy  szukać  w  dokumentacji  drukarki. Należy pamiętać, że dla niektórych
              drukarek ustawiane mogą być też nieudokumentowane tu bity.

       int ioctl(int fd, LPRESET)
              Inicjuje drukarkę. Nie stosuje się żadnych parametrów.

PLIKI

       /dev/lp*

ZOBACZ TAKŻE

       chmod(1), chown(1), mknod(1), lpcntl(8), tunelp(8)

O STRONIE

       Angielska wersja tej strony pochodzi z wydania 5.10 projektu Linux man-pages. Opis  projektu,  informacje
       dotyczące   zgłaszania   błędów   oraz   najnowszą   wersję   oryginału   można   znaleźć   pod   adresem
       https://www.kernel.org/doc/man-pages/.

T◈UMACZENIE

       Autorami   polskiego    tłumaczenia    niniejszej    strony    podręcznika    są:    Piotr    Pogorzelski
       <piotr.pogorzelski@ippt.gov.pl> i Michał Kułach <michal.kulach@gmail.com>

       Niniejsze  tłumaczenie  jest  wolną  dokumentacją.  Bliższe informacje o warunkach licencji można uzyskać
       zapoznając  się  z  GNU General Public License w wersji 3  lub  nowszej.   Nie   przyjmuje   się   ŻADNEJ
       ODPOWIEDZIALNOŚCI.

       Błędy  w  tłumaczeniu  strony  podręcznika  prosimy  zgłaszać  na  adres  listy  dyskusyjnej manpages-pl-
       list@lists.sourceforge.net.

Linux                                          13 sierpnia 2020 r.                                         LP(4)