summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'tj-upstream-pci_register_driver' of ↵Jeff Garzik2006-08-1015-16/+16
|\ | | | | | | git://htj.dyndns.org/libata-tj into upstream
| * [PATCH] libata: replace pci_module_init() with pci_register_driver()Pavel Roskin2006-08-1015-16/+16
| | | | | | | | | | | | | | Replace pci_module_init() with pci_register_driver(). Signed-off-by: Pavel Roskin <proski@gnu.org> Signed-off-by: Tejun Heo <htejun@gmail.com>
* | Merge branch 'upstream-fixes' into upstreamJeff Garzik2006-08-101-1/+2
|\ \
| * | [PATCH] libata: Use ATA_FLAG_PIO_POLLING for pdc_admaAlbert Lee2006-08-101-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | pdc_adma was overlooked and broken by the irq-pio patch: Only HSM_ST_LAST interrupts should be delivered to this LLDD. Adding ATA_FLAG_PIO_POLLING to pdc_adma fixes the problem (temporarily), before we convert the irq handler of pdc_adma to handle all interrupts. Signed-off-by: Albert Lee <albertcc@tw.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | [ATA] Increase lba48 max-sectors from 200 to 256.Jeff Garzik2006-08-102-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Also, moved ATA_MAX_SECTORS and ATA_MAX_SECTORS_LBA48 from linux/libata.h to linux/ata.h, now that they truly reflect the standard (well... mostly; note TODO comment). This changes the performance profile (and potential bug profile) for a bunch of drivers, so be wary.
* | | Merge branch 'sii-m15w' into upstreamJeff Garzik2006-08-101-4/+0
|\ \ \ | |_|/ |/| |
| * | [PATCH] sata_sil: remove unaffected drives from m15w blacklistTejun Heo2006-07-161-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | m15w blacklist overgrew by attributing unrelated problems to m15w including R_ERR on DMA activate FIS errata. This patch shrinks sata_sil m15w blacklist such that it's as reported by Silicon Image. Signed-off-by: Tejun Heo <htejun@gmail.com> Cc: Carlos Pardo <Carlos.Pardo@siliconimage.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | [PATCH] libata: kill unused hard_port_no and legacy_modeTejun Heo2006-08-102-4/+0
| | | | | | | | | | | | | | | | | | Kill unused probe_ent/ap->hard_port_no and probe_ent->legacy_mode. Signed-off-by: Tejun Heo <htejun@gmail.com>
* | | [PATCH] libata: replace ap->hard_port_no with ap->port_noTejun Heo2006-08-101-8/+8
| | | | | | | | | | | | | | | | | | Replace ap->hard_port_no with ap->port_no. Signed-off-by: Tejun Heo <htejun@gmail.com>
* | | [PATCH] libata: use dummy port for stolen legacy portsTejun Heo2006-08-102-26/+17
| | | | | | | | | | | | | | | | | | | | | Use dummy port for stolen legacy ports. This makes ap->port_no always equal ap->hard_port_no. Signed-off-by: Tejun Heo <htejun@gmail.com>
* | | [PATCH] libata: implement dummy portTejun Heo2006-08-102-10/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implement dummy port which can be requested by setting appropriate bit in probe_ent->dummy_port_mask. The dummy port is used as placeholder for stolen legacy port. This allows libata to guarantee that index_of(ap) == ap->port_no == actual_device_port_no, and thus to remove error-prone ap->hard_port_no. As it's used only when one port of a legacy controller is reserved by some other entity (e.g. IDE), the focus is on keeping the added *code* complexity at minimum, so dummy port allocates all libata core resources and acts as a normal port. It just has all dummy port_ops. This patch only implements dummy port. The following patch will make libata use it for stolen legacy ports. Signed-off-by: Tejun Heo <htejun@gmail.com>
* | | [PATCH] libata: rework legacy handling to remove much of the cruftAlan Cox2006-08-1012-97/+123
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Kill host_set->next Fix simplex support Allow per platform setting of IDE legacy bases Some of this can be tidied further later on, in particular all the legacy port gunge belongs as a PCI quirk/PCI header decode to understand the special legacy IDE rules in the PCI spec. Longer term Jeff also wants to move the request_irq/free_irq out of core which will make this even cleaner. tj: folded in three followup patches - ata_piix-fix, broken-arch-fix and fix-new-legacy-handling, and separated per-dev xfermask into separate patch preceding this one. Folded in fixes are... * ata_piix-fix: fix build failure due to host_set->next removal * broken-arch-fix: add missing include/asm-*/libata-portmap.h * fix-new-legacy-handling: * In ata_pci_init_legacy_port(), probe_num was incorrectly incremented during initialization of the secondary port and probe_ent->n_ports was incorrectly fixed to 1. * Both legacy ports ended up having the same hard_port_no. * When printing port information, both legacy ports printed the first irq. Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Tejun Heo <htejun@gmail.com>
* | | [PATCH] libata: implement per-dev xfermaskTejun Heo2006-08-101-29/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implement per-dev xfermask. libata used to determine xfermask per-port - the fastest mode of the slowest device on the port. This patch enables per-dev xfermask. Original patch is from Alan Cox <alan@redhat.com>. The following changes are made by me. * simplex warning message is added * remove disabled device handling code which is never invoked (originally for choosing port-wide lowest PIO mode) Cc: Alan Cox <alan@redhat.com> Signed-off-by: Tejun Heo <htejun@gmail.com>
* | | [PATCH] [libata] Kill 'count' var in ata_device_add()Jeff Garzik2006-08-101-13/+7
| | | | | | | | | | | | | | | | | | | | | Eliminate redundant loop variable 'count' Signed-off-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: Tejun Heo <htejun@gmail.com>
* | | [PATCH] [libata] some function renamingJeff Garzik2006-08-101-11/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | s/ata_host_add/ata_port_add/ s/ata_host_init/ata_port_init/ libata naming got stuck in the middle of a Great Renaming: ata_host -> ata_port ata_host_set -> ata_host To eliminate confusion, let's just give up for now, and simply ensure that things are internally consistent. Signed-off-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: Tejun Heo <htejun@gmail.com>
* | | [PATCH] libata: update ata_host_init() and rename it to ata_port_init_shost()Tejun Heo2006-08-101-20/+13
| | | | | | | | | | | | | | | | | | | | | | | | Update ata_host_init() such that it only initializes SCSI host related stuff and doesn't call into ata_port_init(), and rename it to ata_port_init_shost(). Signed-off-by: Tejun Heo <htejun@gmail.com>
* | | Merge branch 'upstream-fixes' into upstreamJeff Garzik2006-08-092-2/+15
|\ \ \ | | |/ | |/|
| * | [PATCH] libata: clear sdev->locked on door lock failureTejun Heo2006-08-091-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SCSI EH locks door if sdev->locked is set. Sometimes door lock command fails continuously (e.g. when medium is not present) and as libata uses EH to acquire sense data, this easily creates a loop where a failed lock door invokes EH and EH issues lock door on completion. This patch clears sdev->locked on door lock failure to break this loop. This problem has been spotted and diagnosed by Unicorn Chang <uchang@tw.ibm.com>. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * | [PATCH] Fix compile problem when sata debugging is onKeith Owens2006-08-091-2/+2
| | | | | | | | | | | | | | | | | | | | | Fix a sata debug print statement that still uses an old variable name. Signed-off-by: Keith Owens <kaos@ocs.com.au> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | [PATCH] ahci: remove IRQ mask clearing from init_controller()Tejun Heo2006-08-091-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Initial IRQ mask clearing is done by libata-core by freezing all ports prior to requesting IRQ. Remove redundant IRQ clearing from init_controller(). Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | [PATCH] libata: Add support for SATA attachment to SAS adaptersBrian King2006-08-094-1/+160
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The following patch enhances libata to allow SAS device drivers to utilize libata to talk to SATA devices. It introduces some new APIs which allow libata to be used without allocating a virtual scsi host. New APIs: ata_sas_port_alloc - Allocate an ata_port ata_sas_port_init - Initialize an ata_port (probe device, etc) ata_sas_port_destroy - Free an ata_port allocated by ata_sas_port_alloc ata_sas_slave_configure - configure scsi device ata_sas_queuecmd - queue a scsi command, similar to ata_scsi_queuecomand These new APIs can be used either directly by a SAS LLDD or could be used by the SAS transport class. Possible usage for a SAS LLDD would be: scsi_scan_host target_alloc ata_sas_port_alloc slave_alloc ata_sas_port_init slave_configure ata_sas_slave_configure Commands received by the LLDD for SATA devices would call ata_sas_queuecmd. Device teardown would occur with: slave_destroy port_disable target_destroy ata_sas_port_destroy Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | [PATCH] libata: Move ata_probe_ent_alloc to libata_coreBrian King2006-08-093-26/+27
| | | | | | | | | | | | | | | | | | | | | | | | Move ata_probe_ent_alloc to libata-core. It will also be used by future SAS/SATA integration patches. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | [PATCH] libata: Add ata_port_initBrian King2006-08-092-15/+36
| | | | | | | | | | | | | | | | | | | | | | | | Separate out the ata_port initialization from ata_host_init so that it can be used in future SAS patches. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | [PATCH] libata: Add ata_host_set_initBrian King2006-08-092-4/+26
| | | | | | | | | | | | | | | | | | | | | Add ata_host_set_init in preparation for SAS attached SATA. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | Merge branch 'upstream-fixes' into upstreamJeff Garzik2006-08-083-27/+9
|\ \ \ | |/ /
| * | Merge branch 'tj-upstream-fixes' of git://htj.dyndns.org/libata-tj into ↵Jeff Garzik2006-08-083-27/+9
| |\ \ | | | | | | | | | | | | upstream-fixes
| | * | [PATCH] libata: fix ata_device_add() error pathTejun Heo2006-08-051-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the error path, ata_device_add() * dereferences null host_set->ports[] element. * calls scsi_remove_host() on not-yet-added shost. This patch fixes both bugs. The first problem was spotted and initial patch submitted by Dave Jones <davej@redhat.com>. The second problem was mentioned and fixed by Jeff Garzik <jgarzik@pobox.com> in a larger cleanup patch. Cc: Dave Jones <davej@redhat.com> Cc: Jeff Garzik <jgarzik@pobox.com> Signed-off-by: Tejun Heo <htejun@gmail.com>
| | * | [PATCH] [libata] manually inline ata_host_remove()Jeff Garzik2006-08-051-25/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | (tj: this is for the following ata_device_add() fix) Signed-off-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: Tejun Heo <htejun@gmail.com>
| | * | [PATCH] sata_sil24: don't set probe_ent->mmio_baseTejun Heo2006-08-051-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | sata_sil24 doesn't make use of probe_ent->mmio_base and setting this field causes the area to be released twice on detach. Don't set probe_ent->mmio_base. Signed-off-by: Tejun Heo <htejun@gmail.com>
| | * | [PATCH] ata_piix: fix host_set private_data intializationTejun Heo2006-08-051-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To get host_set->private_data initialized reliably, all pinfos need to point to the same hpriv. Restore pinfo->private_data after pata pinfo assignment. Signed-off-by: Tejun Heo <htejun@gmail.com>
| | * | [PATCH] libata: fix ata_port_detach() for old EH portsTejun Heo2006-08-051-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ata_prot_detach() did nothing for old EH ports and thus SCSI hosts associated with those ports are left dangling after they are detached leaving stale devices and causing oops eventually. Make ata_port_detach() remove SCSI hosts for old EH ports. Signed-off-by: Tejun Heo <htejun@gmail.com>
* | | | Merge branch 'master' into upstreamJeff Garzik2006-08-0794-723/+1133
|\ \ \ \ | |/ / /
| * | | Linux v2.6.18-rc4v2.6.18-rc4Linus Torvalds2006-08-061-1/+1
| | | |
| * | | Merge branch 'for-linus' of ↵Linus Torvalds2006-08-0617-308/+509
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/dtor/input * 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/dtor/input: (24 commits) Input: ati_remote - use msec instead of jiffies Input: ati_remote - add missing input_sync() Input: ati_remote - relax permissions sysfs module parameters Input: ati_remote - make filter time a module parameter Input: atkbd - restore repeat rate when resuming Input: trackpoint - activate protocol when resuming Input: logips2pp - fix button mapping for MX300 Input: keyboard - change to use kzalloc Input: serio/gameport - check whether driver core calls succeeded Input: spaceball - make 4000FLX Lefty work Input: keyboard - simplify emulate_raw() implementation Input: keyboard - remove static variable and clean up initialization Input: hiddev - use standard list implementation Input: add missing handler->start() call Input: HID - fix potential out-of-bound array access Input: fix list iteration in input_release_device() Input: iforce - add Trust Force Feedback Race Master support Input: iforce - check array bounds before accessing elements Input: libps2 - warn instead of oopsing when passed bad arguments Input: fm801-gp - fix use after free ...
| | * | | Input: ati_remote - use msec instead of jiffiesDmitry Torokhov2006-08-041-58/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | By using milliseconds instead of jiffies to calculate acceleration factor we make the code immune to changes in HZ. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| | * | | Input: ati_remote - add missing input_sync()Dmitry Torokhov2006-08-041-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When emulating button toggle drivers need to send input_sync() between 'down' and 'up' events, otherwise some users might miss keypress because device's state is only considered finalized after EV_SYN/SYN_REPORT is received. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| | * | | Input: ati_remote - relax permissions sysfs module parametersDmitry Torokhov2006-08-041-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow changing debug and channel_mask parameters on the fly. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| | * | | Input: ati_remote - make filter time a module parameterEdwin Huffstutler2006-08-041-14/+19
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| | * | | Input: atkbd - restore repeat rate when resumingDmitry Torokhov2006-08-041-43/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make the AT keyboard driver restore previously set repeat rate when resuming. Noticed by Linus Torvalds. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| | * | | Input: trackpoint - activate protocol when resumingDmitry Torokhov2006-08-041-18/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Trackpoint driver was not sending the magic knock sequence upon resume causing incorrect device behavior after resuming from disk. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| | * | | Input: logips2pp - fix button mapping for MX300Roberto Castagnola2006-08-041-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MX300 does not have an EXTRA_BTN - it is a simple wheel mouse with an additional task-switcher button, which is reported as side button (and not task button). Signed-off-by: Daniel Drake <dsd@gentoo.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| | * | | Input: keyboard - change to use kzallocDmitry Torokhov2006-08-041-2/+2
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| | * | | Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 ↵Dmitry Torokhov2006-08-041758-16901/+34975
| | |\ \ \ | | | | | | | | | | | | | | | | | | into for-linus
| | * | | | Input: serio/gameport - check whether driver core calls succeededRandy Dunlap2006-07-192-31/+100
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Randy Dunlap <rdunlap@xenotime.net> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| | * | | | Input: spaceball - make 4000FLX Lefty workNick Martin2006-07-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Although the Spaceball 4000FLX Lefty is already supported by the spaceball driver, it does not register properly due to SPACEBALL_MAX_ID being set too low. Increment SPACEBALL_MAX_ID such that the 4000FLX Lefty is properly recognized. Signed-off-by: Nick Martin <nim+linux@nimlabs.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| | * | | | Input: keyboard - simplify emulate_raw() implementationDmitry Torokhov2006-07-191-17/+34
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| | * | | | Input: keyboard - remove static variable and clean up initializationDmitry Torokhov2006-07-191-10/+9
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| | * | | | Input: hiddev - use standard list implementationDmitry Torokhov2006-07-191-34/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes Coverity #id 303 Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| | * | | | Input: add missing handler->start() callDmitry Torokhov2006-07-191-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The start() method need to be called every time we create a new handle. This includes not only registering new devices but also when registering new handlers. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| | * | | | Input: HID - fix potential out-of-bound array accessDmitry Torokhov2006-07-151-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes Coverity #id 978 Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
OpenPOWER on IntegriCloud