mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-15 16:24:13 +08:00
amd74xx/via82cxxx: check ide_config_drive_speed() return value
* Check ide_config_drive_speed() return value. * While at also call ide_config_drive_speed() if the transfer mode is XFER_PIO_SLOW (this case happens iff the transfer mode has already been set on the device by ide-proc.c::set_xfer_rate()) and remove redundant setting of ->{init,current}_speed. * Bump driver version. Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
This commit is contained in:
parent
0f458943e0
commit
3b4024d429
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Version 2.22
|
||||
* Version 2.23
|
||||
*
|
||||
* AMD 755/756/766/8111 and nVidia nForce/2/2s/3/3s/CK804/MCP04
|
||||
* IDE driver for Linux.
|
||||
@ -240,8 +240,8 @@ static int amd_set_drive(ide_drive_t *drive, const u8 speed)
|
||||
struct ide_timing t, p;
|
||||
int T, UT;
|
||||
|
||||
if (speed != XFER_PIO_SLOW)
|
||||
ide_config_drive_speed(drive, speed);
|
||||
if (ide_config_drive_speed(drive, speed))
|
||||
return 1;
|
||||
|
||||
T = 1000000000 / amd_clock;
|
||||
UT = (amd_config->udma_mask == ATA_UDMA2) ? T : (T / 2);
|
||||
@ -258,10 +258,6 @@ static int amd_set_drive(ide_drive_t *drive, const u8 speed)
|
||||
|
||||
amd_set_speed(HWIF(drive)->pci_dev, drive->dn, &t);
|
||||
|
||||
if (!drive->init_speed)
|
||||
drive->init_speed = speed;
|
||||
drive->current_speed = speed;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
/*
|
||||
*
|
||||
* Version 3.48
|
||||
* Version 3.49
|
||||
*
|
||||
* VIA IDE driver for Linux. Supported southbridges:
|
||||
*
|
||||
@ -165,8 +165,8 @@ static int via_set_drive(ide_drive_t *drive, const u8 speed)
|
||||
struct ide_timing t, p;
|
||||
unsigned int T, UT;
|
||||
|
||||
if (speed != XFER_PIO_SLOW)
|
||||
ide_config_drive_speed(drive, speed);
|
||||
if (ide_config_drive_speed(drive, speed))
|
||||
return 1;
|
||||
|
||||
T = 1000000000 / via_clock;
|
||||
|
||||
@ -187,10 +187,6 @@ static int via_set_drive(ide_drive_t *drive, const u8 speed)
|
||||
|
||||
via_set_speed(HWIF(drive), drive->dn, &t);
|
||||
|
||||
if (!drive->init_speed)
|
||||
drive->init_speed = speed;
|
||||
drive->current_speed = speed;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user