diff options
author | Stefan Richter <stefanr@s5r6.in-berlin.de> | 2006-05-15 16:06:37 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-05-18 00:32:21 -0400 |
commit | e9a1c52c7b19d10342226c12f170d7ab644427e2 (patch) | |
tree | 231d00c761444c650e527d048aab0776bd135fb5 /drivers/ieee1394/sbp2.h | |
parent | 24d3bf884e093f9de52d31c97187f4b9b4ad7dcb (diff) |
[PATCH] sbp2: add read_capacity workaround for iPod
Apple decided to copy some USB stupidity over to FireWire.
The sector number returned by iPods from read_capacity is one too many.
This may cause I/O errors, especially if the kernel is configured for EFI
partition support. We use the same workaround as usb-storage but have to
check for different model IDs.
http://marc.theaimsgroup.com/?t=114233262300001
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=187409
Acknowledgements:
Diagnosis and therapy by Mathieu Chouquet-Stringer <ml2news@free.fr>,
additional data about affected and unaffected Apple hardware from
Vladimir Kotal, Sander De Graaf, Bryan Olmstead and Hugh Dixon.
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/ieee1394/sbp2.h')
-rw-r--r-- | drivers/ieee1394/sbp2.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/ieee1394/sbp2.h b/drivers/ieee1394/sbp2.h index e40caf5d61ac..3af2710f1858 100644 --- a/drivers/ieee1394/sbp2.h +++ b/drivers/ieee1394/sbp2.h | |||
@@ -238,6 +238,7 @@ struct sbp2_status_block { | |||
238 | #define SBP2_WORKAROUND_128K_MAX_TRANS 0x1 | 238 | #define SBP2_WORKAROUND_128K_MAX_TRANS 0x1 |
239 | #define SBP2_WORKAROUND_INQUIRY_36 0x2 | 239 | #define SBP2_WORKAROUND_INQUIRY_36 0x2 |
240 | #define SBP2_WORKAROUND_MODE_SENSE_8 0x4 | 240 | #define SBP2_WORKAROUND_MODE_SENSE_8 0x4 |
241 | #define SBP2_WORKAROUND_FIX_CAPACITY 0x8 | ||
241 | 242 | ||
242 | /* This is the two dma types we use for cmd_dma below */ | 243 | /* This is the two dma types we use for cmd_dma below */ |
243 | enum cmd_dma_types { | 244 | enum cmd_dma_types { |