[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

parport ECP & DMA



I understand from the lack of replies to my previous parport & ECP
question, that hardware ECP support is not being worked on
at the moment.

I have an application for which a lot of data should go through
the parallel port, in both directions.
The reverse data arrives asynchronically.

Now with DMA enabled for the parallel port, all that's left would
be setting the port in ecp_forward and ecp_reverse mode and enabling
the proper DMA channel.

I guess that in my situation I should switch to ecp_rev mode
when reverse data is available from within an interrupt handler,
since I don't find any indication in the manuals that the ECP hardware
is capable of switching to reverse mode by itself when necessary.

For my application, this would mean that worst case (full speed in
both directions) one interrupt per reverse byte would be generated,
because the port has to switch  continuously between forward / reverse mode.

Before I searched the manuals on this issue, I was hoping for the
following situation:

-enable DMA channel for both directions,
-hardware handles all ECP operations, switches to reverse whenever reverse
data is available, back to forward when forward data is available

But I am afraid it does not work like this?

Best regards,

Pieter