Commit 41e0feb7 authored by Ondrej Zary's avatar Ondrej Zary Committed by Linus Torvalds

[PATCH] make cdu31a work on at least one system

I've got a Sony CDU33A drive with COR334 controller.  The Linux cdu31a
driver was not updated for 2.6 kernel so it does not work.

Here are patches that try to make the driver working with 2.6
kernel:
  - fix the timeout values in header file
  - Make the driver work in 2.6.X
  - Added workaround to fix hard lockups on eject
  - Fixed door locking problem after mounting empty drive
  - Set double-speed drives to double speed by default
  - Removed all readahead things - not needed anymore

It does work on my system. I also know that it's still broken - it uses 
cli(), MODULE_PARM and it's also not very fast (I _never_ reached full
300KB/s with it, but I know that it's possible in Windows) and probably 
many other things (I'm new to Linux kernel) - so I'm waiting for comments.
parent 69abbfd9
This diff is collapsed.
...@@ -72,10 +72,10 @@ ...@@ -72,10 +72,10 @@
from drive (in 1/100th's from drive (in 1/100th's
of seconds). */ of seconds). */
#define SONY_JIFFIES_TIMEOUT 1000 /* Maximum number of times the #define SONY_JIFFIES_TIMEOUT (10*HZ) /* Maximum number of times the
drive will wait/try for an drive will wait/try for an
operation */ operation */
#define SONY_RESET_TIMEOUT 100 /* Maximum number of times the #define SONY_RESET_TIMEOUT HZ /* Maximum number of times the
drive will wait/try a reset drive will wait/try a reset
operation */ operation */
#define SONY_READY_RETRIES 20000 /* How many times to retry a #define SONY_READY_RETRIES 20000 /* How many times to retry a
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment