ChangeSet@1.1922, 2004-04-26 02:09:12-04:00, jgarzik@redhat.com [libata promise] make sure our schedule_timeout(N) are never with N==0 Make sure we delay for a minimum desired length of time. ChangeSet@1.1921, 2004-04-26 01:36:12-04:00, jgarzik@redhat.com [libata] replace per-command semaphore with optional completion The semaphore was initialized and up'd for each command, but nobody was listening. Replace this with a completion, which may or may not be present. ChangeSet@1.1920, 2004-04-26 01:15:11-04:00, jgarzik@redhat.com [libata] increase max-sectors limit for modern drives This is the much-discussed "speed up SATA" patch. It limits requests to 1MB as discussed, rather than the hardware maximum (32MB). As soon as Jens Axboe's patch to dynamically determining request size is merged, max_sectors becomes what it properly should be -- a description of the absolute hardware maximum. ChangeSet@1.1919, 2004-04-26 00:54:47-04:00, jgarzik@redhat.com [libata] work queueing cleanups and fixes Make sure to initialize PIO data xfer state. Use queue_delayed_work() rather than manually calling schedule_timeout(), then queue_work(), ourselves. ChangeSet@1.1918, 2004-04-26 00:17:47-04:00, jgarzik@redhat.com [libata] some work on the ATAPI path Remove a lot of redundant code in ATAPI packet submission. ATAPI is still disabled, it doesn't work yet. ChangeSet@1.1917, 2004-04-25 23:54:36-04:00, jgarzik@redhat.com [libata] internal cleanup: kill ata_pio_start Integrate it into its caller. ChangeSet@1.1916, 2004-04-25 23:13:39-04:00, jgarzik@redhat.com [libata] make ata_wq workqueue local to libata-core module Now that libata-scsi module no longer calls queue_work() directly, we can localize the use of ata_wq. ChangeSet@1.1915, 2004-04-25 23:05:58-04:00, jgarzik@redhat.com [libata] move ATAPI command initiation code from libata-scsi to libata-core ChangeSet@1.1914, 2004-04-25 21:47:36-04:00, jgarzik@redhat.com [libata] move probe execution from katad thread to workqueue thread This allows us to kill the katad thread itself, and several thread-related variables in struct ata_port. ChangeSet@1.1913, 2004-04-25 20:18:57-04:00, jgarzik@redhat.com [libata] move PIO data xfer from katad thread to workqueue thread ChangeSet@1.1912, 2004-04-25 19:28:29-04:00, jgarzik@redhat.com [libata] move ATAPI startup from katad thread to workqueue thread libata creates one thread per ata_port structure. This is inadequate for our needs, and also cumbersome to maintain, now that workqueues and Rusty's thread work is available. This patch begins to move libata away from doing its own per-port thread, by moving the ATAPI command initiation code to work under the workqueue system. This patch also creates a private workqueue, global to all of libata. ChangeSet@1.1911, 2004-04-24 22:15:40-04:00, jeremy@sgi.com [PATCH] sata_vsc initialization fix ChangeSet@1.1910, 2004-04-24 14:12:03-04:00, jgarzik@redhat.com [libata] clean up taskfile submission to hardware When writing taskfile (an ATA command) to the controller, the exact setup of the taskfile is dependent on the taskfile "protocol": PIO, PIO Multiple, DMA, Non-data, etc. So, we separate out the submission of the taskfile to hardware into a separate function ata_qc_issue_prot(), which will later be the home for more code. Also, remove some dead code (#if 0'd). ChangeSet@1.1909, 2004-04-24 13:26:06-04:00, jgarzik@redhat.com [libata] add ata_tf_{to,from}_fis helpers ChangeSet@1.1896.3.5, 2004-04-22 03:43:42-04:00, jgarzik@redhat.com [libata] Promise driver split part 4: common header ChangeSet@1.1896.3.4, 2004-04-22 03:37:49-04:00, jgarzik@redhat.com [libata] Promise driver split part 3: remove TX2/4 code from sata_sx4 ChangeSet@1.1896.3.3, 2004-04-22 03:26:15-04:00, jgarzik@redhat.com [libata] Promise driver split part 2: remove SX4 code from sata_promise ChangeSet@1.1896.3.2, 2004-04-22 03:11:44-04:00, jgarzik@redhat.com [libata] Promise driver split part 1: clone to sx4 Clone sata_promise to sata_sx4. ChangeSet@1.1896.3.1, 2004-04-22 00:51:41-04:00, jgarzik@redhat.com [libata sata_sis] add new PCI id Also remove constant from linux/pci_ids.h.