aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-10-16 19:56:35 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-10-16 19:56:35 -0400
commit2b0460b534f383eca744eb8fff66ec9f57e702b9 (patch)
tree1bf4b9d0ebccd3083da4de7e4273b8d29f5d5c5d /include
parentd91f5bb69adde86173071cf7fffbdf705ae8c6e7 (diff)
parentb02fcae007ac64012806bc57054e7fee6e2ffe5e (diff)
Merge master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6: (33 commits) amd74xx: remove /proc/ide/amd74xx amd74xx/via82cxxx: don't initialize drive->dn sis5513: remove /proc/ide/sis ide: remove CONFIG_IDEDMA_ONLYDISK ide: add "hdx=nodma" kernel parameter ide: remove hwif->autodma and drive->autodma ide: remove "idex=dma" kernel parameter ide: remove CONFIG_BLK_DEV_IDEDMA_FORCED ide: use PCI_VDEVICE() macro sis5513: clear prefetch and postwrite for ATAPI devices it8213/piix/slc90e66: "de-couple" PIO and UDMA modes ide: unexport noautodma ide: unexport ide_tune_dma ide: remove ->ide_dma_check (take 2) ide-pmac: add PIO autotune fallback to ->ide_dma_check ide-cris: add PIO autotune fallback to ->ide_dma_check sl82c105: add PIO autotune fallback to ->ide_dma_check cs5530/sc1200: add PIO autotune fallback to ->ide_dma_check ide: remove ide_use_fast_pio() ide: remove drive->init_speed zeroing ...
Diffstat (limited to 'include')
-rw-r--r--include/linux/ide.h11
1 files changed, 5 insertions, 6 deletions
diff --git a/include/linux/ide.h b/include/linux/ide.h
index 30a1931466a6..e39ee2fa2607 100644
--- a/include/linux/ide.h
+++ b/include/linux/ide.h
@@ -576,7 +576,6 @@ typedef struct ide_drive_s {
576 select_t select; /* basic drive/head select reg value */ 576 select_t select; /* basic drive/head select reg value */
577 577
578 u8 keep_settings; /* restore settings after drive reset */ 578 u8 keep_settings; /* restore settings after drive reset */
579 u8 autodma; /* device can safely use dma on host */
580 u8 using_dma; /* disk is using dma for read/write */ 579 u8 using_dma; /* disk is using dma for read/write */
581 u8 retry_pio; /* retrying dma capable host in pio */ 580 u8 retry_pio; /* retrying dma capable host in pio */
582 u8 state; /* retry state */ 581 u8 state; /* retry state */
@@ -600,6 +599,7 @@ typedef struct ide_drive_s {
600 unsigned nice0 : 1; /* give obvious excess bandwidth */ 599 unsigned nice0 : 1; /* give obvious excess bandwidth */
601 unsigned nice2 : 1; /* give a share in our own bandwidth */ 600 unsigned nice2 : 1; /* give a share in our own bandwidth */
602 unsigned doorlocking : 1; /* for removable only: door lock/unlock works */ 601 unsigned doorlocking : 1; /* for removable only: door lock/unlock works */
602 unsigned nodma : 1; /* disallow DMA */
603 unsigned autotune : 2; /* 0=default, 1=autotune, 2=noautotune */ 603 unsigned autotune : 2; /* 0=default, 1=autotune, 2=noautotune */
604 unsigned remap_0_to_1 : 1; /* 0=noremap, 1=remap 0->1 (for EZDrive) */ 604 unsigned remap_0_to_1 : 1; /* 0=noremap, 1=remap 0->1 (for EZDrive) */
605 unsigned blocked : 1; /* 1=powermanagment told us not to do anything, so sleep nicely */ 605 unsigned blocked : 1; /* 1=powermanagment told us not to do anything, so sleep nicely */
@@ -736,7 +736,6 @@ typedef struct hwif_s {
736 void (*dma_exec_cmd)(ide_drive_t *, u8); 736 void (*dma_exec_cmd)(ide_drive_t *, u8);
737 void (*dma_start)(ide_drive_t *); 737 void (*dma_start)(ide_drive_t *);
738 int (*ide_dma_end)(ide_drive_t *drive); 738 int (*ide_dma_end)(ide_drive_t *drive);
739 int (*ide_dma_check)(ide_drive_t *drive);
740 int (*ide_dma_on)(ide_drive_t *drive); 739 int (*ide_dma_on)(ide_drive_t *drive);
741 void (*dma_off_quietly)(ide_drive_t *drive); 740 void (*dma_off_quietly)(ide_drive_t *drive);
742 int (*ide_dma_test_irq)(ide_drive_t *drive); 741 int (*ide_dma_test_irq)(ide_drive_t *drive);
@@ -798,7 +797,6 @@ typedef struct hwif_s {
798 unsigned serialized : 1; /* serialized all channel operation */ 797 unsigned serialized : 1; /* serialized all channel operation */
799 unsigned sharing_irq: 1; /* 1 = sharing irq with another hwif */ 798 unsigned sharing_irq: 1; /* 1 = sharing irq with another hwif */
800 unsigned reset : 1; /* reset after probe */ 799 unsigned reset : 1; /* reset after probe */
801 unsigned autodma : 1; /* auto-attempt using DMA at boot */
802 unsigned no_lba48 : 1; /* 1 = cannot do LBA48 */ 800 unsigned no_lba48 : 1; /* 1 = cannot do LBA48 */
803 unsigned no_lba48_dma : 1; /* 1 = cannot do LBA48 DMA */ 801 unsigned no_lba48_dma : 1; /* 1 = cannot do LBA48 DMA */
804 unsigned auto_poll : 1; /* supports nop auto-poll */ 802 unsigned auto_poll : 1; /* supports nop auto-poll */
@@ -1256,6 +1254,10 @@ enum {
1256 IDE_HFLAG_POST_SET_MODE = (1 << 8), 1254 IDE_HFLAG_POST_SET_MODE = (1 << 8),
1257 /* don't program host/device for the transfer mode ("smart" hosts) */ 1255 /* don't program host/device for the transfer mode ("smart" hosts) */
1258 IDE_HFLAG_NO_SET_MODE = (1 << 9), 1256 IDE_HFLAG_NO_SET_MODE = (1 << 9),
1257 /* trust BIOS for programming chipset/device for DMA */
1258 IDE_HFLAG_TRUST_BIOS_FOR_DMA = (1 << 10),
1259 /* host uses VDMA */
1260 IDE_HFLAG_VDMA = (1 << 11),
1259}; 1261};
1260 1262
1261typedef struct ide_pci_device_s { 1263typedef struct ide_pci_device_s {
@@ -1303,7 +1305,6 @@ static inline u8 ide_max_dma_mode(ide_drive_t *drive)
1303 return ide_find_dma_mode(drive, XFER_UDMA_6); 1305 return ide_find_dma_mode(drive, XFER_UDMA_6);
1304} 1306}
1305 1307
1306int ide_tune_dma(ide_drive_t *);
1307void ide_dma_off(ide_drive_t *); 1308void ide_dma_off(ide_drive_t *);
1308void ide_dma_verbose(ide_drive_t *); 1309void ide_dma_verbose(ide_drive_t *);
1309int ide_set_dma(ide_drive_t *); 1310int ide_set_dma(ide_drive_t *);
@@ -1330,7 +1331,6 @@ extern void ide_dma_timeout(ide_drive_t *);
1330#else 1331#else
1331static inline u8 ide_find_dma_mode(ide_drive_t *drive, u8 speed) { return 0; } 1332static inline u8 ide_find_dma_mode(ide_drive_t *drive, u8 speed) { return 0; }
1332static inline u8 ide_max_dma_mode(ide_drive_t *drive) { return 0; } 1333static inline u8 ide_max_dma_mode(ide_drive_t *drive) { return 0; }
1333static inline int ide_tune_dma(ide_drive_t *drive) { return 0; }
1334static inline void ide_dma_off(ide_drive_t *drive) { ; } 1334static inline void ide_dma_off(ide_drive_t *drive) { ; }
1335static inline void ide_dma_verbose(ide_drive_t *drive) { ; } 1335static inline void ide_dma_verbose(ide_drive_t *drive) { ; }
1336static inline int ide_set_dma(ide_drive_t *drive) { return 1; } 1336static inline int ide_set_dma(ide_drive_t *drive) { return 1; }
@@ -1380,7 +1380,6 @@ static inline void ide_set_hwifdata (ide_hwif_t * hwif, void *data)
1380extern char *ide_xfer_verbose(u8 xfer_rate); 1380extern char *ide_xfer_verbose(u8 xfer_rate);
1381extern void ide_toggle_bounce(ide_drive_t *drive, int on); 1381extern void ide_toggle_bounce(ide_drive_t *drive, int on);
1382extern int ide_set_xfer_rate(ide_drive_t *drive, u8 rate); 1382extern int ide_set_xfer_rate(ide_drive_t *drive, u8 rate);
1383int ide_use_fast_pio(ide_drive_t *);
1384 1383
1385static inline int ide_dev_has_iordy(struct hd_driveid *id) 1384static inline int ide_dev_has_iordy(struct hd_driveid *id)
1386{ 1385{