提交 7c51c17e 编写于 作者: B Bartlomiej Zolnierkiewicz

ide: remove CONFIG_IDEDISK_MULTI_MODE

Use multi PIO by default when available and remove no longer
needed CONFIG_IDEDISK_MULTI_MODE (it should be safe nowadays,
despite to what help entry has been saying).
Signed-off-by: NBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
上级 7e59ea21
...@@ -131,29 +131,6 @@ config BLK_DEV_IDEDISK ...@@ -131,29 +131,6 @@ config BLK_DEV_IDEDISK
If unsure, say Y. If unsure, say Y.
config IDEDISK_MULTI_MODE
bool "Use multiple sector mode for Programmed Input/Output by default"
help
This setting is irrelevant for most IDE disks, with direct memory
access, to which multiple sector mode does not apply. Multiple sector
mode is a feature of most modern IDE hard drives, permitting the
transfer of multiple sectors per Programmed Input/Output interrupt,
rather than the usual one sector per interrupt. When this feature is
enabled, it can reduce operating system overhead for disk Programmed
Input/Output. On some systems, it also can increase the data
throughput of Programmed Input/Output. Some drives, however, seemed
to run slower with multiple sector mode enabled. Some drives claimed
to support multiple sector mode, but lost data at some settings.
Under rare circumstances, such failures could result in massive
filesystem corruption.
If you get the following error, try to say Y here:
hda: set_multmode: status=0x51 { DriveReady SeekComplete Error }
hda: set_multmode: error=0x04 { DriveStatusError }
If in doubt, say N.
config BLK_DEV_IDECS config BLK_DEV_IDECS
tristate "PCMCIA IDE support" tristate "PCMCIA IDE support"
depends on PCMCIA depends on PCMCIA
......
...@@ -89,16 +89,14 @@ static void ide_disk_init_mult_count(ide_drive_t *drive) ...@@ -89,16 +89,14 @@ static void ide_disk_init_mult_count(ide_drive_t *drive)
u8 max_multsect = id[ATA_ID_MAX_MULTSECT] & 0xff; u8 max_multsect = id[ATA_ID_MAX_MULTSECT] & 0xff;
if (max_multsect) { if (max_multsect) {
#ifdef CONFIG_IDEDISK_MULTI_MODE
if ((max_multsect / 2) > 1) if ((max_multsect / 2) > 1)
id[ATA_ID_MULTSECT] = max_multsect | 0x100; id[ATA_ID_MULTSECT] = max_multsect | 0x100;
else else
id[ATA_ID_MULTSECT] &= ~0x1ff; id[ATA_ID_MULTSECT] &= ~0x1ff;
drive->mult_req = id[ATA_ID_MULTSECT] & 0xff; drive->mult_req = id[ATA_ID_MULTSECT] & 0xff;
#endif
if ((id[ATA_ID_MULTSECT] & 0x100) && if (drive->mult_req)
(id[ATA_ID_MULTSECT] & 0xff))
drive->special.b.set_multmode = 1; drive->special.b.set_multmode = 1;
} }
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册