lkml.org 
[lkml]   [2011]   [Apr]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
DateSun, 24 Apr 2011 11:35:22 -0400
FromJeff Garzik <>
SubjectRe: [PATCH] ATA: pata_at91.c bugfixes
On 04/20/2011 07:44 AM, Igor Plyatov wrote:
> * Fix "initial_timing" structure initialisation. The "struct ata_timing" must
> contain 10 members, but ".dmack_hold" member was not initialised.
> * The AT91SAM9 microcontrollers use special coding scheme for SMC_SETUP,
> SMC_PULSE, SMC_CYCLE registers.
> Old driver operates correctly only with low master clock values, but
> with high master clock it incorrectly calculates SMC values and stops
> to operate, because SMC can be setup only to admissible ranges in special
> format.
> New code correctly calculates SMC registers values, adjusts calculated
> to admissible ranges, enlarges cycles if required and converts values
> into SMC's format.
> * Old driver calculates CS_SETUP and CS_PULSE cycles incorrectly
> because of wrong assumptions.
> New code calculates:
> CS_SETUP = SETUP/2
> CS_PULSE = PULSE + SETUP/2 + HOLD/2
> * This fixes allows to correctly operate with any master clock frequency.
>
> Signed-off-by: Igor Plyatov<plyatov@gmail.com>
> ---
> drivers/ata/pata_at91.c | 223 ++++++++++++++++++++++++++++++++---------------
> 1 files changed, 154 insertions(+), 69 deletions(-)

FYI, the two previous "v4" patches are now applied.

Based on the comments from Stanislaw, this patch would need to be
updated anyway.


\
 
 \ /
  Last update: 2011-04-24 17:37    [from the cache]
©2003-2010