[PARPORT] Need lots of information about parallel-port operation & probing

From: Peter Asemann (sipeasem@immd3.informatik.uni-erlangen.de)
Date: Tue Nov 26 2002 - 10:03:03 EST

  • Next message: Alan Cox: "Re: [PARPORT] Need lots of information about parallel-port operation & probing"

    Hi there!

    For an assignment I need to write an "odd" piece of software, a parallel port
    hardware emulator.
    Before you ask, it's for the http://www.umlinux.de/ project.
    The goal is to pretend to a virtual UMLinux machine running on a real Linux
    machine that the UMLinux had access to a parallel port (either the real one
    or a virtual one, that could also virtually be connected to another virtual
    I found quite some information about SPP/EPP/ECP, Nibble mode, even CPP, ISO
    1284 and so on, but of course I don't see through the Linux drivers yet.

    So I have some questions:

    Is it possible (as an user) to access all parallel-port functionality
    (including read/write to status, control and all data registers) using the
    /usr/src/linux/drivers/char/ppdev.c driver?
    This would make connecting the virtual UMLinux to a real parport easier, as
    this wouldn't require the UMLinux system to have root rights.

    How is the driver hierarchy (which driver/modules uses what other
    drivers/modules or what driver includes which driverzyz.c programs), or how
    does input/output 'ripple through' different driver-levels (low-level to

    And, most important, how and where do the parport drivers probe which
    hardware is present, and how do the most common chipsets react? That's very
    important for me to know, and I couldn't find the probing routinges so far.
    There must be rules like "if you write XY to register Z and reread it, and
    bit a has changed, then the chipset supports EPP, otherwise it's SPP" or
    something. I guess. Give me a hint. Tutorial suggestions are welcome, too.

    Peter Asemann

    -- To unsubscribe, send mail to: linux-parport-request@torque.net --
    -- with the single word "unsubscribe" in the body of the message. --

    This archive was generated by hypermail 2b29 : Tue Nov 26 2002 - 10:15:52 EST