* CompactFlash and HD unhappy together on the same IDE channel
@ 2007-08-18 7:00 Malcolm Gillies
2007-08-18 20:05 ` Matt Sealey
` (2 more replies)
0 siblings, 3 replies; 15+ messages in thread
From: Malcolm Gillies @ 2007-08-18 7:00 UTC (permalink / raw)
To: linux-ide
My PATA hard disk is crippled by CRC errors when it's on the same cable
as a 1GB SanDisk Ultra II CompactFlash card in CF to IDE adaptor. Any
ideas why?
By swapping around components, I've established that the problem is
unlikely due to the cable (which is 50cm long 80-wire), hard disk or
controller. When I swap to another, slower CF card (one that only
supports PIO rather than MWDMA), the error goes away and the hard disk
operates happily at UDMA/33.
No errors are reported for the CF card I/O.
The adaptor card is unbranded, model CF-IDE40 V.A1. It's a double-sided
type, but I'm only using one of the two CF sockets.
The spec sheet says
* Accord with: CF spec Ver2.0 and IDE/ATA-33 spec.
* Standard IDE interface: true-IDE mode, support DMA-33 transfer mode
I see the errors both with the old IDE code in 2.6.18 and with libata in
2.6.22
cheers,
Malcolm
--
Here are the relevant dmesg lines:
ata_piix 0000:00:1f.1: version 2.11
PCI: Enabling device 0000:00:1f.1 (0005 -> 0007)
ACPI: PCI Interrupt 0000:00:1f.1[A] -> Link [LNKC] -> GSI 11 (level,
low) -> IRQ
11
PCI: Setting latency timer of device 0000:00:1f.1 to 64
scsi0 : ata_piix
scsi1 : ata_piix
ata1: PATA max UDMA/100 cmd 0x000101f0 ctl 0x000103f6 bmdma 0x0001ffa0
irq 14
ata2: PATA max UDMA/100 cmd 0x00010170 ctl 0x00010376 bmdma 0x0001ffa8
irq 15
ata1.00: CFA: SanDisk SDCFH-1024, HDX 4.07, max MWDMA2
ata1.00: 2001888 sectors, multi 0: LBA
ata1.01: ATA-7: SAMSUNG HD400LD, WQ100-14, max UDMA/100
ata1.01: 781422768 sectors, multi 0: LBA48
ata1.01: limited to UDMA/33 due to 40-wire cable
ata1.00: configured for MWDMA2
ata1.01: configured for UDMA/33
ata2.00: ATAPI: LG CD-ROM CRN-8245B, 1.18, max UDMA/33
ata2.00: configured for UDMA/33
scsi 0:0:0:0: Direct-Access ATA SanDisk SDCFH-10 HDX PQ: 0 ANSI: 5
scsi 0:0:1:0: Direct-Access ATA SAMSUNG HD400LD WQ10 PQ: 0 ANSI: 5
scsi 1:0:0:0: CD-ROM LG CD-ROM CRN-8245B 1.18 PQ: 0 ANSI: 5
sd 0:0:0:0: [sda] 2001888 512-byte hardware sectors (1025 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't
support DPO or FUA
sd 0:0:0:0: [sda] 2001888 512-byte hardware sectors (1025 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't
support DPO or FUA
sda: sda1
sd 0:0:0:0: [sda] Attached SCSI removable disk
sd 0:0:1:0: [sdb] 781422768 512-byte hardware sectors (400088 MB)
sd 0:0:1:0: [sdb] Write Protect is off
sd 0:0:1:0: [sdb] Mode Sense: 00 3a 00 00
sd 0:0:1:0: [sdb] Write cache: enabled, read cache: enabled, doesn't
support DPO or FUA
sd 0:0:1:0: [sdb] 781422768 512-byte hardware sectors (400088 MB)
sd 0:0:1:0: [sdb] Write Protect is off
sd 0:0:1:0: [sdb] Mode Sense: 00 3a 00 00
sd 0:0:1:0: [sdb] Write cache: enabled, read cache: enabled, doesn't
support DPO or FUA
sdb:<3>ata1.01: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x2
ata1.01: (BMDMA stat 0x25)
ata1.01: cmd c8/00:08:00:00:00/00:00:00:00:00/f0 tag 0 cdb 0x0 data 4096 in
res 51/84:00:07:00:00/00:00:00:00:00/f0 Emask 0x10 (ATA bus error)
ata1: soft resetting port
[subsequently ata1.01 is downrated to UDMA/25 and finally PIO4]
# hdparm -I /dev/sda
/dev/sda:
CompactFlash ATA device, with removable media
Model Number: SanDisk SDCFH-1024
Serial Number: 004123D2804C2249
Firmware Revision: HDX 4.07
Standards:
Supported: 4
Likely used: 4
Configuration:
Logical max current
cylinders 1986 1986
heads 16 16
sectors/track 63 63
--
CHS current addressable sectors: 2001888
LBA user addressable sectors: 2001888
device size with M = 1024*1024: 977 MBytes
device size with M = 1000*1000: 1024 MBytes (1 GB)
Capabilities:
LBA, IORDY(may be)(cannot be disabled)
Standby timer values: spec'd by Vendor
R/W multiple sector transfer: Max = 4 Current = 0
DMA: mdma0 mdma1 *mdma2
Cycle time: min=120ns recommended=120ns
PIO: pio0 pio1 pio2 pio3 pio4
Cycle time: no flow control=120ns IORDY flow control=120ns
Commands/features:
Enabled Supported:
* CFA feature set
# hdparm -I /dev/sdb
/dev/sdb:
ATA device, with non-removable media
Model Number: SAMSUNG HD400LD
Serial Number: S0AXJ1MP308674
Firmware Revision: WQ100-14
Standards:
Used: ATA/ATAPI-7 T13 1532D revision 4a
Supported: 7 6 5 4
Configuration:
Logical max current
cylinders 16383 16383
heads 16 16
sectors/track 63 63
--
CHS current addressable sectors: 16514064
LBA user addressable sectors: 268435455
LBA48 user addressable sectors: 781422768
device size with M = 1024*1024: 381554 MBytes
device size with M = 1000*1000: 400088 MBytes (400 GB)
Capabilities:
LBA, IORDY(can be disabled)
Standby timer values: spec'd by Standard, no device specific
minimum
R/W multiple sector transfer: Max = 16 Current = ?
Recommended acoustic management value: 254, current value: 254
DMA: mdma0 mdma1 mdma2 udma0 *udma1 udma2 udma3 udma4 udma5
Cycle time: min=120ns recommended=120ns
PIO: pio0 pio1 pio2 pio3 pio4
Cycle time: no flow control=240ns IORDY flow control=120ns
Commands/features:
Enabled Supported:
* SMART feature set
Security Mode feature set
* Power Management feature set
* Write cache
* Look-ahead
* Host Protected Area feature set
* WRITE_BUFFER command
* READ_BUFFER command
* NOP cmd
* DOWNLOAD_MICROCODE
Power-Up In Standby feature set
SET_FEATURES required to spinup after power up
SET_MAX security extension
* Automatic Acoustic Management feature set
* 48-bit Address feature set
* Device Configuration Overlay feature set
* Mandatory FLUSH_CACHE
* FLUSH_CACHE_EXT
* SMART error logging
* SMART self-test
Media Card Pass-Through
* General Purpose Logging feature set
* SMART Command Transport (SCT) feature set
* SCT Long Sector Access (AC1)
* SCT LBA Segment Access (AC2)
* SCT Error Recovery Control (AC3)
* SCT Features Control (AC4)
* SCT Data Tables (AC5)
Security:
Master password revision code = 65534
supported
not enabled
not locked
not frozen
not expired: security count
supported: enhanced erase
228min for SECURITY ERASE UNIT. 228min for ENHANCED SECURITY
ERASE UNIT.
HW reset results:
CBLID- above Vih
Device num = 1 determined by CSEL
Checksum: correct
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: CompactFlash and HD unhappy together on the same IDE channel
2007-08-18 7:00 CompactFlash and HD unhappy together on the same IDE channel Malcolm Gillies
@ 2007-08-18 20:05 ` Matt Sealey
2007-08-18 22:41 ` Alan Cox
2007-08-19 1:16 ` Mark Lord
2 siblings, 0 replies; 15+ messages in thread
From: Matt Sealey @ 2007-08-18 20:05 UTC (permalink / raw)
To: Malcolm Gillies; +Cc: linux-ide
Having the dual-slot CF-IDE adapter AND a hard disk means you have 3 devices
there whether you plug something into the slot or not.
You'd get the same error if you had a 3-way IDE cable :)
Just move the CF adapter to a different cable, or the hard disk to a different
cable, and it'll be fine.
--
Matt Sealey <matt@genesi-usa.com>
Genesi, Manager, Developer Relations
Malcolm Gillies wrote:
> My PATA hard disk is crippled by CRC errors when it's on the same cable
> as a 1GB SanDisk Ultra II CompactFlash card in CF to IDE adaptor. Any
> ideas why?
>
> By swapping around components, I've established that the problem is
> unlikely due to the cable (which is 50cm long 80-wire), hard disk or
> controller. When I swap to another, slower CF card (one that only
> supports PIO rather than MWDMA), the error goes away and the hard disk
> operates happily at UDMA/33.
>
> No errors are reported for the CF card I/O.
>
> The adaptor card is unbranded, model CF-IDE40 V.A1. It's a double-sided
> type, but I'm only using one of the two CF sockets.
>
> The spec sheet says
>
> * Accord with: CF spec Ver2.0 and IDE/ATA-33 spec.
> * Standard IDE interface: true-IDE mode, support DMA-33 transfer mode
>
> I see the errors both with the old IDE code in 2.6.18 and with libata in
> 2.6.22
>
> cheers,
>
> Malcolm
> --
> Here are the relevant dmesg lines:
>
> ata_piix 0000:00:1f.1: version 2.11
> PCI: Enabling device 0000:00:1f.1 (0005 -> 0007)
> ACPI: PCI Interrupt 0000:00:1f.1[A] -> Link [LNKC] -> GSI 11 (level,
> low) -> IRQ
> 11
> PCI: Setting latency timer of device 0000:00:1f.1 to 64
> scsi0 : ata_piix
> scsi1 : ata_piix
> ata1: PATA max UDMA/100 cmd 0x000101f0 ctl 0x000103f6 bmdma 0x0001ffa0
> irq 14
> ata2: PATA max UDMA/100 cmd 0x00010170 ctl 0x00010376 bmdma 0x0001ffa8
> irq 15
> ata1.00: CFA: SanDisk SDCFH-1024, HDX 4.07, max MWDMA2
> ata1.00: 2001888 sectors, multi 0: LBA
> ata1.01: ATA-7: SAMSUNG HD400LD, WQ100-14, max UDMA/100
> ata1.01: 781422768 sectors, multi 0: LBA48
> ata1.01: limited to UDMA/33 due to 40-wire cable
> ata1.00: configured for MWDMA2
> ata1.01: configured for UDMA/33
> ata2.00: ATAPI: LG CD-ROM CRN-8245B, 1.18, max UDMA/33
> ata2.00: configured for UDMA/33
> scsi 0:0:0:0: Direct-Access ATA SanDisk SDCFH-10 HDX PQ: 0
> ANSI: 5
> scsi 0:0:1:0: Direct-Access ATA SAMSUNG HD400LD WQ10 PQ: 0
> ANSI: 5
> scsi 1:0:0:0: CD-ROM LG CD-ROM CRN-8245B 1.18 PQ: 0
> ANSI: 5
> sd 0:0:0:0: [sda] 2001888 512-byte hardware sectors (1025 MB)
> sd 0:0:0:0: [sda] Write Protect is off
> sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
> sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't
> support DPO or FUA
> sd 0:0:0:0: [sda] 2001888 512-byte hardware sectors (1025 MB)
> sd 0:0:0:0: [sda] Write Protect is off
> sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
> sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't
> support DPO or FUA
> sda: sda1
> sd 0:0:0:0: [sda] Attached SCSI removable disk
> sd 0:0:1:0: [sdb] 781422768 512-byte hardware sectors (400088 MB)
> sd 0:0:1:0: [sdb] Write Protect is off
> sd 0:0:1:0: [sdb] Mode Sense: 00 3a 00 00
> sd 0:0:1:0: [sdb] Write cache: enabled, read cache: enabled, doesn't
> support DPO or FUA
> sd 0:0:1:0: [sdb] 781422768 512-byte hardware sectors (400088 MB)
> sd 0:0:1:0: [sdb] Write Protect is off
> sd 0:0:1:0: [sdb] Mode Sense: 00 3a 00 00
> sd 0:0:1:0: [sdb] Write cache: enabled, read cache: enabled, doesn't
> support DPO or FUA
> sdb:<3>ata1.01: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x2
> ata1.01: (BMDMA stat 0x25)
> ata1.01: cmd c8/00:08:00:00:00/00:00:00:00:00/f0 tag 0 cdb 0x0 data 4096 in
> res 51/84:00:07:00:00/00:00:00:00:00/f0 Emask 0x10 (ATA bus error)
> ata1: soft resetting port
>
> [subsequently ata1.01 is downrated to UDMA/25 and finally PIO4]
>
> # hdparm -I /dev/sda
>
> /dev/sda:
>
> CompactFlash ATA device, with removable media
> Model Number: SanDisk SDCFH-1024
> Serial Number: 004123D2804C2249
> Firmware Revision: HDX 4.07
> Standards:
> Supported: 4
> Likely used: 4
> Configuration:
> Logical max current
> cylinders 1986 1986
> heads 16 16
> sectors/track 63 63
> --
> CHS current addressable sectors: 2001888
> LBA user addressable sectors: 2001888
> device size with M = 1024*1024: 977 MBytes
> device size with M = 1000*1000: 1024 MBytes (1 GB)
> Capabilities:
> LBA, IORDY(may be)(cannot be disabled)
> Standby timer values: spec'd by Vendor
> R/W multiple sector transfer: Max = 4 Current = 0
> DMA: mdma0 mdma1 *mdma2
> Cycle time: min=120ns recommended=120ns
> PIO: pio0 pio1 pio2 pio3 pio4
> Cycle time: no flow control=120ns IORDY flow control=120ns
> Commands/features:
> Enabled Supported:
> * CFA feature set
>
> # hdparm -I /dev/sdb
>
> /dev/sdb:
>
> ATA device, with non-removable media
> Model Number: SAMSUNG HD400LD
> Serial Number: S0AXJ1MP308674
> Firmware Revision: WQ100-14
> Standards:
> Used: ATA/ATAPI-7 T13 1532D revision 4a
> Supported: 7 6 5 4
> Configuration:
> Logical max current
> cylinders 16383 16383
> heads 16 16
> sectors/track 63 63
> --
> CHS current addressable sectors: 16514064
> LBA user addressable sectors: 268435455
> LBA48 user addressable sectors: 781422768
> device size with M = 1024*1024: 381554 MBytes
> device size with M = 1000*1000: 400088 MBytes (400 GB)
> Capabilities:
> LBA, IORDY(can be disabled)
> Standby timer values: spec'd by Standard, no device specific
> minimum
> R/W multiple sector transfer: Max = 16 Current = ?
> Recommended acoustic management value: 254, current value: 254
> DMA: mdma0 mdma1 mdma2 udma0 *udma1 udma2 udma3 udma4 udma5
> Cycle time: min=120ns recommended=120ns
> PIO: pio0 pio1 pio2 pio3 pio4
> Cycle time: no flow control=240ns IORDY flow control=120ns
> Commands/features:
> Enabled Supported:
> * SMART feature set
> Security Mode feature set
> * Power Management feature set
> * Write cache
> * Look-ahead
> * Host Protected Area feature set
> * WRITE_BUFFER command
> * READ_BUFFER command
> * NOP cmd
> * DOWNLOAD_MICROCODE
> Power-Up In Standby feature set
> SET_FEATURES required to spinup after power up
> SET_MAX security extension
> * Automatic Acoustic Management feature set
> * 48-bit Address feature set
> * Device Configuration Overlay feature set
> * Mandatory FLUSH_CACHE
> * FLUSH_CACHE_EXT
> * SMART error logging
> * SMART self-test
> Media Card Pass-Through
> * General Purpose Logging feature set
> * SMART Command Transport (SCT) feature set
> * SCT Long Sector Access (AC1)
> * SCT LBA Segment Access (AC2)
> * SCT Error Recovery Control (AC3)
> * SCT Features Control (AC4)
> * SCT Data Tables (AC5)
> Security:
> Master password revision code = 65534
> supported
> not enabled
> not locked
> not frozen
> not expired: security count
> supported: enhanced erase
> 228min for SECURITY ERASE UNIT. 228min for ENHANCED SECURITY
> ERASE UNIT.
> HW reset results:
> CBLID- above Vih
> Device num = 1 determined by CSEL
> Checksum: correct
> -
> To unsubscribe from this list: send the line "unsubscribe linux-ide" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: CompactFlash and HD unhappy together on the same IDE channel
2007-08-18 7:00 CompactFlash and HD unhappy together on the same IDE channel Malcolm Gillies
2007-08-18 20:05 ` Matt Sealey
@ 2007-08-18 22:41 ` Alan Cox
2007-08-19 1:16 ` Mark Lord
2 siblings, 0 replies; 15+ messages in thread
From: Alan Cox @ 2007-08-18 22:41 UTC (permalink / raw)
To: Malcolm Gillies; +Cc: linux-ide
On Sat, 18 Aug 2007 17:00:35 +1000
Malcolm Gillies <malcolm@g7.org> wrote:
> My PATA hard disk is crippled by CRC errors when it's on the same cable
> as a 1GB SanDisk Ultra II CompactFlash card in CF to IDE adaptor. Any
> ideas why?
I would guess the resulting pipe of cables and bits means you are out of
spec for UDMA66 speeds. The restrictions on cables are very tight and
dangling convertors off them is often enough to mess it up.
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: CompactFlash and HD unhappy together on the same IDE channel
2007-08-18 7:00 CompactFlash and HD unhappy together on the same IDE channel Malcolm Gillies
2007-08-18 20:05 ` Matt Sealey
2007-08-18 22:41 ` Alan Cox
@ 2007-08-19 1:16 ` Mark Lord
2007-08-19 10:43 ` Malcolm Gillies
2007-08-19 16:56 ` Alan Cox
2 siblings, 2 replies; 15+ messages in thread
From: Mark Lord @ 2007-08-19 1:16 UTC (permalink / raw)
To: Malcolm Gillies; +Cc: linux-ide, Alan Cox
Malcolm Gillies wrote:
> My PATA hard disk is crippled by CRC errors when it's on the same cable
> as a 1GB SanDisk Ultra II CompactFlash card in CF to IDE adaptor. Any
> ideas why?
>
> By swapping around components, I've established that the problem is
> unlikely due to the cable (which is 50cm long 80-wire), hard disk or
> controller. When I swap to another, slower CF card (one that only
> supports PIO rather than MWDMA), the error goes away and the hard disk
> operates happily at UDMA/33.
..
> ata_piix 0000:00:1f.1: version 2.11
> PCI: Enabling device 0000:00:1f.1 (0005 -> 0007)
> ACPI: PCI Interrupt 0000:00:1f.1[A] -> Link [LNKC] -> GSI 11 (level,
> low) -> IRQ
> 11
> PCI: Setting latency timer of device 0000:00:1f.1 to 64
> scsi0 : ata_piix
> scsi1 : ata_piix
> ata1: PATA max UDMA/100 cmd 0x000101f0 ctl 0x000103f6 bmdma 0x0001ffa0
> irq 14
> ata2: PATA max UDMA/100 cmd 0x00010170 ctl 0x00010376 bmdma 0x0001ffa8
> irq 15
> ata1.00: CFA: SanDisk SDCFH-1024, HDX 4.07, max MWDMA2
> ata1.00: 2001888 sectors, multi 0: LBA
> ata1.01: ATA-7: SAMSUNG HD400LD, WQ100-14, max UDMA/100
> ata1.01: 781422768 sectors, multi 0: LBA48
> ata1.01: limited to UDMA/33 due to 40-wire cable
> ata1.00: configured for MWDMA2
> ata1.01: configured for UDMA/33
> ata2.00: ATAPI: LG CD-ROM CRN-8245B, 1.18, max UDMA/33
> ata2.00: configured for UDMA/33
..
Alan / Malcolm,
The fastest DMA speed reported for the CF is MWDMA2, which is considerably
slower than UDMA/33. When two devices share a cable, normally both must be
limited to the speed of the slower device, which is MWDMA2 in this case.
Both devices report being capable of 120ns cycle times for DMA,
but UDMA double-clocks those cycles, something that is incompatible
with non-UDMA devices.
I don't think we can safely assume that UDMA can co-operate with non-UDMA
on the same cable. In this case, it might be causing the CF device to falsely
detect control cycles.
???
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: CompactFlash and HD unhappy together on the same IDE channel
2007-08-19 1:16 ` Mark Lord
@ 2007-08-19 10:43 ` Malcolm Gillies
2007-08-19 14:18 ` Mark Lord
2007-08-19 16:56 ` Alan Cox
1 sibling, 1 reply; 15+ messages in thread
From: Malcolm Gillies @ 2007-08-19 10:43 UTC (permalink / raw)
To: Mark Lord; +Cc: linux-ide, Alan Cox
Mark Lord wrote:
> Malcolm Gillies wrote:
>> By swapping around components, I've established that the problem is
>> unlikely due to the cable (which is 50cm long 80-wire), hard disk or
>> controller. When I swap to another, slower CF card (one that only
>> supports PIO rather than MWDMA), the error goes away and the hard disk
>> operates happily at UDMA/33.
> ..
>> ata1.00: CFA: SanDisk SDCFH-1024, HDX 4.07, max MWDMA2
>> ata1.00: 2001888 sectors, multi 0: LBA
>> ata1.01: ATA-7: SAMSUNG HD400LD, WQ100-14, max UDMA/100
>> ata1.01: 781422768 sectors, multi 0: LBA48
>> ata1.01: limited to UDMA/33 due to 40-wire cable
>> ata1.00: configured for MWDMA2
>> ata1.01: configured for UDMA/33
> ..
> The fastest DMA speed reported for the CF is MWDMA2, which is considerably
> slower than UDMA/33. When two devices share a cable, normally both must be
> limited to the speed of the slower device, which is MWDMA2 in this case.
>
> Both devices report being capable of 120ns cycle times for DMA,
> but UDMA double-clocks those cycles, something that is incompatible
> with non-UDMA devices.
>
> I don't think we can safely assume that UDMA can co-operate with non-UDMA
> on the same cable. In this case, it might be causing the CF device to
> falsely detect control cycles.
The mystery for me is that
1) there are no errors reported for the CF device, only for the UDMA HD
2) the HD runs error-free at UDMA/33 when I use a different, PIO-only CF
card but otherwise the same cabling, adaptor etc.
In response to Alan's suggestion, the second point suggests it's not a
cabling problem.
Any suggestions on how to debug this further appreciated.
cheers,
Malcolm
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: CompactFlash and HD unhappy together on the same IDE channel
2007-08-19 10:43 ` Malcolm Gillies
@ 2007-08-19 14:18 ` Mark Lord
2007-08-20 7:34 ` Malcolm Gillies
0 siblings, 1 reply; 15+ messages in thread
From: Mark Lord @ 2007-08-19 14:18 UTC (permalink / raw)
To: Malcolm Gillies; +Cc: linux-ide, Alan Cox
Malcolm Gillies wrote:
> Mark Lord wrote:
>> Malcolm Gillies wrote:
>>> By swapping around components, I've established that the problem is
>>> unlikely due to the cable (which is 50cm long 80-wire), hard disk or
>>> controller. When I swap to another, slower CF card (one that only
>>> supports PIO rather than MWDMA), the error goes away and the hard
>>> disk operates happily at UDMA/33.
>> ..
>>> ata1.00: CFA: SanDisk SDCFH-1024, HDX 4.07, max MWDMA2
>>> ata1.00: 2001888 sectors, multi 0: LBA
>>> ata1.01: ATA-7: SAMSUNG HD400LD, WQ100-14, max UDMA/100
>>> ata1.01: 781422768 sectors, multi 0: LBA48
>>> ata1.01: limited to UDMA/33 due to 40-wire cable
>>> ata1.00: configured for MWDMA2
>>> ata1.01: configured for UDMA/33
>> ..
>> The fastest DMA speed reported for the CF is MWDMA2, which is
>> considerably
>> slower than UDMA/33. When two devices share a cable, normally both
>> must be
>> limited to the speed of the slower device, which is MWDMA2 in this case.
>>
>> Both devices report being capable of 120ns cycle times for DMA,
>> but UDMA double-clocks those cycles, something that is incompatible
>> with non-UDMA devices.
>>
>> I don't think we can safely assume that UDMA can co-operate with non-UDMA
>> on the same cable. In this case, it might be causing the CF device to
>> falsely detect control cycles.
>
> The mystery for me is that
>
> 1) there are no errors reported for the CF device, only for the UDMA HD
That fits perfectly with the supposition I made above.
When the host adaptor is speaking "UDMA" to the HD, the CF device may
falsely begin to respond on occasion, corrupting the HD data transfer.
When the host adaptor is speaking "MDMA2" to the CF, the HD device has
no trouble at all with the timing, and remains silent (as it should).
> 2) the HD runs error-free at UDMA/33 when I use a different, PIO-only CF
> card but otherwise the same cabling, adaptor etc.
It would be useful to see the boot log for this scenario.
In particular, I'm curious what timings get chosen for the two devices.
But since that CF card cannot do DMA, it should not respond at all to
any HD DMA cycles, even if the timing is too fast for it's decoders to
work properly.
-ml
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: CompactFlash and HD unhappy together on the same IDE channel
2007-08-19 1:16 ` Mark Lord
2007-08-19 10:43 ` Malcolm Gillies
@ 2007-08-19 16:56 ` Alan Cox
2007-09-15 23:54 ` Malcolm Gillies
1 sibling, 1 reply; 15+ messages in thread
From: Alan Cox @ 2007-08-19 16:56 UTC (permalink / raw)
To: Mark Lord; +Cc: Malcolm Gillies, linux-ide
> I don't think we can safely assume that UDMA can co-operate with non-UDMA
> on the same cable. In this case, it might be causing the CF device to falsely
> detect control cycles.
Improbable and never observed. The PIO address setup timing requires care
but not the rest, and especially not UDMA where you've got different
signalling and different timing active.
Sounds to me like the usual case of people putting CF convertors onto
spec compliant cables and ending up with electrical problems. If you
stick additional connectors, wires and plugs onto the cable it goes out
of spec.
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: CompactFlash and HD unhappy together on the same IDE channel
2007-08-19 14:18 ` Mark Lord
@ 2007-08-20 7:34 ` Malcolm Gillies
0 siblings, 0 replies; 15+ messages in thread
From: Malcolm Gillies @ 2007-08-20 7:34 UTC (permalink / raw)
To: Mark Lord; +Cc: linux-ide, Alan Cox
Mark Lord wrote:
> Malcolm Gillies wrote:
>> 2) the HD runs error-free at UDMA/33 when I use a different, PIO-only
>> CF card but otherwise the same cabling, adaptor etc.
>
> It would be useful to see the boot log for this scenario.
> In particular, I'm curious what timings get chosen for the two devices.
> But since that CF card cannot do DMA, it should not respond at all to
> any HD DMA cycles, even if the timing is too fast for it's decoders to
> work properly.
scsi0 : ata_piix
scsi1 : ata_piix
ata1: PATA max UDMA/100 cmd 0x000101f0 ctl 0x000103f6 bmdma 0x0001ffa0
irq 14
ata2: PATA max UDMA/100 cmd 0x00010170 ctl 0x00010376 bmdma 0x0001ffa8
irq 15
ata1.00: CFA: Renesas XX.V.3.5.0.0, Rev 0.00, max PIO4
ata1.00: 1000944 sectors, multi 1: LBA
ata1.01: ATA-7: SAMSUNG HD400LD, WQ100-14, max UDMA/100
ata1.01: 781422768 sectors, multi 0: LBA48
ata1.00: configured for PIO4
ata1.01: configured for UDMA/100
ata2.00: ATAPI: LG CD-ROM CRN-8245B, 1.18, max UDMA/33
ata2.00: configured for UDMA/33
scsi 0:0:0:0: Direct-Access ATA Renesas XX.V.3.5 Rev PQ: 0 ANSI: 5
scsi 0:0:1:0: Direct-Access ATA SAMSUNG HD400LD WQ10 PQ: 0 ANSI: 5
scsi 1:0:0:0: CD-ROM LG CD-ROM CRN-8245B 1.18 PQ: 0 ANSI: 5
sd 0:0:0:0: [sda] 1000944 512-byte hardware sectors (512 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't
support DPO or FUA
sd 0:0:0:0: [sda] 1000944 512-byte hardware sectors (512 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't
support DPO or FUA
sda: sda1
sd 0:0:0:0: [sda] Attached SCSI removable disk
sd 0:0:1:0: [sdb] 781422768 512-byte hardware sectors (400088 MB)
sd 0:0:1:0: [sdb] Write Protect is off
sd 0:0:1:0: [sdb] Mode Sense: 00 3a 00 00
sd 0:0:1:0: [sdb] Write cache: enabled, read cache: enabled, doesn't
support DPO or FUA
sd 0:0:1:0: [sdb] 781422768 512-byte hardware sectors (400088 MB)
sd 0:0:1:0: [sdb] Write Protect is off
d 0:0:1:0: [sdb] Mode Sense: 00 3a 00 00
sd 0:0:1:0: [sdb] Write cache: enabled, read cache: enabled, doesn't
support DPO or FUA
sdb: sdb1
sd 0:0:1:0: [sdb] Attached SCSI disk
# hdparm -I /dev/sda
/dev/sda:
CompactFlash ATA device, with removable media
Model Number: Renesas XX.V.3.5.0.0
Serial Number: X0819 20050726050808
Firmware Revision: Rev 0.00
Standards:
Likely used: 4
Configuration:
Logical max current
cylinders 993 993
heads 16 16
sectors/track 63 63
--
bytes/track: 0 bytes/sector: 512
CHS current addressable sectors: 1000944
LBA user addressable sectors: 1000944
device size with M = 1024*1024: 488 MBytes
device size with M = 1000*1000: 512 MBytes
Capabilities:
LBA, IORDY(may be)(cannot be disabled)
Buffer size: 1.0kB bytes avail on r/w long: 4
Standby timer values: spec'd by Vendor
R/W multiple sector transfer: Max = 1 Current = 1
DMA: not supported
PIO: pio0 pio1 pio2 pio3 pio4
Cycle time: no flow control=120ns IORDY flow control=120ns
Commands/features:
Enabled Supported:
* WRITE_BUFFER command
* READ_BUFFER command
* NOP cmd
* CFA feature set
# hdparm --direct -Tt /dev/sdb
/dev/sdb:
Timing O_DIRECT cached reads: 180 MB in 2.02 seconds = 89.04 MB/sec
Timing O_DIRECT disk reads: 224 MB in 3.03 seconds = 74.04 MB/sec
# hdparm --direct -Tt /dev/sda
/dev/sda:
Timing O_DIRECT cached reads: 6 MB in 2.27 seconds = 2.64 MB/sec
Timing O_DIRECT disk reads: 8 MB in 3.03 seconds = 2.64 MB/sec
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: CompactFlash and HD unhappy together on the same IDE channel
2007-08-19 16:56 ` Alan Cox
@ 2007-09-15 23:54 ` Malcolm Gillies
2007-09-22 18:12 ` Alan Cox
0 siblings, 1 reply; 15+ messages in thread
From: Malcolm Gillies @ 2007-09-15 23:54 UTC (permalink / raw)
To: Alan Cox; +Cc: Mark Lord, linux-ide
Alan Cox wrote:
> Sounds to me like the usual case of people putting CF convertors onto
> spec compliant cables and ending up with electrical problems. If you
> stick additional connectors, wires and plugs onto the cable it goes out
> of spec.
I've got reasonable evidence now that this is not the case.
I've acquired a new CF card that is capable of UDMA2, and with the same
connectors, wiring and adaptor (i.e. I popped out the MWDMA card and
inserted the UDMA one), I can now boot and read data on both devices
without error at reasonable speeds.
Looks to me that there's a problem with either the specific MWDMA card
(Sandisk Ultra II) or more generally with putting MWDMA and UDMA on the
same cable.
cheers,
Malcolm
--
Here's the bootlog etc with the new CF card
ata_piix 0000:00:1f.1: version 2.11
scsi0 : ata_piix
scsi1 : ata_piix
ata1: PATA max UDMA/100 cmd 0x000101f0 ctl 0x000103f6 bmdma 0x0001ffa0
irq 14
ata2: PATA max UDMA/100 cmd 0x00010170 ctl 0x00010376 bmdma 0x0001ffa8
irq 15
ata1.00: ATA-4: TRANSCEND, 20070319, max UDMA/66
ata1.00: 3980592 sectors, multi 0: LBA
ata1.01: ATA-7: SAMSUNG HD400LD, WQ100-14, max UDMA/100
ata1.01: 781422768 sectors, multi 16: LBA48
ata1.00: limited to UDMA/33 due to 40-wire cable
ata1.01: limited to UDMA/33 due to 40-wire cable
ata1.00: configured for UDMA/33
ata1.01: configured for UDMA/33
ata2.00: ATAPI: LG CD-ROM CRN-8245B, 1.18, max UDMA/33
ata2.00: configured for UDMA/33
scsi 0:0:0:0: Direct-Access ATA TRANSCEND 2007 PQ: 0 ANSI: 5
scsi 0:0:1:0: Direct-Access ATA SAMSUNG HD400LD WQ10 PQ: 0 ANSI: 5
scsi 1:0:0:0: CD-ROM LG CD-ROM CRN-8245B 1.18 PQ: 0 ANSI: 5
sd 0:0:0:0: [sda] 3980592 512-byte hardware sectors (2038 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't
support DP
O or FUA
sd 0:0:0:0: [sda] 3980592 512-byte hardware sectors (2038 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't
support DP
O or FUA
sda: sda1
sd 0:0:0:0: [sda] Attached SCSI disk
sd 0:0:1:0: [sdb] 781422768 512-byte hardware sectors (400088 MB)
sd 0:0:1:0: [sdb] Write Protect is off
sd 0:0:1:0: [sdb] Mode Sense: 00 3a 00 00
sd 0:0:1:0: [sdb] Write cache: enabled, read cache: enabled, doesn't
support DPO
or FUA
sd 0:0:1:0: [sdb] 781422768 512-byte hardware sectors (400088 MB)
sd 0:0:1:0: [sdb] Write Protect is off
sd 0:0:1:0: [sdb] Mode Sense: 00 3a 00 00
sd 0:0:1:0: [sdb] Write cache: enabled, read cache: enabled, doesn't
support DPO
or FUA
sdb: sdb1
sd 0:0:1:0: [sdb] Attached SCSI disk
# hdparm -I /dev/sda
/dev/sda:
ATA device, with non-removable media
Model Number: TRANSCEND
Serial Number: 0 2000210E
Firmware Revision: 20070319
Standards:
Supported: 4
Likely used: 5
Configuration:
Logical max current
cylinders 3949 3949
heads 16 16
sectors/track 63 63
--
CHS current addressable sectors: 3980592
LBA user addressable sectors: 3980592
device size with M = 1024*1024: 1943 MBytes
device size with M = 1000*1000: 2038 MBytes (2 GB)
Capabilities:
LBA, IORDY(may be)(cannot be disabled)
Standby timer values: spec'd by Vendor
R/W multiple sector transfer: Max = 1 Current = 0
Advanced power management level: unknown setting (0x0000)
DMA: mdma0 mdma1 mdma2 udma0 udma1 *udma2 udma3 udma4
Cycle time: min=120ns recommended=120ns
PIO: pio0 pio1 pio2 pio3 pio4
Cycle time: no flow control=120ns IORDY flow control=120ns
Commands/features:
Enabled Supported:
Power Management feature set
WRITE_BUFFER command
READ_BUFFER command
NOP cmd
CFA feature set
Advanced Power Management feature set
HW reset results:
CBLID- below Vih
Device num = 0
Integrity word not set (found 0x0000, expected 0x36a5)
# hdparm --direct -Tt /dev/sdb
/dev/sdb:
Timing O_DIRECT cached reads: 64 MB in 2.05 seconds = 31.15 MB/sec
Timing O_DIRECT disk reads: 94 MB in 3.06 seconds = 30.71 MB/sec
# hdparm --direct -Tt /dev/sda
/dev/sda:
Timing O_DIRECT cached reads: 60 MB in 2.01 seconds = 29.84 MB/sec
Timing O_DIRECT disk reads: 90 MB in 3.02 seconds = 29.80 MB/sec
And my original report:
> My PATA hard disk is crippled by CRC errors when it's on the same
> cable as a 1GB SanDisk Ultra II CompactFlash card in CF to IDE adaptor.
> Any ideas why?
>
> By swapping around components, I've established that the problem is
> unlikely due to the cable (which is 50cm long 80-wire), hard disk or
> controller. When I swap to another, slower CF card (one that only
> supports PIO rather than MWDMA), the error goes away and the hard disk
> operates happily at UDMA/33.
>
> No errors are reported for the CF card I/O.
>
> The adaptor card is unbranded, model CF-IDE40 V.A1. It's a
> double-sided type, but I'm only using one of the two CF sockets.
>
> The spec sheet says
>
> * Accord with: CF spec Ver2.0 and IDE/ATA-33 spec.
> * Standard IDE interface: true-IDE mode, support DMA-33 transfer mode
>
> I see the errors both with the old IDE code in 2.6.18 and with libata in 2.6.22
>
> cheers,
>
> Malcolm
> --
> Here are the relevant dmesg lines:
>
> ata_piix 0000:00:1f.1: version 2.11
> PCI: Enabling device 0000:00:1f.1 (0005 -> 0007)
> ACPI: PCI Interrupt 0000:00:1f.1[A] -> Link [LNKC] -> GSI 11 (level, low) -> IRQ
> 11
> PCI: Setting latency timer of device 0000:00:1f.1 to 64
> scsi0 : ata_piix
> scsi1 : ata_piix
> ata1: PATA max UDMA/100 cmd 0x000101f0 ctl 0x000103f6 bmdma 0x0001ffa0 irq 14
> ata2: PATA max UDMA/100 cmd 0x00010170 ctl 0x00010376 bmdma 0x0001ffa8 irq 15
> ata1.00: CFA: SanDisk SDCFH-1024, HDX 4.07, max MWDMA2
> ata1.00: 2001888 sectors, multi 0: LBA
> ata1.01: ATA-7: SAMSUNG HD400LD, WQ100-14, max UDMA/100
> ata1.01: 781422768 sectors, multi 0: LBA48
> ata1.01: limited to UDMA/33 due to 40-wire cable
> ata1.00: configured for MWDMA2
> ata1.01: configured for UDMA/33
> ata2.00: ATAPI: LG CD-ROM CRN-8245B, 1.18, max UDMA/33
> ata2.00: configured for UDMA/33
> scsi 0:0:0:0: Direct-Access ATA SanDisk SDCFH-10 HDX PQ: 0 ANSI: 5
> scsi 0:0:1:0: Direct-Access ATA SAMSUNG HD400LD WQ10 PQ: 0 ANSI: 5
> scsi 1:0:0:0: CD-ROM LG CD-ROM CRN-8245B 1.18 PQ: 0 ANSI: 5
> sd 0:0:0:0: [sda] 2001888 512-byte hardware sectors (1025 MB)
> sd 0:0:0:0: [sda] Write Protect is off
> sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
> sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
> sd 0:0:0:0: [sda] 2001888 512-byte hardware sectors (1025 MB)
> sd 0:0:0:0: [sda] Write Protect is off
> sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
> sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
> sda: sda1
> sd 0:0:0:0: [sda] Attached SCSI removable disk
> sd 0:0:1:0: [sdb] 781422768 512-byte hardware sectors (400088 MB)
> sd 0:0:1:0: [sdb] Write Protect is off
> sd 0:0:1:0: [sdb] Mode Sense: 00 3a 00 00
> sd 0:0:1:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
> sd 0:0:1:0: [sdb] 781422768 512-byte hardware sectors (400088 MB)
> sd 0:0:1:0: [sdb] Write Protect is off
> sd 0:0:1:0: [sdb] Mode Sense: 00 3a 00 00
> sd 0:0:1:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
> sdb:<3>ata1.01: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x2
> ata1.01: (BMDMA stat 0x25)
> ata1.01: cmd c8/00:08:00:00:00/00:00:00:00:00/f0 tag 0 cdb 0x0 data 4096 in
> res 51/84:00:07:00:00/00:00:00:00:00/f0 Emask 0x10 (ATA bus error)
> ata1: soft resetting port
>
> [subsequently ata1.01 is downrated to UDMA/25 and finally PIO4]
>
> # hdparm -I /dev/sda
>
> /dev/sda:
>
> CompactFlash ATA device, with removable media
> Model Number: SanDisk SDCFH-1024
> Serial Number: 004123D2804C2249
> Firmware Revision: HDX 4.07
> Standards:
> Supported: 4
> Likely used: 4
> Configuration:
> Logical max current
> cylinders 1986 1986
> heads 16 16
> sectors/track 63 63
> --
> CHS current addressable sectors: 2001888
> LBA user addressable sectors: 2001888
> device size with M = 1024*1024: 977 MBytes
> device size with M = 1000*1000: 1024 MBytes (1 GB)
> Capabilities:
> LBA, IORDY(may be)(cannot be disabled)
> Standby timer values: spec'd by Vendor
> R/W multiple sector transfer: Max = 4 Current = 0
> DMA: mdma0 mdma1 *mdma2
> Cycle time: min=120ns recommended=120ns
> PIO: pio0 pio1 pio2 pio3 pio4
> Cycle time: no flow control=120ns IORDY flow control=120ns
> Commands/features:
> Enabled Supported:
> * CFA feature set
>
> # hdparm -I /dev/sdb
>
> /dev/sdb:
>
> ATA device, with non-removable media
> Model Number: SAMSUNG HD400LD
> Serial Number: S0AXJ1MP308674
> Firmware Revision: WQ100-14
> Standards:
> Used: ATA/ATAPI-7 T13 1532D revision 4a
> Supported: 7 6 5 4
> Configuration:
> Logical max current
> cylinders 16383 16383
> heads 16 16
> sectors/track 63 63
> --
> CHS current addressable sectors: 16514064
> LBA user addressable sectors: 268435455
> LBA48 user addressable sectors: 781422768
> device size with M = 1024*1024: 381554 MBytes
> device size with M = 1000*1000: 400088 MBytes (400 GB)
> Capabilities:
> LBA, IORDY(can be disabled)
> Standby timer values: spec'd by Standard, no device specific minimum
> R/W multiple sector transfer: Max = 16 Current = ?
> Recommended acoustic management value: 254, current value: 254
> DMA: mdma0 mdma1 mdma2 udma0 *udma1 udma2 udma3 udma4 udma5
> Cycle time: min=120ns recommended=120ns
> PIO: pio0 pio1 pio2 pio3 pio4
> Cycle time: no flow control=240ns IORDY flow control=120ns
> Commands/features:
> Enabled Supported:
> * SMART feature set
> Security Mode feature set
> * Power Management feature set
> * Write cache
> * Look-ahead
> * Host Protected Area feature set
> * WRITE_BUFFER command
> * READ_BUFFER command
> * NOP cmd
> * DOWNLOAD_MICROCODE
> Power-Up In Standby feature set
> SET_FEATURES required to spinup after power up
> SET_MAX security extension
> * Automatic Acoustic Management feature set
> * 48-bit Address feature set
> * Device Configuration Overlay feature set
> * Mandatory FLUSH_CACHE
> * FLUSH_CACHE_EXT
> * SMART error logging
> * SMART self-test
> Media Card Pass-Through
> * General Purpose Logging feature set
> * SMART Command Transport (SCT) feature set
> * SCT Long Sector Access (AC1)
> * SCT LBA Segment Access (AC2)
> * SCT Error Recovery Control (AC3)
> * SCT Features Control (AC4)
> * SCT Data Tables (AC5)
> Security:
> Master password revision code = 65534
> supported
> not enabled
> not locked
> not frozen
> not expired: security count
> supported: enhanced erase
> 228min for SECURITY ERASE UNIT. 228min for ENHANCED SECURITY ERASE UNIT.
> HW reset results:
> CBLID- above Vih
> Device num = 1 determined by CSEL
> Checksum: correct
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: CompactFlash and HD unhappy together on the same IDE channel
2007-09-15 23:54 ` Malcolm Gillies
@ 2007-09-22 18:12 ` Alan Cox
2007-09-23 14:49 ` Matt Sealey
2007-09-23 16:26 ` Mark Lord
0 siblings, 2 replies; 15+ messages in thread
From: Alan Cox @ 2007-09-22 18:12 UTC (permalink / raw)
To: Malcolm Gillies; +Cc: Mark Lord, linux-ide
> I've acquired a new CF card that is capable of UDMA2, and with the same
> connectors, wiring and adaptor (i.e. I popped out the MWDMA card and
> inserted the UDMA one), I can now boot and read data on both devices
> without error at reasonable speeds.
Fascinating. Does point more to a driver funny you are right. At the
moment I'm at a loss to guess what
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: CompactFlash and HD unhappy together on the same IDE channel
2007-09-22 18:12 ` Alan Cox
@ 2007-09-23 14:49 ` Matt Sealey
2007-09-23 16:26 ` Mark Lord
1 sibling, 0 replies; 15+ messages in thread
From: Matt Sealey @ 2007-09-23 14:49 UTC (permalink / raw)
To: Alan Cox; +Cc: Malcolm Gillies, Mark Lord, linux-ide
Alan Cox wrote:
>> I've acquired a new CF card that is capable of UDMA2, and with the same
>> connectors, wiring and adaptor (i.e. I popped out the MWDMA card and
>> inserted the UDMA one), I can now boot and read data on both devices
>> without error at reasonable speeds.
>
> Fascinating. Does point more to a driver funny you are right. At the
> moment I'm at a loss to guess what
Why would it be a driver quirk just because it now works when it didn't
before?
There are plenty of completely WEIRD people out there who install SCSI
systems in a Y configuration with a controller in the middle and both
ends terminated (or one end not or one end with a real terminator and
the other using drive termination) which is totally out of spec and
so on but *works* just fine by some random chance of chipset, drives and
cable length..
Doesn't UDMA checksum transfers, where MWDMA doesn't - or some drive to
controller intervention which would silently retry where MWDMA would
just pop it's guts all over your system?
--
Matt Sealey <matt@genesi-usa.com>
Genesi, Manager, Developer Relations
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: CompactFlash and HD unhappy together on the same IDE channel
2007-09-22 18:12 ` Alan Cox
2007-09-23 14:49 ` Matt Sealey
@ 2007-09-23 16:26 ` Mark Lord
2007-09-23 17:40 ` Alan Cox
1 sibling, 1 reply; 15+ messages in thread
From: Mark Lord @ 2007-09-23 16:26 UTC (permalink / raw)
To: Alan Cox; +Cc: Malcolm Gillies, linux-ide
Alan Cox wrote:
>> I've acquired a new CF card that is capable of UDMA2, and with the same
>> connectors, wiring and adaptor (i.e. I popped out the MWDMA card and
>> inserted the UDMA one), I can now boot and read data on both devices
>> without error at reasonable speeds.
>
> Fascinating. Does point more to a driver funny you are right. At the
> moment I'm at a loss to guess what
We seem to have had a lot of reports of CF cards failing with MDMA modes recently.
Some of these reports are because of SATA<>PATA bridge chips that don't support MDMA,
others are due to unknowns.
The solution is beginning to look more and more obvious: default to not use MDMA
modes for CF devices at boot. And eventually provide a sysfs or libata parameter
(or support/snoop SET_XFER_MODE) to change the mode later.
Cheers
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: CompactFlash and HD unhappy together on the same IDE channel
2007-09-23 16:26 ` Mark Lord
@ 2007-09-23 17:40 ` Alan Cox
2007-09-24 22:03 ` Mark Lord
0 siblings, 1 reply; 15+ messages in thread
From: Alan Cox @ 2007-09-23 17:40 UTC (permalink / raw)
To: Mark Lord; +Cc: Malcolm Gillies, linux-ide
> The solution is beginning to look more and more obvious: default to not use MDMA
> modes for CF devices at boot. And eventually provide a sysfs or libata parameter
> (or support/snoop SET_XFER_MODE) to change the mode later.
I strongly disagree.
We need to understand *why*, we need to fix any actual bugs we have.
Lots and lots of people have no problems here. The people with problems
and pure PATA all seem to have piix chips.
Alan
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: CompactFlash and HD unhappy together on the same IDE channel
2007-09-23 17:40 ` Alan Cox
@ 2007-09-24 22:03 ` Mark Lord
2007-09-24 22:29 ` Alan Cox
0 siblings, 1 reply; 15+ messages in thread
From: Mark Lord @ 2007-09-24 22:03 UTC (permalink / raw)
To: Alan Cox; +Cc: Malcolm Gillies, linux-ide
Alan Cox wrote:
>> The solution is beginning to look more and more obvious: default to not use MDMA
>> modes for CF devices at boot. And eventually provide a sysfs or libata parameter
>> (or support/snoop SET_XFER_MODE) to change the mode later.
>
> I strongly disagree.
>
> We need to understand *why*, we need to fix any actual bugs we have.
> Lots and lots of people have no problems here. The people with problems
> and pure PATA all seem to have piix chips.
Well, there's a reasonable point.
But when we see a CF card on a *SATA* controller, we *know* there's a bridge chip
in there someplace, and we know that the common bridges don't do MWDMA.
Cheers
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: CompactFlash and HD unhappy together on the same IDE channel
2007-09-24 22:03 ` Mark Lord
@ 2007-09-24 22:29 ` Alan Cox
0 siblings, 0 replies; 15+ messages in thread
From: Alan Cox @ 2007-09-24 22:29 UTC (permalink / raw)
To: Mark Lord; +Cc: Malcolm Gillies, linux-ide
> But when we see a CF card on a *SATA* controller, we *know* there's a bridge chip
> in there someplace, and we know that the common bridges don't do MWDMA.
If we see CF on SATA we already should kill the MWDMA modes as we'll see
word 95 showing SATA if the bridge is properly implemented. I guess it
might not show as Major rev 5+. I'll investigate that because it is a
good heuristic.
^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2007-09-24 22:23 UTC | newest]
Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-08-18 7:00 CompactFlash and HD unhappy together on the same IDE channel Malcolm Gillies
2007-08-18 20:05 ` Matt Sealey
2007-08-18 22:41 ` Alan Cox
2007-08-19 1:16 ` Mark Lord
2007-08-19 10:43 ` Malcolm Gillies
2007-08-19 14:18 ` Mark Lord
2007-08-20 7:34 ` Malcolm Gillies
2007-08-19 16:56 ` Alan Cox
2007-09-15 23:54 ` Malcolm Gillies
2007-09-22 18:12 ` Alan Cox
2007-09-23 14:49 ` Matt Sealey
2007-09-23 16:26 ` Mark Lord
2007-09-23 17:40 ` Alan Cox
2007-09-24 22:03 ` Mark Lord
2007-09-24 22:29 ` Alan Cox
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).