aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/libata.h
diff options
context:
space:
mode:
authorJeff Garzik <jgarzik@pobox.com>2005-08-29 19:24:43 -0400
committerJeff Garzik <jgarzik@pobox.com>2005-08-29 19:24:43 -0400
commit76b2bf9b4dee2fb32ef17f5c84a99ce481a14be2 (patch)
tree49cd36d6e980044c2a88f2c14cdc9259e0f0f1b4 /include/linux/libata.h
parent2fca877b68b2b4fc5b94277858a1bedd46017cde (diff)
parent8f3d17fb7bcb7c255197d11469fb5e9695c9d2f4 (diff)
Merge libata branch 'chs-support' to latest upstream kernel.
Diffstat (limited to 'include/linux/libata.h')
-rw-r--r--include/linux/libata.h49
1 files changed, 27 insertions, 22 deletions
diff --git a/include/linux/libata.h b/include/linux/libata.h
index 973090be7fc4..7b2116ddd26a 100644
--- a/include/linux/libata.h
+++ b/include/linux/libata.h
@@ -1,23 +1,26 @@
1/* 1/*
2 Copyright 2003-2004 Red Hat, Inc. All rights reserved. 2 * Copyright 2003-2005 Red Hat, Inc. All rights reserved.
3 Copyright 2003-2004 Jeff Garzik 3 * Copyright 2003-2005 Jeff Garzik
4 4 *
5 The contents of this file are subject to the Open 5 *
6 Software License version 1.1 that can be found at 6 * This program is free software; you can redistribute it and/or modify
7 http://www.opensource.org/licenses/osl-1.1.txt and is included herein 7 * it under the terms of the GNU General Public License as published by
8 by reference. 8 * the Free Software Foundation; either version 2, or (at your option)
9 9 * any later version.
10 Alternatively, the contents of this file may be used under the terms 10 *
11 of the GNU General Public License version 2 (the "GPL") as distributed 11 * This program is distributed in the hope that it will be useful,
12 in the kernel source COPYING file, in which case the provisions of 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 the GPL are applicable instead of the above. If you wish to allow 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 the use of your version of this file only under the terms of the 14 * GNU General Public License for more details.
15 GPL and not to allow others to use your version of this file under 15 *
16 the OSL, indicate your decision by deleting the provisions above and 16 * You should have received a copy of the GNU General Public License
17 replace them with the notice and other provisions required by the GPL. 17 * along with this program; see the file COPYING. If not, write to
18 If you do not delete the provisions above, a recipient may use your 18 * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
19 version of this file under either the OSL or the GPL. 19 *
20 20 *
21 * libata documentation is available via 'make {ps|pdf}docs',
22 * as Documentation/DocBook/libata.*
23 *
21 */ 24 */
22 25
23#ifndef __LINUX_LIBATA_H__ 26#ifndef __LINUX_LIBATA_H__
@@ -114,6 +117,8 @@ enum {
114 ATA_FLAG_MMIO = (1 << 6), /* use MMIO, not PIO */ 117 ATA_FLAG_MMIO = (1 << 6), /* use MMIO, not PIO */
115 ATA_FLAG_SATA_RESET = (1 << 7), /* use COMRESET */ 118 ATA_FLAG_SATA_RESET = (1 << 7), /* use COMRESET */
116 ATA_FLAG_PIO_DMA = (1 << 8), /* PIO cmds via DMA */ 119 ATA_FLAG_PIO_DMA = (1 << 8), /* PIO cmds via DMA */
120 ATA_FLAG_NOINTR = (1 << 9), /* FIXME: Remove this once
121 * proper HSM is in place. */
117 122
118 ATA_QCFLAG_ACTIVE = (1 << 1), /* cmd not yet ack'd to scsi lyer */ 123 ATA_QCFLAG_ACTIVE = (1 << 1), /* cmd not yet ack'd to scsi lyer */
119 ATA_QCFLAG_SG = (1 << 3), /* have s/g table? */ 124 ATA_QCFLAG_SG = (1 << 3), /* have s/g table? */
@@ -369,7 +374,7 @@ struct ata_port_operations {
369 374
370 void (*host_stop) (struct ata_host_set *host_set); 375 void (*host_stop) (struct ata_host_set *host_set);
371 376
372 void (*bmdma_stop) (struct ata_port *ap); 377 void (*bmdma_stop) (struct ata_queued_cmd *qc);
373 u8 (*bmdma_status) (struct ata_port *ap); 378 u8 (*bmdma_status) (struct ata_port *ap);
374}; 379};
375 380
@@ -430,7 +435,7 @@ extern void ata_dev_id_string(u16 *id, unsigned char *s,
430extern void ata_dev_config(struct ata_port *ap, unsigned int i); 435extern void ata_dev_config(struct ata_port *ap, unsigned int i);
431extern void ata_bmdma_setup (struct ata_queued_cmd *qc); 436extern void ata_bmdma_setup (struct ata_queued_cmd *qc);
432extern void ata_bmdma_start (struct ata_queued_cmd *qc); 437extern void ata_bmdma_start (struct ata_queued_cmd *qc);
433extern void ata_bmdma_stop(struct ata_port *ap); 438extern void ata_bmdma_stop(struct ata_queued_cmd *qc);
434extern u8 ata_bmdma_status(struct ata_port *ap); 439extern u8 ata_bmdma_status(struct ata_port *ap);
435extern void ata_bmdma_irq_clear(struct ata_port *ap); 440extern void ata_bmdma_irq_clear(struct ata_port *ap);
436extern void ata_qc_complete(struct ata_queued_cmd *qc, u8 drv_stat); 441extern void ata_qc_complete(struct ata_queued_cmd *qc, u8 drv_stat);
@@ -650,7 +655,7 @@ static inline void scr_write(struct ata_port *ap, unsigned int reg, u32 val)
650 ap->ops->scr_write(ap, reg, val); 655 ap->ops->scr_write(ap, reg, val);
651} 656}
652 657
653static inline void scr_write_flush(struct ata_port *ap, unsigned int reg, 658static inline void scr_write_flush(struct ata_port *ap, unsigned int reg,
654 u32 val) 659 u32 val)
655{ 660{
656 ap->ops->scr_write(ap, reg, val); 661 ap->ops->scr_write(ap, reg, val);