aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/libata.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/libata.h')
-rw-r--r--include/linux/libata.h61
1 files changed, 32 insertions, 29 deletions
diff --git a/include/linux/libata.h b/include/linux/libata.h
index e20b0bfbd5f2..b7488a31e320 100644
--- a/include/linux/libata.h
+++ b/include/linux/libata.h
@@ -120,9 +120,10 @@ enum {
120 ATA_SHT_USE_CLUSTERING = 1, 120 ATA_SHT_USE_CLUSTERING = 1,
121 121
122 /* struct ata_device stuff */ 122 /* struct ata_device stuff */
123 ATA_DFLAG_LBA48 = (1 << 0), /* device supports LBA48 */ 123 ATA_DFLAG_LBA = (1 << 0), /* device supports LBA */
124 ATA_DFLAG_PIO = (1 << 1), /* device currently in PIO mode */ 124 ATA_DFLAG_LBA48 = (1 << 1), /* device supports LBA48 */
125 ATA_DFLAG_LBA = (1 << 2), /* device supports LBA */ 125
126 ATA_DFLAG_PIO = (1 << 8), /* device currently in PIO mode */
126 127
127 ATA_DEV_UNKNOWN = 0, /* unknown device */ 128 ATA_DEV_UNKNOWN = 0, /* unknown device */
128 ATA_DEV_ATA = 1, /* ATA device */ 129 ATA_DEV_ATA = 1, /* ATA device */
@@ -132,32 +133,34 @@ enum {
132 ATA_DEV_NONE = 5, /* no device */ 133 ATA_DEV_NONE = 5, /* no device */
133 134
134 /* struct ata_port flags */ 135 /* struct ata_port flags */
135 ATA_FLAG_SLAVE_POSS = (1 << 1), /* host supports slave dev */ 136 ATA_FLAG_SLAVE_POSS = (1 << 0), /* host supports slave dev */
136 /* (doesn't imply presence) */ 137 /* (doesn't imply presence) */
137 ATA_FLAG_PORT_DISABLED = (1 << 2), /* port is disabled, ignore it */ 138 ATA_FLAG_SATA = (1 << 1),
138 ATA_FLAG_SATA = (1 << 3), 139 ATA_FLAG_NO_LEGACY = (1 << 2), /* no legacy mode check */
139 ATA_FLAG_NO_LEGACY = (1 << 4), /* no legacy mode check */ 140 ATA_FLAG_MMIO = (1 << 3), /* use MMIO, not PIO */
140 ATA_FLAG_SRST = (1 << 5), /* (obsolete) use ATA SRST, not E.D.D. */ 141 ATA_FLAG_SRST = (1 << 4), /* (obsolete) use ATA SRST, not E.D.D. */
141 ATA_FLAG_MMIO = (1 << 6), /* use MMIO, not PIO */ 142 ATA_FLAG_SATA_RESET = (1 << 5), /* (obsolete) use COMRESET */
142 ATA_FLAG_SATA_RESET = (1 << 7), /* (obsolete) use COMRESET */ 143 ATA_FLAG_NO_ATAPI = (1 << 6), /* No ATAPI support */
143 ATA_FLAG_PIO_DMA = (1 << 8), /* PIO cmds via DMA */ 144 ATA_FLAG_PIO_DMA = (1 << 7), /* PIO cmds via DMA */
144 ATA_FLAG_NOINTR = (1 << 9), /* FIXME: Remove this once 145 ATA_FLAG_PIO_LBA48 = (1 << 8), /* Host DMA engine is LBA28 only */
145 * proper HSM is in place. */ 146 ATA_FLAG_IRQ_MASK = (1 << 9), /* Mask IRQ in PIO xfers */
146 ATA_FLAG_DEBUGMSG = (1 << 10), 147
147 ATA_FLAG_NO_ATAPI = (1 << 11), /* No ATAPI support */ 148 ATA_FLAG_NOINTR = (1 << 16), /* FIXME: Remove this once
148 149 * proper HSM is in place. */
149 ATA_FLAG_SUSPENDED = (1 << 12), /* port is suspended */ 150 ATA_FLAG_DEBUGMSG = (1 << 17),
150 151 ATA_FLAG_FLUSH_PORT_TASK = (1 << 18), /* flush port task */
151 ATA_FLAG_PIO_LBA48 = (1 << 13), /* Host DMA engine is LBA28 only */ 152
152 ATA_FLAG_IRQ_MASK = (1 << 14), /* Mask IRQ in PIO xfers */ 153 ATA_FLAG_PORT_DISABLED = (1 << 19), /* port is disabled, ignore it */
153 154 ATA_FLAG_SUSPENDED = (1 << 20), /* port is suspended */
154 ATA_FLAG_FLUSH_PORT_TASK = (1 << 15), /* Flush port task */ 155
155 156 /* bits 24:31 of ap->flags are reserved for LLDD specific flags */
156 ATA_QCFLAG_ACTIVE = (1 << 1), /* cmd not yet ack'd to scsi lyer */ 157
157 ATA_QCFLAG_SG = (1 << 3), /* have s/g table? */ 158 /* struct ata_queued_cmd flags */
158 ATA_QCFLAG_SINGLE = (1 << 4), /* no s/g, just a single buffer */ 159 ATA_QCFLAG_ACTIVE = (1 << 0), /* cmd not yet ack'd to scsi lyer */
160 ATA_QCFLAG_SG = (1 << 1), /* have s/g table? */
161 ATA_QCFLAG_SINGLE = (1 << 2), /* no s/g, just a single buffer */
159 ATA_QCFLAG_DMAMAP = ATA_QCFLAG_SG | ATA_QCFLAG_SINGLE, 162 ATA_QCFLAG_DMAMAP = ATA_QCFLAG_SG | ATA_QCFLAG_SINGLE,
160 ATA_QCFLAG_EH_SCHEDULED = (1 << 5), /* EH scheduled */ 163 ATA_QCFLAG_EH_SCHEDULED = (1 << 3), /* EH scheduled */
161 164
162 /* host set flags */ 165 /* host set flags */
163 ATA_HOST_SIMPLEX = (1 << 0), /* Host is simplex, one DMA channel per host_set only */ 166 ATA_HOST_SIMPLEX = (1 << 0), /* Host is simplex, one DMA channel per host_set only */
@@ -206,8 +209,8 @@ enum {
206 /* size of buffer to pad xfers ending on unaligned boundaries */ 209 /* size of buffer to pad xfers ending on unaligned boundaries */
207 ATA_DMA_PAD_SZ = 4, 210 ATA_DMA_PAD_SZ = 4,
208 ATA_DMA_PAD_BUF_SZ = ATA_DMA_PAD_SZ * ATA_MAX_QUEUE, 211 ATA_DMA_PAD_BUF_SZ = ATA_DMA_PAD_SZ * ATA_MAX_QUEUE,
209 212
210 /* Masks for port functions */ 213 /* masks for port functions */
211 ATA_PORT_PRIMARY = (1 << 0), 214 ATA_PORT_PRIMARY = (1 << 0),
212 ATA_PORT_SECONDARY = (1 << 1), 215 ATA_PORT_SECONDARY = (1 << 1),
213 216