All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sergei Shtylyov <sshtylyov@mvista.com>
To: plyatov@gmail.com
Cc: Sergei Shtylyov <sshtylyov@mvista.com>,
	jgarzik@pobox.com, linux-ide@vger.kernel.org,
	linux-kernel@vger.kernel.org, geomatsi@gmail.com
Subject: Re: [PATCH] ata: pata_at91.c bugfix for high master clock
Date: Sun, 12 Dec 2010 16:46:01 +0300	[thread overview]
Message-ID: <4D04D219.4040300@ru.mvista.com> (raw)
In-Reply-To: <1292096611.27634.20.camel@homepc>

Hello.

On 11-12-2010 22:43, Igor Plyatov wrote:

>>> I do not test this driver, but I think it have the same problem, because
>>> it have the same algorithm for timings calculation.

>>      I quickly looked thru both drivers and the algorithm seemed different. :-)

> I don't think so...

    In fact, the algorithm is slightly different.

>>> If you will see "cycle" value greater then 63, then problem exists.

>>      I thought the problem was with active pulse width, not total cycle time...

> The problem was - the same "cycle" variable used to set up NRD_CYCLE
> (max value = 127) and NCS_RD_PULSE (max value = 63).
> Where NRD_CYCLE, NCS_RD_PULSE names from datasheet for AT91SAM9.
> If NCS_RD_PULSE > 63, then overflow occur and pulse is much longer then
> required.

    Ah, NCS_RD_PULSE is different from active pulse time which is in the 
variable 'nrd_pulse'.

> For the 132 MHz, driver use NCS_RD_PULSE = 80 at device detection moment
> on my board.
> Calculated cycle in at91_ide is the same as for pata_at91 driver.

    Yes, but NCS_RD_PULSE is different in these drivers, it's cycle_time in 
at91_ide.c and (cycle time - 2) in the pata_at91.c... Then there should indeed 
be an error in at91_ide.c as well.

>>> Generally, I does not see any reasons to use at91_ide, because ATA
>>> drivers subsystem going to replace IDE drivers.

>>      There may be reasons -- like larger thruput in PIO mode (you have to check
>> this though -- but generally libata seems very slow in PIO). Anyway, it
>> doesn't mean that the bugs in IDE drivers should be ignored, and the
>> replacemtn will not happen anytime soon (not all IDE drivers are ported to
>> libata yet).

> I will send next patch where this driver corrected and tested.

    Thanks. :-)

> Best regards!
> --
> Igor Plyatov

WBR, Sergei

  reply	other threads:[~2010-12-12 13:47 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-12-10 20:03 [PATCH] ata: pata_at91.c bugfix for high master clock Igor Plyatov
2010-12-11  3:40 ` Igor Plyatov
2010-12-11 19:16 ` Sergey Matyukevich
2010-12-11 19:16   ` Sergey Matyukevich
     [not found] ` <4D0385D1.9080209@ru.mvista.com>
     [not found]   ` <1292081113.1580.21.camel@homepc>
     [not found]     ` <4D039930.4050905@ru.mvista.com>
2010-12-11 19:43       ` Igor Plyatov
2010-12-12 13:46         ` Sergei Shtylyov [this message]
  -- strict thread matches above, loose matches on Subject: below --
2010-12-11  3:37 Igor Plyatov
2010-12-11 18:40 ` Sergey Matyukevich
2010-12-11 20:51   ` Igor Plyatov

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=4D04D219.4040300@ru.mvista.com \
    --to=sshtylyov@mvista.com \
    --cc=geomatsi@gmail.com \
    --cc=jgarzik@pobox.com \
    --cc=linux-ide@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=plyatov@gmail.com \
    /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.