|
@@ -229,14 +229,12 @@ static void sil_tuneproc(ide_drive_t *drive, u8 pio)
|
|
/**
|
|
/**
|
|
* siimage_tune_chipset - set controller timings
|
|
* siimage_tune_chipset - set controller timings
|
|
* @drive: Drive to set up
|
|
* @drive: Drive to set up
|
|
- * @xferspeed: speed we want to achieve
|
|
|
|
|
|
+ * @speed: speed we want to achieve
|
|
*
|
|
*
|
|
- * Tune the SII chipset for the desired mode. If we can't achieve
|
|
|
|
- * the desired mode then tune for a lower one, but ultimately
|
|
|
|
- * make the thing work.
|
|
|
|
|
|
+ * Tune the SII chipset for the desired mode.
|
|
*/
|
|
*/
|
|
-
|
|
|
|
-static int siimage_tune_chipset (ide_drive_t *drive, byte xferspeed)
|
|
|
|
|
|
+
|
|
|
|
+static int siimage_tune_chipset(ide_drive_t *drive, const u8 speed)
|
|
{
|
|
{
|
|
u8 ultra6[] = { 0x0F, 0x0B, 0x07, 0x05, 0x03, 0x02, 0x01 };
|
|
u8 ultra6[] = { 0x0F, 0x0B, 0x07, 0x05, 0x03, 0x02, 0x01 };
|
|
u8 ultra5[] = { 0x0C, 0x07, 0x05, 0x04, 0x02, 0x01 };
|
|
u8 ultra5[] = { 0x0C, 0x07, 0x05, 0x04, 0x02, 0x01 };
|
|
@@ -245,7 +243,6 @@ static int siimage_tune_chipset (ide_drive_t *drive, byte xferspeed)
|
|
ide_hwif_t *hwif = HWIF(drive);
|
|
ide_hwif_t *hwif = HWIF(drive);
|
|
u16 ultra = 0, multi = 0;
|
|
u16 ultra = 0, multi = 0;
|
|
u8 mode = 0, unit = drive->select.b.unit;
|
|
u8 mode = 0, unit = drive->select.b.unit;
|
|
- u8 speed = ide_rate_filter(drive, xferspeed);
|
|
|
|
unsigned long base = (unsigned long)hwif->hwif_data;
|
|
unsigned long base = (unsigned long)hwif->hwif_data;
|
|
u8 scsc = 0, addr_mask = ((hwif->channel) ?
|
|
u8 scsc = 0, addr_mask = ((hwif->channel) ?
|
|
((hwif->mmio) ? 0xF4 : 0x84) :
|
|
((hwif->mmio) ? 0xF4 : 0x84) :
|