11 Apr, 2006
1 commit
-
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
Signed-off-by: Jeff Garzik
31 Mar, 2006
1 commit
-
From: Anatoli Antonovitch
Signed-off-by: Felix Kuehling
Signed-off-by: Jeff Garzik
23 Mar, 2006
1 commit
-
Now that libata is smart enought to handle both soft and hard resets,
add softreset method.Signed-off-by: Tejun Heo
Signed-off-by: Jeff Garzik
22 Mar, 2006
1 commit
-
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
Signed-off-by: James Bottomley
12 Mar, 2006
3 commits
-
Turn on AHCI_CMD_PREFETCH for PACKET commands. This hints the
controller that it can prefetch the CDB and the PRD entries. This
patch is originally from Jeff Garzik.Signed-off-by: Tejun Heo
Signed-off-by: Jeff Garzik -
Fix NULL pointer dereference detected by the Coverity checker. Kill
dev -> pdev -> dev conversion while at it.Signed-off-by: Tejun Heo
Cc: Adrian Bunk
Signed-off-by: Jeff Garzik
13 Feb, 2006
2 commits
-
The previous dev->max_sectors patch made sht->max_sectors meaningless.
Kill all initializations of sht->max_sectors.Signed-off-by: Tejun Heo
Signed-off-by: Jeff Garzik -
cdb_len is per-device property. Sharing cdb_len on ap results in
inaccurate configuration on revalidation and hotplugging. This patch
makes cdb_len per-device.Signed-off-by: Tejun Heo
Signed-off-by: Jeff Garzik
12 Feb, 2006
3 commits
-
This patch converts all assert(xxx)'s in low-level drivers to
WARN_ON(!xxx)'s. After this patch, there is no in-kernel user of the
libata assert() macro.Signed-off-by: Tejun Heo
Signed-off-by: Jeff Garzik -
Convert ahci ->phy_reset to new reset mechanism.
Signed-off-by: Tejun Heo
Signed-off-by: Jeff Garzik -
Make ahci_fill_cmd_slot() take struct ahci_port_priv *pp instead of
struct ata_port *ap as suggested by Jeff Garzik.Signed-off-by: Tejun Heo
Signed-off-by: Jeff Garzik
10 Feb, 2006
3 commits
-
Separate out ahci_fill_cmd_slot() from ahci_qc_prep().
ahci_fill_cmd_slot() can later be used to issue non-standard commands.
(e.g. softreset)Signed-off-by: Tejun Heo
Signed-off-by: Jeff Garzik -
->eng_timeout cannot be invoked with NULL qc anymore. Add an
assertion in ata_scsi_error() and kill NULL qc handling from all
->eng_timeout callbacks.Signed-off-by: Tejun Heo
Signed-off-by: Jeff Garzik -
Make all libata low level drivers use ata_scsi_timed_out().
Signed-off-by: Tejun Heo
Signed-off-by: Jeff Garzik
30 Jan, 2006
2 commits
29 Jan, 2006
2 commits
-
Isolate some PCI config register bitbanging to Intel hardware, as it
should have been all along.Add support for JMicron JMB360.
27 Jan, 2006
6 commits
-
Add constants needed to perform SRST. This is preparation for adding
softreset method.Signed-off-by: Tejun Heo
Signed-off-by: Jeff Garzik -
AHCI spec mandates engine to be stopped during hard resets.
Signed-off-by: Tejun Heo
Signed-off-by: Jeff Garzik -
Implement ata_eh_qc_complete/retry() using scsi_eh_finish_cmd() and
scsi_eh_flush_done_q(). This removes all eh scsicmd finish hacks from
low level drivers.This change was first suggested by Jeff Garzik.
Signed-off-by: Tejun Heo
Signed-off-by: Jeff Garzik -
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
Signed-off-by: Jeff Garzik -
Add detailed AC_ERR_* flags and use them. Long-term goal is to
describe all errors with err_mask and tf combination (tf for failed
sector information, etc...). After proper error diagnosis is
implemented, sense data should also be generated from err_mask instead
of directly from hardware tf registers as it is currently.Signed-off-by: Tejun Heo
Signed-off-by: Jeff Garzik -
In ahci_host_intr err_mask is determined from IRQ status but never
used. This patch sets qc->err_mask to the determined err_mask.Signed-off-by: Tejun Heo
Signed-off-by: Jeff Garzik
18 Jan, 2006
2 commits
-
Separate out ahci_dev_classify().
Signed-off-by: Tejun Heo
Signed-off-by: Jeff Garzik -
Separate out ahci_stop/start_engine().
Signed-off-by: Tejun Heo
Signed-off-by: Jeff Garzik
17 Jan, 2006
1 commit
-
This patch adds the Intel ICH8 DID's to the ahci.c file for AHCI mode
SATA support.Signed-off-by: Jason Gaston
Signed-off-by: Jeff Garzik
06 Jan, 2006
1 commit
-
Reflect changes in SCSI midlayer and updated to use new
ordered request implementationSigned-off-by: Tejun Heo
Signed-off-by: Jens Axboe
06 Dec, 2005
1 commit
-
- 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
===============
Signed-off-by: Jeff Garzik
01 Dec, 2005
1 commit
-
Hi,
the patch below marks several libata (and libata-driver) structures
const so that they end up in the .rodata segment and don't false-share
cachelines with things that get dirtied often.Signed-off-by: Arjan van de Ven
Signed-off-by: Jeff Garzik
17 Nov, 2005
1 commit
16 Nov, 2005
2 commits
-
ATA devices don't generate many errors, so the preferred method is to
printk() when they occur.ATAPI devices generate tons of exceptions during the normal course
of operation, so this change skips logging the most common class of
errors. -
- Fix a regression in command completion, which prevented
the restart of the DMA engine after the device throws
an error.
- Pack more hardware info into the port-reset error message.
- Promote "welcome to our timeout" message from debug msg
to normal printk.
15 Nov, 2005
1 commit
-
Needed to get ATAPI working.
- dump hardware error bits, if hardware signals an error
- only reset hardware during timeout if a command was active
- call ata_qc_complete() with a fine-grained error mask.
Needed so that atapi_qc_complete() can distinguish between
device errors and other errors.
12 Nov, 2005
2 commits
-
Although according to the documentation this largely only affects
desktop LED control, let's make sure we set the ATAPI bit when we
have an ATAPI device attached to the port. -
Don't directly reference qc->n_elem, as that might cause an off-by-one
error for misaligned (padded) ATAPI transfers.
11 Nov, 2005
1 commit
07 Nov, 2005
1 commit
05 Nov, 2005
1 commit
-
Use ata_pad_{alloc,free} in two drivers, to factor out common code.
Add ata_pad_{alloc,free} to two other drivers, which needed the padding
but had not been updated.