Documentation/admin-guide/blockdev/paride.rst

Source file repositories/reference/linux-study-clean/Documentation/admin-guide/blockdev/paride.rst

File Facts

System
Linux kernel
Corpus path
Documentation/admin-guide/blockdev/paride.rst
Extension
.rst
Size
8649 bytes
Lines
208
Domain
Support Tooling And Documentation
Bucket
Documentation
Inferred role
Support Tooling And Documentation: documentation
Status
atlas-only

Why This File Exists

Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.

Dependency Surface

Detected Declarations

Annotated Snippet

===================================
Linux and parallel port IDE devices
===================================

PARIDE v1.03   (c) 1997-8  Grant Guenther <grant@torque.net>
PATA_PARPORT   (c) 2023 Ondrej Zary

1. Introduction
===============

Owing to the simplicity and near universality of the parallel port interface
to personal computers, many external devices such as portable hard-disk,
CD-ROM, LS-120 and tape drives use the parallel port to connect to their
host computer.  While some devices (notably scanners) use ad-hoc methods
to pass commands and data through the parallel port interface, most
external devices are actually identical to an internal model, but with
a parallel-port adapter chip added in.  Some of the original parallel port
adapters were little more than mechanisms for multiplexing a SCSI bus.
(The Iomega PPA-3 adapter used in the ZIP drives is an example of this
approach).  Most current designs, however, take a different approach.
The adapter chip reproduces a small ISA or IDE bus in the external device
and the communication protocol provides operations for reading and writing
device registers, as well as data block transfer functions.  Sometimes,
the device being addressed via the parallel cable is a standard SCSI
controller like an NCR 5380.  The "ditto" family of external tape
drives use the ISA replicator to interface a floppy disk controller,
which is then connected to a floppy-tape mechanism.  The vast majority
of external parallel port devices, however, are now based on standard
IDE type devices, which require no intermediate controller.  If one
were to open up a parallel port CD-ROM drive, for instance, one would
find a standard ATAPI CD-ROM drive, a power supply, and a single adapter
that interconnected a standard PC parallel port cable and a standard
IDE cable.  It is usually possible to exchange the CD-ROM device with
any other device using the IDE interface.

The document describes the support in Linux for parallel port IDE
devices.  It does not cover parallel port SCSI devices, "ditto" tape
drives or scanners.  Many different devices are supported by the
parallel port IDE subsystem, including:

	- MicroSolutions backpack CD-ROM
	- MicroSolutions backpack PD/CD
	- MicroSolutions backpack hard-drives
	- MicroSolutions backpack 8000t tape drive
	- SyQuest EZ-135, EZ-230 & SparQ drives
	- Avatar Shark
	- Imation Superdisk LS-120
	- Maxell Superdisk LS-120
	- FreeCom Power CD
	- Hewlett-Packard 5GB and 8GB tape drives
	- Hewlett-Packard 7100 and 7200 CD-RW drives

as well as most of the clone and no-name products on the market.

To support such a wide range of devices, pata_parport is actually structured
in two parts. There is a base pata_parport module which provides an interface
to kernel libata subsystem, registry and some common methods for accessing
the parallel ports.

The second component is a set of low-level protocol drivers for each of the
parallel port IDE adapter chips.  Thanks to the interest and encouragement of
Linux users from many parts of the world, support is available for almost all
known adapter protocols:

	====    ====================================== ====
        aten    ATEN EH-100                            (HK)
        bpck    Microsolutions backpack                (US)
        comm    DataStor (old-type) "commuter" adapter (TW)
        dstr    DataStor EP-2000                       (TW)
        epat    Shuttle EPAT                           (UK)

Annotation

Implementation Notes