Hi,
Ken Tyler wrote:
> > > My guess is that the check for busy doesn't work correctly in
> > > parport_ieee1284_write_compat, on the other hand I don't know how this
> > > then could work on a pc...
>
> Don't think busy test is the problem, what seems to be wrong is that once
> the port wakes up, parport_ieee1284_write_compat sends bytes out
> irrespective of ACK interrupts, over-running the port.
Let's try my suspicion. :)
Could you disable this part in
drivers/parport/ieee1284_ops.c:parport_ieee1284_write_compat():
/* Is the peripheral ready yet? */
if (!parport_wait_peripheral (port, mask, val))
/* Skip the loop */
goto ready;
IMO this should already help a bit, although there might be new
problems.
Second, you can simply remove the call to parport_enable_irq(), the irq
is never disabled, so it doesn't need to be enabled all the time. This
will get rid of the kernel warnings.
> I can't see anything in parport_amiga.c in combination with ieee1284_ops.c
> that supports a write -> strobe -> ack -> interrupt -> do it again loop.
Because it's automatically handled in the hardware, otherwise it had to
happen in the write_control function.
bye, Roman
-- 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 : Thu Aug 30 2001 - 15:17:20 EDT