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

Commit 16585e76 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
* 'for-linus' of git://brick.kernel.dk/data/git/linux-2.6-block:
  [PATCH] scsi: kill overeager "not-ready" messages
  [PATCH] it821x: fix ide dma setup bug
  [PATCH] ide: if the id fields looks screwy, disable DMA
  [PATCH] ide: option to disable cache flushes for buggy drives
parents facf0147 a75ad3c2
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -776,7 +776,7 @@ static void update_ordered(ide_drive_t *drive)
		 * not available so we don't need to recheck that.
		 */
		capacity = idedisk_capacity(drive);
		barrier = ide_id_has_flush_cache(id) &&
		barrier = ide_id_has_flush_cache(id) && !drive->noflush &&
			(drive->addressing == 0 || capacity <= (1ULL << 28) ||
			 ide_id_has_flush_cache_ext(id));

+1 −1
Original line number Diff line number Diff line
@@ -750,7 +750,7 @@ void ide_dma_verbose(ide_drive_t *drive)
			goto bug_dma_off;
		printk(", DMA");
	} else if (id->field_valid & 1) {
		printk(", BUG");
		goto bug_dma_off;
	}
	return;
bug_dma_off:
+4 −1
Original line number Diff line number Diff line
@@ -1539,7 +1539,7 @@ static int __init ide_setup(char *s)
		const char *hd_words[] = {
			"none", "noprobe", "nowerr", "cdrom", "serialize",
			"autotune", "noautotune", "minus8", "swapdata", "bswap",
			"minus11", "remap", "remap63", "scsi", NULL };
			"noflush", "remap", "remap63", "scsi", NULL };
		unit = s[2] - 'a';
		hw   = unit / MAX_DRIVES;
		unit = unit % MAX_DRIVES;
@@ -1578,6 +1578,9 @@ static int __init ide_setup(char *s)
			case -10: /* "bswap" */
				drive->bswap = 1;
				goto done;
			case -11: /* noflush */
				drive->noflush = 1;
				goto done;
			case -12: /* "remap" */
				drive->remap_0_to_1 = 1;
				goto done;
+8 −3
Original line number Diff line number Diff line
@@ -498,11 +498,16 @@ static int config_chipset_for_dma (ide_drive_t *drive)
{
	u8 speed	= ide_dma_speed(drive, it821x_ratemask(drive));

	config_it821x_chipset_for_pio(drive, !speed);
	if (speed) {
		config_it821x_chipset_for_pio(drive, 0);
		it821x_tune_chipset(drive, speed);

		return ide_dma_enable(drive);
	}

	return 0;
}

/**
 *	it821x_configure_drive_for_dma	-	set up for DMA transfers
 *	@drive: drive we are going to set up
+1 −4
Original line number Diff line number Diff line
@@ -110,11 +110,8 @@ static int ioctl_internal_command(struct scsi_device *sdev, char *cmd,
				       sshdr.asc, sshdr.ascq);
			break;
		case NOT_READY:	/* This happens if there is no disc in drive */
			if (sdev->removable && (cmd[0] != TEST_UNIT_READY)) {
				printk(KERN_INFO "Device not ready. Make sure"
				       " there is a disc in the drive.\n");
			if (sdev->removable)
				break;
			}
		case UNIT_ATTENTION:
			if (sdev->removable) {
				sdev->changed = 1;
Loading