linux/drivers/ide
Bartlomiej Zolnierkiewicz 3b2a5c7149 ide: filter out "default" transfer mode values in set_xfer_rate()
* Filter out "default" transfer mode values (0x00 - default PIO mode,
  0x01 - default PIO mode w/ IORDY disabled) in write handler for obsoleted
  /proc/ide/hd?/settings:current_speed setting.

  Allowing "default" transfer mode values is a dangerous thing to do as
  we don't support programming controller to the "default" transfer mode
  and devices often use different values for the default and maximum PIO
  mode (i.e. PIO2 default and PIO4 maximum) so the controller will stay
  programmed for higher PIO mode while device will use the lower PIO mode.

  There is no functionality loss as by using special IOCTLs device can
  still be programmed to "default" transfer modes (it is only useful for
  debugging/testing purposes anyway).

* Remove no longer needed IDE_HFLAG_ABUSE_SET_DMA_MODE host flag, it was
  previously used by few host drivers to program the controller to PIO0
  timings for "default" transfer mode == 0x01 (although some host drivers
  would program invalid PIO timings instead).

* Cleanup ide_set_xfer_rate() and add BUG_ON().

Suggested-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
2008-07-23 19:55:56 +02:00
..
arm ide: remove ->INB, ->OUTB and ->OUTBSYNC methods 2008-07-23 19:55:54 +02:00
h8300 ide: remove ->INB, ->OUTB and ->OUTBSYNC methods 2008-07-23 19:55:54 +02:00
legacy ide: remove ->INB, ->OUTB and ->OUTBSYNC methods 2008-07-23 19:55:54 +02:00
mips ide: remove ->INB, ->OUTB and ->OUTBSYNC methods 2008-07-23 19:55:54 +02:00
pci ide: filter out "default" transfer mode values in set_xfer_rate() 2008-07-23 19:55:56 +02:00
ppc ide: remove ->INB, ->OUTB and ->OUTBSYNC methods 2008-07-23 19:55:54 +02:00
ide-acpi.c ide: remove obsoleted "ide=" kernel parameters 2008-07-15 21:21:47 +02:00
ide-atapi.c ide: add ide_read_bcount_and_ireason() helper 2008-07-23 19:55:54 +02:00
ide-cd_ioctl.c ide-cd: convert ide_do_drive_cmd path to use blk_execute_rq 2008-07-15 21:21:42 +02:00
ide-cd_verbose.c block: replace sizeof(rq->cmd) with BLK_MAX_CDB 2008-04-29 14:48:55 +02:00
ide-cd.c ide: add ide_read_bcount_and_ireason() helper 2008-07-23 19:55:54 +02:00
ide-cd.h ide-cd: remove ide_cd_init_rq 2008-07-15 21:21:45 +02:00
ide-disk.c ide: remove dead Virtual DMA support 2008-07-23 19:55:55 +02:00
ide-dma.c ide: remove dead Virtual DMA support 2008-07-23 19:55:55 +02:00
ide-floppy.c ide: add ->read_status method 2008-07-23 19:55:52 +02:00
ide-generic.c ide: pass hw_regs_t-s to ide_device_add[_all]() (take 3) 2008-07-23 19:55:50 +02:00
ide-io.c ide: add ->set_irq method 2008-07-23 19:55:52 +02:00
ide-iops.c ide: remove dead Virtual DMA support 2008-07-23 19:55:55 +02:00
ide-lib.c ide: filter out "default" transfer mode values in set_xfer_rate() 2008-07-23 19:55:56 +02:00
ide-pio-blacklist.c ide: move PIO blacklist to ide-pio-blacklist.c 2008-07-16 20:33:39 +02:00
ide-pnp.c ide: pass hw_regs_t-s to ide_device_add[_all]() (take 3) 2008-07-23 19:55:50 +02:00
ide-probe.c ide: add ide_read_device() helper 2008-07-23 19:55:54 +02:00
ide-proc.c ide: filter out "default" transfer mode values in set_xfer_rate() 2008-07-23 19:55:56 +02:00
ide-scan-pci.c ide: replace remaining __FUNCTION__ occurrences 2008-04-26 22:25:20 +02:00
ide-tape.c ide: add ->read_status method 2008-07-23 19:55:52 +02:00
ide-taskfile.c ide: add ->set_irq method 2008-07-23 19:55:52 +02:00
ide-timings.c ide: move ide_pio_cycle_time() to ide-timings.c 2008-07-16 20:33:39 +02:00
ide.c ide: remove ->INB, ->OUTB and ->OUTBSYNC methods 2008-07-23 19:55:54 +02:00
Kconfig ide: mark hpt34x host driver as BROKEN 2008-07-23 19:55:55 +02:00
Makefile move ide/legacy/hd.c to drivers/block/ 2008-07-16 20:33:47 +02:00
setup-pci.c ide: factor out simplex handling from ide_pci_dma_base() 2008-07-23 19:55:51 +02:00