All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mark Lord <liml@rtr.ca>
To: Malcolm Gillies <linux-ide@ouabain.org>
Cc: linux-ide@vger.kernel.org, Alan Cox <alan@lxorguk.ukuu.org.uk>
Subject: Re: CompactFlash and HD unhappy together on the same IDE channel
Date: Sun, 19 Aug 2007 10:18:40 -0400	[thread overview]
Message-ID: <46C85140.9050906@rtr.ca> (raw)
In-Reply-To: <46C81EC4.9080407@ouabain.org>

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

  reply	other threads:[~2007-08-19 14:19 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
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 [this message]
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

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=46C85140.9050906@rtr.ca \
    --to=liml@rtr.ca \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=linux-ide@ouabain.org \
    --cc=linux-ide@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.