Commit Graph

44 Commits

Author SHA1 Message Date
Tejun Heo 1049cb4787 [PATCH] libata: add missing ->data_xfer for pdc_adma
pdc_adma use libata-core PIO path but were left out
during ->data_xfer conversion.  Initialize with proper callbacks.

This patch is against the current libata-dev#ALL.  Controllers which
implement their own PIO HSM (ahci and sil24) don't need ->data_xfer, so the
above two are the only drivers which were left out during conversion.

From: "Barry K. Nathan" <barryn@pobox.com>

Signed-off-by: Barry K. Nathan <barryn@pobox.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-06-11 10:21:13 -04:00
Tejun Heo ccf68c3405 [PATCH] libata-hp: hook warmplug
Hook transportt->user_scan() and hostt->slave_destroy().

Signed-off-by: Tejun Heo <htejun@gmail.com>
2006-05-31 18:28:09 +09:00
Jeff Garzik a890b15c09 Merge branch 'upstream' 2006-04-12 16:54:43 -04:00
Jeff Garzik 10a5fd5e6b Merge branch 'master'
Conflicts:

	drivers/scsi/libata-scsi.c
	include/linux/libata.h
2006-04-11 12:51:40 -04:00
Christoph Hellwig 9227c33de8 [PATCH] move ->eh_strategy_handler to the transport class
Overriding the whole EH code is a per-transport, not per-host thing.
Move ->eh_strategy_handler to the transport class, same as
->eh_timed_out.

Downside is that scsi_host_alloc can't check for the total lack of EH
anymore, but the transition period from old EH where we needed it is
long gone already.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-04-10 14:15:47 -04:00
Jeff Garzik 7819d64e31 Merge branch 'upstream' 2006-04-02 20:41:48 -04:00
Jeff Garzik af64371ada [libata] bump versions 2006-04-02 20:41:36 -04:00
Jeff Garzik 029f5468b5 Merge branch 'upstream'
Conflicts:

	drivers/scsi/libata-core.c
	drivers/scsi/pdc_adma.c
	drivers/scsi/sata_mv.c
	drivers/scsi/sata_nv.c
	drivers/scsi/sata_promise.c
	drivers/scsi/sata_qstor.c
	drivers/scsi/sata_sx4.c
	drivers/scsi/sata_vsc.c
	include/linux/libata.h
2006-04-02 10:30:40 -04:00
Tejun Heo 198e0fed9e [PATCH] libata: rename ATA_FLAG_PORT_DISABLED to ATA_FLAG_DISABLED
Rename ATA_FLAG_PORT_DISABLED to ATA_FLAG_DISABLED for consistency.
(ATA_FLAG_* are always about ports).

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-04-02 10:09:19 -04:00
Jeff Garzik 11ed56fb78 Merge branch 'upstream'
Conflicts:

	drivers/scsi/sata_vsc.c
2006-03-24 09:24:04 -05:00
Jeff Garzik f01c184569 Merge branch 'master' 2006-03-22 19:13:54 -05:00
Alan Cox db7f44d96e [PATCH] libata: make code actually compile with debugging on
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-03-21 21:21:32 -05:00
Tejun Heo 30afc84cf7 [SCSI] libata: implement minimal transport template for ->eh_timed_out
SCSI midlayer has moved hostt->eh_timed_out to transport template.  As
libata doesn't need full-blown transport support yet, implement
minimal transport for libata.  No transport class or whatsoever, just
empty transport template with ->eh_timed_out hook.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2006-03-21 13:07:05 -06:00
Jeff Garzik 3875e1945b Merge branch 'upstream' 2006-02-13 00:13:48 -05:00
Tejun Heo 49430f97dd [PATCH] libata: kill sht->max_sectors
The previous dev->max_sectors patch made sht->max_sectors meaningless.
Kill all initializations of sht->max_sectors.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2006-02-12 14:36:30 -05:00
Jeff Garzik ca7d5e42d7 Merge branch 'upstream' 2006-02-10 07:09:37 -05:00
Tejun Heo 35daeb8f9b [PATCH] libata: use ata_scsi_timed_out()
Make all libata low level drivers use ata_scsi_timed_out().

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2006-02-10 06:50:46 -05:00
Jeff Garzik b4d28889f7 Merge branch 'tmp' 2006-01-27 02:37:46 -05:00
Tejun Heo 9a3d9eb017 [PATCH] libata: return AC_ERR_* from issue functions
Return AC_ERR_* mask from issue fuctions instead of 0/-1.  This
enables things like failing a qc with AC_ERR_HSM when the device
doesn't set DRDY when the qc is about to be issued.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2006-01-26 22:36:27 -05:00
Jeff Garzik 701db69d66 Merge branch 'upstream' 2005-12-06 04:52:48 -05:00
Albert Lee a22e2eb071 [PATCH] libata: move err_mask to ata_queued_cmd
- remove err_mask from the parameter list of the complete functions
  - move err_mask to ata_queued_cmd
  - initialize qc->err_mask when needed
  - for each function call to ata_qc_complete(), replace the err_mask parameter with qc->err_mask.

Signed-off-by: Albert Lee <albertcc@tw.ibm.com>

===============
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-12-06 04:49:22 -05:00
Jeff Garzik f4256e301d Merge branch 'master' 2005-11-11 23:39:35 -05:00
Jeff Garzik 3b7d697dfb [libata] constify PCI ID table in several drivers 2005-11-10 11:04:11 -05:00
Jeff Garzik c7c6e9494c Merge branch 'upstream' 2005-11-09 01:20:26 -05:00
Jeff Garzik 193515d51c [libata] eliminate use of drivers/scsi/scsi.h compatibility header/defines 2005-11-07 00:59:37 -05:00
Jeff Garzik 8cedcfd43a Merge branch 'master' 2005-11-05 15:44:02 -05:00
Jeff Garzik 122401ce39 Merge branch 'master' 2005-10-30 20:25:28 -05:00
Jeff Garzik 95dbf5c4be Merge branch 'master' 2005-10-30 20:24:34 -05:00
Jeff Garzik a9524a76f7 [libata] use dev_printk() throughout drivers
A few drivers were not following the standard meme of printing out
their driver name and version at module load time; this is fixed
as well.
2005-10-30 14:39:11 -05:00
Jeff Garzik 054ee8fd39 Merge branch 'upstream' 2005-10-30 04:50:22 -05:00
Jeff Garzik a7dac447bb [libata] change ata_qc_complete() to take error mask as second arg
The second argument to ata_qc_complete() was being used for two
purposes: communicate the ATA Status register to the completion
function, and indicate an error.  On legacy PCI IDE hardware, the latter
is often implicit in the former.  On more modern hardware, the driver
often completely emulated a Status register value, passing ATA_ERR as an
indication that something went wrong.

Now that previous code changes have eliminated the need to use drv_stat
arg to communicate the ATA Status register value, we can convert it to a
mask of possible error classes.

This will lead to more flexible error handling in the future.
2005-10-30 04:44:42 -05:00
Jeff Garzik 94ec1ef1cf [libata pdc_adma] fix for new irq-driven PIO code 2005-10-30 02:15:08 -05:00
Jeff Garzik fce45c1c8a Merge branch 'upstream' 2005-10-30 01:58:41 -05:00
Jeff Garzik b0c4e148bd Merge branch 'master' 2005-10-29 17:49:12 -04:00
Jeff Garzik ac19bff25b [libata] ensure ->tf_read() hook reads Status and Error registers
We want ->tf_read() to get a complete snapshot of all taskfile
registers, without requiring the callers to manually call
ata_chk_status() and ata_chk_err() themselves.

This also fixes a minor bug in sata_vsc where the lower bits of the
feature register were incorrectly placed in the HOB (high order bits)
portion of struct ata_taskfile.
2005-10-29 13:58:21 -04:00
Jeff Garzik 5615ca7906 Merge branch 'upstream' 2005-10-28 21:32:01 -04:00
Jeff Garzik a21a84a375 [libata pdc_adma] minor fixes and cleanups
Changes mostly from Mark Lord.

- fix bugs in probe-time error handling
- only complete qc if not NULL
- check port-level polling flags
2005-10-28 15:43:16 -04:00
Jeff Garzik 15dbb5a3f9 Merge branch 'master' 2005-10-28 12:30:16 -04:00
Jeff Garzik 7a9f8f93d2 Merge branch 'master' 2005-10-28 12:29:23 -04:00
Jeff Garzik 057ace5e79 libata: const-ification bombing run
Enforce access rules where appropriate.

If the compiler is smart enough, this may buy us an optimization or two
as a side effect.
2005-10-22 14:27:05 -04:00
Jeff Garzik 972c26bdd6 libata: add ata_sg_is_last() helper, use it in several drivers 2005-10-18 22:14:54 -04:00
Jeff Garzik be697c3f13 [libata pdc_adma] update for removal of ATA_FLAG_NOINTR 2005-10-18 21:27:34 -04:00
Jeff Garzik 68399bb508 [libata pdc_adma] license update, minor cleanup
from me: change from OSL+GPL to GPL (with approval)

from Mark: Gets rid of an unneeded control bit, slightly increasing
throughput.
2005-10-11 01:44:14 -04:00
Mark Lord edea3ab58f libata: add new driver pdc_adma for PDC ADMA ATA cards 2005-10-10 17:53:58 -04:00