Tim Waugh (tim@cyberelk.demon.co.uk)
Fri, 1 Oct 1999 08:07:48 +0100 (BST)
On Thu, 30 Sep 1999, Mark Huang wrote:
> How do you perform an ECP transfer in kernel space using the linux-2.2.x
> parport interface?
By hand, by using the control/data/status ports. The 2.2.x parport
interface doesn't really have things like ECP right. 2.3.x does (I
hope!).
> The steps I've taken so far are
>
> 1. Registering with parport_register_device()
> 2. Changing to ECP mode with parport_pc_frob_econtrol()
> 3. Writing with parport_pc_write_fifo()
If you really want to try using the FIFO (there may be lots of bugs in
that path in 2.2.x), then you need:
1.5. Claim the port with parport_claim()
Otherwise, yes, that should work. If it doesn't.. well, there are
probably bugs.
The thing is that if you are using parport_pc_write_fifo, you may as well
just write directly to the FIFO yourself, and play with ECR yourself, so
that you know what is actually going on.
> Everything is set up correctly in the BIOS, and parport seems to detect my
> ECP/EPP port fine after loading. Nothing come outs on the parallel port,
> though, or at least HostCLK doesn't strobe.
You have to do things to CTR before doing things to ECR, from what I
remember. Or at least, having mode switches work is conditional on some
of the CTR bits.
I'm afraid that the solution that will give you less frustration will
probably be to use parport_write_control etc., at least for now (2.2).
Tim.
*/
-- 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 2.0b3 on Fri 01 Oct 1999 - 03:18:23 EDT