summaryrefslogtreecommitdiff
path: root/drivers/scsi/sata_promise.c
AgeCommit message (Collapse)AuthorFilesLines
2006-03-21[SCSI] libata: implement minimal transport template for ->eh_timed_outTejun Heo1-1/+0
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-04[PATCH] sata_promise: Support FastTrak TX4300/TX4310Daniel Drake1-0/+2
This patch adds support for the Promise FastTrak TX4300/TX4310 4-port PCI SATA controllers based on the PDC40719 chip. Signed-off-by: Daniel Drake <dsd@gentoo.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-02-12[PATCH] libata: kill sht->max_sectorsTejun Heo1-1/+0
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-10[PATCH] libata: kill NULL qc handling from ->eng_timeout callbacksTejun Heo1-8/+1
->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 <htejun@gmail.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2006-02-10[PATCH] libata: use ata_scsi_timed_out()Tejun Heo1-0/+1
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-01-28[libata sata_promise] add correct read/write of hotplug registers for SATAII ↵Luke Kosewski1-22/+82
devices This patch adds support for correctly masking out and knowing about hotplug events on Promise SATAII150 Tx4/Tx2 Plus controllers. Also, a kmalloc->kzalloc cleanup. Signed-off-by: Luke Kosewski <lkosewsk@gmail.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2006-01-26[PATCH] libata: implement and apply ata_eh_qc_complete/retry()Tejun Heo1-10/+2
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 <htejun@gmail.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2006-01-26[PATCH] libata: return AC_ERR_* from issue functionsTejun Heo1-2/+2
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-17[libata] sata_promise: add pci idYusuf Iskenderoglu1-0/+16
2006-01-06[BLOCK] update libata to use new blk_ordered for barriersTejun Heo1-1/+0
Reflect changes in SCSI midlayer and updated to use new ordered request implementation Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jens Axboe <axboe@suse.de>
2005-12-13Merge branch 'upstream-fixes'Jeff Garzik1-6/+6
2005-12-13[libata] mark certain hardware (or drivers) with a no-atapi flagJeff Garzik1-6/+6
Some hardware does not support the PACKET command at all. Other hardware supports ATAPI, but the driver does something nasty such as calling BUG() when an ATAPI command is issued. For these such cases, we mark them with a new flag, ATA_FLAG_NO_ATAPI. Initial version contributed by Ben Collins.
2005-12-06[PATCH] libata: move err_mask to ata_queued_cmdAlbert Lee1-6/+8
- 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-01[PATCH] mark several libata datastructures constArjan van de Ven1-1/+1
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 <arjan@infradead.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-11-30[libata sata_promise] minor whitespace cleanupJeff Garzik1-2/+2
2005-11-16[libata] bump versionsJeff Garzik1-1/+1
2005-11-10[libata] constify PCI ID table in several driversJeff Garzik1-1/+1
2005-11-07[libata] eliminate use of drivers/scsi/scsi.h compatibility header/definesJeff Garzik1-2/+2
2005-10-30[libata] use dev_printk() throughout driversJeff Garzik1-1/+2
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[libata] change ata_qc_complete() to take error mask as second argJeff Garzik1-9/+7
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-28[PATCH] libata: add support for Promise SATA 300 TX2plus PDC40775Ed Kear1-0/+2
I'm using this card in a RAID1 with 2 new SATA drives with no problems. Card - SATA 300 TX2plus PDC40775 (3d73) Signed-off-by: Ed Kear <ed@kear.net> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-10-28[libata sata_promise] add pci idJeff Garzik1-0/+2
Contributed by Daniel Mueller @ Siemens AG.
2005-10-22libata: const-ification bombing runJeff Garzik1-6/+6
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-21[PATCH] iomem annotations (sata_promise)Al Viro1-4/+4
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-09-28[PATCH] libata: indent and whitespace changeAlbert Lee1-3/+3
Signed-off-by: Albert Lee <albertcc@tw.ibm.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-08-30[libata] update several drivers to use pci_iomap()/pci_iounmap()Jeff Garzik1-4/+4
2005-08-30[libata] __iomem annotations for various driversJeff Garzik1-6/+6
2005-08-29Merge /spare/repo/linux-2.6/Jeff Garzik1-15/+30
2005-08-29Merge /spare/repo/linux-2.6/Jeff Garzik1-1/+11
2005-08-29[libata sata_promise] Do not attempt to use SATA phy on PATA controllersJeff Garzik1-7/+43
2005-08-28[libata] license change, other bitsJeff Garzik1-14/+19
- changes license of all code from OSL+GPL to plain ole GPL - except for NVIDIA, who hasn't yet responded about sata_nv - copyright holders were already contacted privately - adds info in each driver about where hardware/protocol docs may be obtained - where I have made major contributions, updated copyright dates
2005-08-25libata: fix EH lockingJeff Garzik1-0/+5
Wrap ata_qc_complete() calls in EH context in spinlocks, to prevent races (mainly in ATAPI code paths).
2005-08-23/spare/repo/libata-dev branch 'upstream-fixes'Jeff Garzik1-1/+1
2005-08-23libata: release prep (bump versions, etc.)Jeff Garzik1-1/+1
- bump versions where necessary - remove two duplicated+outdated doc comments - add MODULE_VERSION() to AHCI driver
2005-08-23[PATCH] fix atapi_packet_task vs. intr race (take 2)Tejun Heo1-1/+2
Interrupts from devices sharing the same IRQ could cause ata_host_intr to finish commands being processed by atapi_packet_task if the commands are using ATA_PROT_ATAPI_NODATA or ATA_PROT_ATAPI_DMA protocol. This is because libata interrupt handler is unaware that interrupts are not expected during that period. This patch adds ATA_FLAG_NOINTR flag to tell the interrupt handler that we're not expecting interrupts. Note that once proper HSM is implemented for interrupt-driven PIO, this should be merged into it and this flag will be removed. ahci.c is a different kind of beast, so it's left alone. * The following drivers use ata_qc_issue_prot and ata_interrupt, so changes in libata core will do. ata_piix sata_sil sata_svw sata_via sata_sis sata_uli * The following drivers use ata_qc_issue_prot and custom intr handler. They need this change to work correctly. sata_nv sata_vsc * The following drivers use custom issue function and intr handler. Currently all custom issue functions don't support ATAPI, so this change is irrelevant, updated for consistency and to avoid later mistakes. sata_promise sata_qstor sata_sx4 Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-08-23[PATCH] sata_promise: Add PDC40519 idDaniel Drake1-0/+2
The Promise TX4200 is a 4-port SATA controller based on the PDC40519 chip. It meets the description of the 20319, so just a simple ID needs to be added to support this hardware. Thanks to Martin Povolný for testing. Signed-off-by: Daniel Drake <dsd@gentoo.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-08-23[PATCH] sata_promise: Add PDC40718 idOtto Meier1-0/+2
Otto Meier recently submitted a patch to support the PDC40718 chip (marketed as SATA300 TX4, a 4-port SATA controller). Signed-off-by: Otto Meier <gf435@gmx.net> Signed-off-by: Daniel Drake <dsd@gentoo.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2005-06-04Automatic merge of /spare/repo/linux-2.6/.git branch HEAD1-0/+3
2005-05-26libata: Fix use-after-iounmapJeff Garzik1-0/+1
Jens Axboe pointed out that the iounmap() call in libata was occurring too early, and some drivers (ahci, probably others) were using ioremap'd memory after it had been unmapped. The patch should address that problem by way of improving the libata driver API: * move ->host_stop() call after all ->port_stop() calls have occurred. * create default helper function ata_host_stop(), and move iounmap() call there. * add ->host_stop_prewalk() hook, use it in sata_qstor.c (hi Mark). sata_qstor appears to require the host-stop-before-port-stop ordering that existed prior to applying the attached patch.
2005-05-25[PATCH] sata_promise: add PCI ID for FastTrak TX2200 2-portsFrancisco Javier1-0/+2
2005-05-12[libata sata_promise] pdc20619 (PATA) supportTobias Lorenz1-1/+25
2005-04-16Linux-2.6.12-rc2Linus Torvalds1-0/+682
Initial git repository build. I'm not bothering with the full history, even though we have it. We can create a separate "historical" git archive of that later if we want to, and in the meantime it's about 3.2GB when imported into git - space that would just make the early git days unnecessarily complicated, when we don't have a lot of good infrastructure for it. Let it rip!