e62aa046e1
The pf driver for parallel port floppy drives seems to be broken. At least with Imation SuperDisk with EPAT chip, the driver calls pi_connect() and pi_disconnect after each transferred sector. At least with EPAT, this operation is very expensive - causes drive recalibration. Thus, transferring even a single byte (dd if=/dev/pf0 of=/dev/null bs=1 count=1) takes 20 seconds, making the driver useless. The pf_next_buf() function seems to be broken as it returns 1 always (except when pf_run is non-zero), causing the loop in do_pf_read_drq (and do_pf_write_drq) to be executed only once. The following patch fixes this problem. It also fixes swapped descriptions in pf_lock() function and removes DBMSG macro, which seems useless. Signed-off-by: Ondrej Zary <linux@rainbow-software.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> |
||
---|---|---|
.. | ||
aten.c | ||
bpck.c | ||
bpck6.c | ||
comm.c | ||
dstr.c | ||
epat.c | ||
epia.c | ||
fit2.c | ||
fit3.c | ||
friq.c | ||
frpw.c | ||
kbic.c | ||
Kconfig | ||
ktti.c | ||
Makefile | ||
mkd | ||
on20.c | ||
on26.c | ||
paride.c | ||
paride.h | ||
pcd.c | ||
pd.c | ||
pf.c | ||
pg.c | ||
ppc6lnx.c | ||
pseudo.h | ||
pt.c | ||
Transition-notes |