Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8b6b33be authored by Bartlomiej Zolnierkiewicz's avatar Bartlomiej Zolnierkiewicz
Browse files

jmicron: PIO fixes



* Set transfer mode on the device in jmicron_tuneproc(),
  also add pio == 255 == "auto-tune" handling.

* Use jmicron_tuneproc() in jmicron_config_drive_for_dma().

* Remove no longer needed config_jmicron_chipset_for_pio().

Acked-by: default avatarSergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: default avatarBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
parent 68aaf815
Loading
Loading
Loading
Loading
+4 −17
Original line number Diff line number Diff line
@@ -83,23 +83,10 @@ static u8 __devinit ata66_jmicron(ide_hwif_t *hwif)
	return ATA_CBL_PATA80;
}

static void jmicron_tuneproc (ide_drive_t *drive, byte mode_wanted)
static void jmicron_tuneproc(ide_drive_t *drive, u8 pio)
{
	return;
}

/**
 *	config_jmicron_chipset_for_pio	-	set drive timings
 *	@drive: drive to tune
 *	@speed we want
 *
 */

static void config_jmicron_chipset_for_pio (ide_drive_t *drive, byte set_speed)
{
	u8 speed = XFER_PIO_0 + ide_get_best_pio_mode(drive, 255, 5);
	if (set_speed)
		(void) ide_config_drive_speed(drive, speed);
	pio = ide_get_best_pio_mode(drive, pio, 5);
	ide_config_drive_speed(drive, XFER_PIO_0 + pio);
}

/**
@@ -132,7 +119,7 @@ static int jmicron_config_drive_for_dma (ide_drive_t *drive)
	if (ide_tune_dma(drive))
		return 0;

	config_jmicron_chipset_for_pio(drive, 1);
	jmicron_tuneproc(drive, 255);

	return -1;
}