€•謌sphinx.addnodes”Œdocument”“”)�”}”(Œ rawsource”Œ”Œchildren”]”(Œ translations”Œ LanguagesNode”“”)�”}”(hhh]”(hŒ pending_xref”“”)�”}”(hhh]”Œdocutils.nodes”ŒText”“”ŒChinese (Simplified)”…”�”}”Œparent”hsbaŒ attributes”}”(Œids”]”Œclasses”]”Œnames”]”Œdupnames”]”Œbackrefs”]”Œ refdomain”Œstd”Œreftype”Œdoc”Œ reftarget”Œ'/translations/zh_CN/admin-guide/parport”Œmodname”NŒ classname”NŒ refexplicit”ˆuŒtagname”hhh ubh)�”}”(hhh]”hŒChinese (Traditional)”…”�”}”hh2sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ'/translations/zh_TW/admin-guide/parport”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒItalian”…”�”}”hhFsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ'/translations/it_IT/admin-guide/parport”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒJapanese”…”�”}”hhZsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ'/translations/ja_JP/admin-guide/parport”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒKorean”…”�”}”hhnsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ'/translations/ko_KR/admin-guide/parport”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒPortuguese (Brazilian)”…”�”}”hh‚sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ'/translations/pt_BR/admin-guide/parport”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒSpanish”…”�”}”hh–sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ'/translations/sp_SP/admin-guide/parport”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubeh}”(h]”h ]”h"]”h$]”h&]”Œcurrent_language”ŒEnglish”uh1h hhŒ _document”hŒsource”NŒline”NubhŒsection”“”)�”}”(hhh]”(hŒtitle”“”)�”}”(hŒParport”h]”hŒParport”…”�”}”(hh¼h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhh·h²hh³ŒA/var/lib/git/docbuild/linux/Documentation/admin-guide/parport.rst”h´KubhŒ paragraph”“”)�”}”(hŒŽThe ``parport`` code provides parallel-port support under Linux. This includes the ability to share one port between multiple device drivers.”h]”(hŒThe ”…”�”}”(hhÍh²hh³Nh´NubhŒliteral”“”)�”}”(hŒ ``parport``”h]”hŒparport”…”�”}”(hh×h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÕhhÍubhŒ code provides parallel-port support under Linux. This includes the ability to share one port between multiple device drivers.”…”�”}”(hhÍh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hËh³hÊh´Khh·h²hubhÌ)�”}”(hX‰You can pass parameters to the ``parport`` code to override its automatic detection of your hardware. This is particularly useful if you want to use IRQs, since in general these can't be autoprobed successfully. By default IRQs are not used even if they **can** be probed. This is because there are a lot of people using the same IRQ for their parallel port and a sound card or network card.”h]”(hŒYou can pass parameters to the ”…”�”}”(hhïh²hh³Nh´NubhÖ)�”}”(hŒ ``parport``”h]”hŒparport”…”�”}”(hh÷h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÕhhïubhŒ× code to override its automatic detection of your hardware. This is particularly useful if you want to use IRQs, since in general these can’t be autoprobed successfully. By default IRQs are not used even if they ”…”�”}”(hhïh²hh³Nh´NubhŒstrong”“”)�”}”(hŒ**can**”h]”hŒcan”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j hhïubhŒƒ be probed. This is because there are a lot of people using the same IRQ for their parallel port and a sound card or network card.”…”�”}”(hhïh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hËh³hÊh´Khh·h²hubhÌ)�”}”(hŒœThe ``parport`` code is split into two parts: generic (which deals with port-sharing) and architecture-dependent (which deals with actually using the port).”h]”(hŒThe ”…”�”}”(hj#h²hh³Nh´NubhÖ)�”}”(hŒ ``parport``”h]”hŒparport”…”�”}”(hj+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÕhj#ubhŒ� code is split into two parts: generic (which deals with port-sharing) and architecture-dependent (which deals with actually using the port).”…”�”}”(hj#h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hËh³hÊh´Khh·h²hubh¶)�”}”(hhh]”(h»)�”}”(hŒParport as modules”h]”hŒParport as modules”…”�”}”(hjFh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhjCh²hh³hÊh´KubhÌ)�”}”(hŒ2If you load the `parport`` code as a module, say::”h]”(hŒIf you load the ”…”�”}”(hjTh²hh³Nh´NubhŒtitle_reference”“”)�”}”(hŒ `parport``”h]”hŒparport`”…”�”}”(hj^h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j\hjTubhŒ code as a module, say:”…”�”}”(hjTh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hËh³hÊh´KhjCh²hubhŒ literal_block”“”)�”}”(hŒ# insmod parport”h]”hŒ# insmod parport”…”�”}”hjxsbah}”(h]”h ]”h"]”h$]”h&]”Œ xml:space”Œpreserve”uh1jvh³hÊh´KhjCh²hubhÌ)�”}”(hŒnto load the generic ``parport`` code. You then must load the architecture-dependent code with (for example)::”h]”(hŒto load the generic ”…”�”}”(hjˆh²hh³Nh´NubhÖ)�”}”(hŒ ``parport``”h]”hŒparport”…”�”}”(hj�h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÕhjˆubhŒN code. You then must load the architecture-dependent code with (for example):”…”�”}”(hjˆh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hËh³hÊh´KhjCh²hubjw)�”}”(hŒ8# insmod parport_pc io=0x3bc,0x378,0x278 irq=none,7,auto”h]”hŒ8# insmod parport_pc io=0x3bc,0x378,0x278 irq=none,7,auto”…”�”}”hj¨sbah}”(h]”h ]”h"]”h$]”h&]”j†j‡uh1jvh³hÊh´KhjCh²hubhÌ)�”}”(hXto tell the ``parport`` code that you want three PC-style ports, one at 0x3bc with no IRQ, one at 0x378 using IRQ 7, and one at 0x278 with an auto-detected IRQ. Currently, PC-style (``parport_pc``), Sun ``bpp``, Amiga, Atari, and MFC3 hardware is supported.”h]”(hŒ to tell the ”…”�”}”(hj¶h²hh³Nh´NubhÖ)�”}”(hŒ ``parport``”h]”hŒparport”…”�”}”(hj¾h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÕhj¶ubhŒ  code that you want three PC-style ports, one at 0x3bc with no IRQ, one at 0x378 using IRQ 7, and one at 0x278 with an auto-detected IRQ. Currently, PC-style (”…”�”}”(hj¶h²hh³Nh´NubhÖ)�”}”(hŒ``parport_pc``”h]”hŒ parport_pc”…”�”}”(hjÐh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÕhj¶ubhŒ), Sun ”…”�”}”(hj¶h²hh³Nh´NubhÖ)�”}”(hŒ``bpp``”h]”hŒbpp”…”�”}”(hjâh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÕhj¶ubhŒ/, Amiga, Atari, and MFC3 hardware is supported.”…”�”}”(hj¶h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hËh³hÊh´K hjCh²hubhÌ)�”}”(hŒ£PCI parallel I/O card support comes from ``parport_pc``. Base I/O addresses should not be specified for supported PCI cards since they are automatically detected.”h]”(hŒ)PCI parallel I/O card support comes from ”…”�”}”(hjúh²hh³Nh´NubhÖ)�”}”(hŒ``parport_pc``”h]”hŒ parport_pc”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÕhjúubhŒl. Base I/O addresses should not be specified for supported PCI cards since they are automatically detected.”…”�”}”(hjúh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hËh³hÊh´K%hjCh²hubh¶)�”}”(hhh]”(h»)�”}”(hŒmodprobe”h]”hŒmodprobe”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhjh²hh³hÊh´K+ubhÌ)�”}”(hŒ{If you use modprobe , you will find it useful to add lines as below to a configuration file in /etc/modprobe.d/ directory::”h]”hŒzIf you use modprobe , you will find it useful to add lines as below to a configuration file in /etc/modprobe.d/ directory:”…”�”}”(hj+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hËh³hÊh´K-hjh²hubjw)�”}”(hŒNalias parport_lowlevel parport_pc options parport_pc io=0x378,0x278 irq=7,auto”h]”hŒNalias parport_lowlevel parport_pc options parport_pc io=0x378,0x278 irq=7,auto”…”�”}”hj9sbah}”(h]”h ]”h"]”h$]”h&]”j†j‡uh1jvh³hÊh´K0hjh²hubhÌ)�”}”(hŒ•modprobe will load ``parport_pc`` (with the options ``io=0x378,0x278 irq=7,auto``) whenever a parallel port device driver (such as ``lp``) is loaded.”h]”(hŒmodprobe will load ”…”�”}”(hjGh²hh³Nh´NubhÖ)�”}”(hŒ``parport_pc``”h]”hŒ parport_pc”…”�”}”(hjOh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÕhjGubhŒ (with the options ”…”�”}”(hjGh²hh³Nh´NubhÖ)�”}”(hŒ``io=0x378,0x278 irq=7,auto``”h]”hŒio=0x378,0x278 irq=7,auto”…”�”}”(hjah²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÕhjGubhŒ2) whenever a parallel port device driver (such as ”…”�”}”(hjGh²hh³Nh´NubhÖ)�”}”(hŒ``lp``”h]”hŒlp”…”�”}”(hjsh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÕhjGubhŒ ) is loaded.”…”�”}”(hjGh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hËh³hÊh´K3hjh²hubhÌ)�”}”(hŒ›Note that these are example lines only! You shouldn't in general need to specify any options to ``parport_pc`` in order to be able to use a parallel port.”h]”(hŒcNote that these are example lines only! You shouldn’t in general need to specify any options to ”…”�”}”(hj‹h²hh³Nh´NubhÖ)�”}”(hŒ``parport_pc``”h]”hŒ parport_pc”…”�”}”(hj“h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÕhj‹ubhŒ, in order to be able to use a parallel port.”…”�”}”(hj‹h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hËh³hÊh´K6hjh²hubeh}”(h]”Œmodprobe”ah ]”h"]”Œmodprobe”ah$]”h&]”uh1hµhjCh²hh³hÊh´K+ubh¶)�”}”(hhh]”(h»)�”}”(hŒParport probe [optional]”h]”hŒParport probe [optional]”…”�”}”(hj¶h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhj³h²hh³hÊh´Khj³h²hubjw)�”}”(hŒ"parport0: Printer, BJC-210 (Canon)”h]”hŒ"parport0: Printer, BJC-210 (Canon)”…”�”}”hjäsbah}”(h]”h ]”h"]”h$]”h&]”j†j‡uh1jvh³hÊh´KDhj³h²hubhÌ)�”}”(hŒLThe probe information is available from files in ``/proc/sys/dev/parport/``.”h]”(hŒ1The probe information is available from files in ”…”�”}”(hjòh²hh³Nh´NubhÖ)�”}”(hŒ``/proc/sys/dev/parport/``”h]”hŒ/proc/sys/dev/parport/”…”�”}”(hjúh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÕhjòubhŒ.”…”�”}”(hjòh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hËh³hÊh´KFhj³h²hubeh}”(h]”Œparport-probe-optional”ah ]”h"]”Œparport probe [optional]”ah$]”h&]”uh1hµhjCh²hh³hÊh´KIRQ autoprobing works only for a few port types at the moment.”h]”hŒ>IRQ autoprobing works only for a few port types at the moment.”…”�”}”(hj& h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hËh³hÊh´Kðhj" ubah}”(h]”h ]”h"]”h$]”h&]”uh1jáhj§ ubeh}”(h]”h ]”h"]”h$]”h&]”j}Œ*”uh1jÜh³hÊh´Kèhj£ ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¡ h³hÊh´Kèhjôh²hubeh}”(h]”Œdevice-drivers”ah ]”h"]”Œdevice drivers”ah$]”h&]”uh1hµhh·h²hh³hÊh´KÏubh¶)�”}”(hhh]”(h»)�”}”(hŒ'Reporting printer problems with parport”h]”hŒ'Reporting printer problems with parport”…”�”}”(hjR h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhjO h²hh³hÊh´KóubhÌ)�”}”(hŒsIf you are having problems printing, please go through these steps to try to narrow down where the problem area is.”h]”hŒsIf you are having problems printing, please go through these steps to try to narrow down where the problem area is.”…”�”}”(hj` h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hËh³hÊh´KõhjO h²hubhÌ)�”}”(hŒ£When reporting problems with parport, really you need to give all of the messages that ``parport_pc`` spits out when it initialises. There are several code paths:”h]”(hŒWWhen reporting problems with parport, really you need to give all of the messages that ”…”�”}”(hjn h²hh³Nh´NubhÖ)�”}”(hŒ``parport_pc``”h]”hŒ parport_pc”…”�”}”(hjv h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÕhjn ubhŒ> spits out when it initialises. There are several code paths:”…”�”}”(hjn h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hËh³hÊh´KøhjO h²hubjÝ)�”}”(hhh]”(jâ)�”}”(hŒpolling”h]”hÌ)�”}”(hj“ h]”hŒpolling”…”�”}”(hj• h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hËh³hÊh´Kühj‘ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jáhjŽ h²hh³hÊh´Nubjâ)�”}”(hŒ&interrupt-driven, protocol in software”h]”hÌ)�”}”(hjª h]”hŒ&interrupt-driven, protocol in software”…”�”}”(hj¬ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hËh³hÊh´Kýhj¨ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jáhjŽ h²hh³hÊh´Nubjâ)�”}”(hŒ0interrupt-driven, protocol in hardware using PIO”h]”hÌ)�”}”(hjÁ h]”hŒ0interrupt-driven, protocol in hardware using PIO”…”�”}”(hjà h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hËh³hÊh´Kþhj¿ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jáhjŽ h²hh³hÊh´Nubjâ)�”}”(hŒ1interrupt-driven, protocol in hardware using DMA ”h]”hÌ)�”}”(hŒ0interrupt-driven, protocol in hardware using DMA”h]”hŒ0interrupt-driven, protocol in hardware using DMA”…”�”}”(hjÚ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hËh³hÊh´KÿhjÖ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jáhjŽ h²hh³hÊh´Nubeh}”(h]”h ]”h"]”h$]”h&]”j}j~uh1jÜh³hÊh´KühjO h²hubhÌ)�”}”(hŒ‰The kernel messages that ``parport_pc`` logs give an indication of which code path is being used. (They could be a lot better actually..)”h]”(hŒThe kernel messages that ”…”�”}”(hjô h²hh³Nh´NubhÖ)�”}”(hŒ``parport_pc``”h]”hŒ parport_pc”…”�”}”(hjü h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÕhjô ubhŒb logs give an indication of which code path is being used. (They could be a lot better actually..)”…”�”}”(hjô h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hËh³hÊh´MhjO h²hubhÌ)�”}”(hŒ`For normal printer protocol, having IEEE 1284 modes enabled or not should not make a difference.”h]”hŒ`For normal printer protocol, having IEEE 1284 modes enabled or not should not make a difference.”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hËh³hÊh´MhjO h²hubhÌ)�”}”(hŒüTo turn off the 'protocol in hardware' code paths, disable ``CONFIG_PARPORT_PC_FIFO``. Note that when they are enabled they are not necessarily **used**; it depends on whether the hardware is available, enabled by the BIOS, and detected by the driver.”h]”(hŒ?To turn off the ‘protocol in hardware’ code paths, disable ”…”�”}”(hj" h²hh³Nh´NubhÖ)�”}”(hŒ``CONFIG_PARPORT_PC_FIFO``”h]”hŒCONFIG_PARPORT_PC_FIFO”…”�”}”(hj* h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÕhj" ubhŒ<. Note that when they are enabled they are not necessarily ”…”�”}”(hj" h²hh³Nh´Nubj )�”}”(hŒ**used**”h]”hŒused”…”�”}”(hj< h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j hj" ubhŒc; it depends on whether the hardware is available, enabled by the BIOS, and detected by the driver.”…”�”}”(hj" h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hËh³hÊh´MhjO h²hubhÌ)�”}”(hŒ¸So, to start with, disable ``CONFIG_PARPORT_PC_FIFO``, and load ``parport_pc`` with ``irq=none``. See if printing works then. It really should, because this is the simplest code path.”h]”(hŒSo, to start with, disable ”…”�”}”(hjT h²hh³Nh´NubhÖ)�”}”(hŒ``CONFIG_PARPORT_PC_FIFO``”h]”hŒCONFIG_PARPORT_PC_FIFO”…”�”}”(hj\ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÕhjT ubhŒ , and load ”…”�”}”(hjT h²hh³Nh´NubhÖ)�”}”(hŒ``parport_pc``”h]”hŒ parport_pc”…”�”}”(hjn h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÕhjT ubhŒ with ”…”�”}”(hjT h²hh³Nh´NubhÖ)�”}”(hŒ ``irq=none``”h]”hŒirq=none”…”�”}”(hj€ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÕhjT ubhŒX. See if printing works then. It really should, because this is the simplest code path.”…”�”}”(hjT h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hËh³hÊh´M hjO h²hubhÌ)�”}”(hŒ�If that works fine, try with ``io=0x378 irq=7`` (adjust for your hardware), to make it use interrupt-driven in-software protocol.”h]”(hŒIf that works fine, try with ”…”�”}”(hj˜ h²hh³Nh´NubhÖ)�”}”(hŒ``io=0x378 irq=7``”h]”hŒio=0x378 irq=7”…”�”}”(hj  h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÕhj˜ ubhŒR (adjust for your hardware), to make it use interrupt-driven in-software protocol.”…”�”}”(hj˜ h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hËh³hÊh´MhjO h²hubhÌ)�”}”(hŒèIf **that** works fine, then one of the hardware modes isn't working right. Enable ``CONFIG_FIFO`` (no, it isn't a module option, and yes, it should be), set the port to ECP mode in the BIOS and note the DMA channel, and try with::”h]”(hŒIf ”…”�”}”(hj¸ h²hh³Nh´Nubj )�”}”(hŒ**that**”h]”hŒthat”…”�”}”(hjÀ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j hj¸ ubhŒK works fine, then one of the hardware modes isn’t working right. Enable ”…”�”}”(hj¸ h²hh³Nh´NubhÖ)�”}”(hŒ``CONFIG_FIFO``”h]”hŒ CONFIG_FIFO”…”�”}”(hjÒ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÕhj¸ ubhŒ† (no, it isn’t a module option, and yes, it should be), set the port to ECP mode in the BIOS and note the DMA channel, and try with:”…”�”}”(hj¸ h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hËh³hÊh´MhjO h²hubjw)�”}”(hŒ@io=0x378 irq=7 dma=none (for PIO) io=0x378 irq=7 dma=3 (for DMA)”h]”hŒ@io=0x378 irq=7 dma=none (for PIO) io=0x378 irq=7 dma=3 (for DMA)”…”�”}”hjê sbah}”(h]”h ]”h"]”h$]”h&]”j†j‡uh1jvh³hÊh´MhjO h²hubhŒ transition”“”)�”}”(hŒ ----------”h]”h}”(h]”h ]”h"]”h$]”h&]”uh1jø h³hÊh´MhjO h²hubhÌ)�”}”(hŒphilb@gnu.org tim@cyberelk.net”h]”(hŒ reference”“”)�”}”(hŒ philb@gnu.org”h]”hŒ philb@gnu.org”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œrefuri”Œmailto:philb@gnu.org”uh1j hj ubhŒ ”…”�”}”(hj h²hh³Nh´Nubj )�”}”(hŒtim@cyberelk.net”h]”hŒtim@cyberelk.net”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œrefuri”Œmailto:tim@cyberelk.net”uh1j hj ubeh}”(h]”h ]”h"]”h$]”h&]”uh1hËh³hÊh´MhjO h²hubeh}”(h]”Œ'reporting-printer-problems-with-parport”ah ]”h"]”Œ'reporting printer problems with parport”ah$]”h&]”uh1hµhh·h²hh³hÊh´Kóubeh}”(h]”Œparport”ah ]”h"]”Œparport”ah$]”h&]”uh1hµhhh²hh³hÊh´Kubeh}”(h]”h ]”h"]”h$]”h&]”Œsource”hÊuh1hŒcurrent_source”NŒ current_line”NŒsettings”Œdocutils.frontend”ŒValues”“”)�”}”(hºNŒ generator”NŒ datestamp”NŒ source_link”NŒ source_url”NŒ toc_backlinks”jgŒfootnote_backlinks”KŒ sectnum_xform”KŒstrip_comments”NŒstrip_elements_with_classes”NŒ strip_classes”NŒ report_level”KŒ halt_level”KŒexit_status_level”KŒdebug”NŒwarning_stream”NŒ traceback”ˆŒinput_encoding”Œ utf-8-sig”Œinput_encoding_error_handler”Œstrict”Œoutput_encoding”Œutf-8”Œoutput_encoding_error_handler”jf Œerror_encoding”Œutf-8”Œerror_encoding_error_handler”Œbackslashreplace”Œ language_code”Œen”Œrecord_dependencies”NŒconfig”NŒ id_prefix”hŒauto_id_prefix”Œid”Œ dump_settings”NŒdump_internals”NŒdump_transforms”NŒdump_pseudo_xml”NŒexpose_internals”NŒstrict_visitor”NŒ_disable_config”NŒ_source”hÊŒ _destination”NŒ _config_files”]”Œ7/var/lib/git/docbuild/linux/Documentation/docutils.conf”aŒfile_insertion_enabled”ˆŒ raw_enabled”KŒline_length_limit”M'Œpep_references”NŒ pep_base_url”Œhttps://peps.python.org/”Œpep_file_url_template”Œpep-%04d”Œrfc_references”NŒ rfc_base_url”Œ&https://datatracker.ietf.org/doc/html/”Œ tab_width”KŒtrim_footnote_reference_space”‰Œsyntax_highlight”Œlong”Œ smart_quotes”ˆŒsmartquotes_locales”]”Œcharacter_level_inline_markup”‰Œdoctitle_xform”‰Œ docinfo_xform”KŒsectsubtitle_xform”‰Œ image_loading”Œlink”Œembed_stylesheet”‰Œcloak_email_addresses”ˆŒsection_self_link”‰Œenv”NubŒreporter”NŒindirect_targets”]”Œsubstitution_defs”}”Œsubstitution_names”}”Œrefnames”}”Œrefids”}”Œnameids”}”(jA j> jjj°j­jjj¼j¹jñjîjL jI j9 j6 uŒ nametypes”}”(jA ‰j‰j°‰j‰j¼‰jñ‰jL ‰j9 ‰uh}”(j> h·jjCj­jjj³j¹j"jîj¿jI jôj6 jO uŒ footnote_refs”}”Œ citation_refs”}”Œ autofootnotes”]”Œautofootnote_refs”]”Œsymbol_footnotes”]”Œsymbol_footnote_refs”]”Œ footnotes”]”Œ citations”]”Œautofootnote_start”KŒsymbol_footnote_start”KŒ id_counter”Œ collections”ŒCounter”“”}”…”R”Œparse_messages”]”Œtransform_messages”]”Œ transformer”NŒ include_log”]”Œ decoration”Nh²hub.