aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ata
Commit message (Collapse)AuthorAgeFilesLines
* [PATCH] libata: use FLUSH_EXT only when driver is larger than LBA28 limitTejun Heo2006-12-012-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | Many drives support LBA48 even when its capacity is smaller than 1<<28, as LBA48 is required for many functionalities. FLUSH_EXT is mandatory for drives w/ LBA48 support. Interestingly, at least one of such drives (ST960812A) has problems dealing with FLUSH_EXT. It eventually completes the command but takes around 7 seconds to finish in many cases thus drastically slowing down IO transactions. This seems to be a firmware bug which sneaked into production probably because no other ATA driver including linux IDE issues FLUSH_EXT to drives which report support for LBA48 & FLUSH_EXT but is smaller than 1<<28 blocks. This patch adds ATA_DFLAG_FLUSH_EXT which is set iff the drive supports LBA48 & FLUSH_EXT and is larger than LBA28 limit. Both cache flush paths are updated to issue FLUSH_EXT only when the flag is set. Note that the changed behavior is more inline with the rest of libata. libata prefers shorter commands whenever possible. Signed-off-by: Tejun Heo <htejun@gmail.com> Cc: Danny Kukawka <dkukawka@novell.com> Cc: Stefan Seyfried <seife@novell.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] ahci: honor PORTS_IMPL on ICH8sTejun Heo2006-12-011-28/+67
| | | | | | | | | | | | | | | | Some ICH8s use non-linear port mapping. ahci driver didn't use to honor PORTS_IMPL and this made ports after hole nonfunctional. This patch makes ahci mark those ports as dummy and properly initialize all the implemented ports after the dummies. As it's unknown whether other AHCIs implement PORTS_IMPL register properly, new board id board_ahci_pi is added and selectively applied to ICH8s. All other AHCIs continue to use linear mapping regardless of PORTS_IMPL value. Signed-off-by: Tejun Heo <htejun@gmail.com> Cc: Robin H. Johnson <robbat2@gentoo.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [libata] ARM: add ixp4xx PATA driverAlessandro Zummo2006-12-013-0/+282
| | | | | Signed-off-by: Alessandro Zummo <a.zummo@towertech.it> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] sata_sis: slave support on SiS965Uwe Koziolek2006-12-011-5/+12
| | | | | | | | | | | | SiS965 and SiS180 chips must support slave mode, SiS965L and SiS964 chips must not support slave mode. SCR_STATUS for SATA ports in powerdown state fixed. Now returning 0x0113 instead of 0x0117. Avoids problem on detecting sata_sis controller. Signed-off-by: Uwe Koziolek <uwe.koziolek@gmx.net> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] ahci: preserve PORTS_IMPL over host resetsTejun Heo2006-12-011-3/+20
| | | | | | | | | | Instead of writing 0xf blindly, preserve the content of write-once PORTS_IMPL register over host resets. This patch is taken from Jeff Garzik's AHCI init update patch. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] pdc202xx_old: Fix name clashes with PA-RISCAlan Cox2006-12-011-29/+29
| | | | | | | | | | pdc_* functions are part of the global namespace for the PDC on PA-RISC systems and this means our choice of pdc_ causes collisions between the PDC globals and our static functions. Rename them to pdc202xx where they are for both 2024x and 2026x. Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [libata] ahci: Match PCI class code for AHCIJeff Garzik2006-12-011-0/+4
| | | | Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] libata: move dev->max_sectors configuration into ata_dev_configure()Tejun Heo2006-12-012-16/+8
| | | | | | | | | | | Move dev->max_sectors configuration from ata_scsi_dev_config() to ata_dev_configure(). * more consistent. * allows LLDs to peek at the default dev->max_sectors value. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] libata: implement ATA_EHI_SETMODE and ATA_EHI_POST_SETMODETejun Heo2006-12-012-2/+14
| | | | | | | | | | | | | | | | | | | | | | libata EH used to perform ata_set_mode() iff the EH session performed reset as indicated by ATA_EHI_DID_RESET. This is incorrect because ->dev_config() called by revalidation is allowed to modify transfer mode which ata_set_mode() should take care of. This patch implements the following two flags. * ATA_EHI_SETMODE: set during EH to schedule ata_set_mode(). Both new device attachment and revalidation set this flag. * ATA_EHI_POST_SETMODE: set while the device is revalidated after ata_set_mode(). Post-setmode revalidation is different from initial configuaration and EH revalidation in that ->dev_config() is not allowed tune transfer mode. LLD can use this flag to determine whether it's allowed to tune transfer mode. Note that POST_SETMODE ->dev_config() is guaranteed to be preceded by non-POST_SETMODE ->dev_config(). Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] libata: implement ATA_EHI_PRINTINFOTejun Heo2006-12-014-11/+19
| | | | | | | | | | | | | Implement ehi flag ATA_EHI_PRINTINFO. This flag is set when device configuration needs to print out device info. This used to be handled by @print_info argument to ata_dev_configure() but LLDs also need to know about it in ->dev_config() callback. This patch replaces @print_info w/ ATA_EHI_PRINTINFO and make sata_sil print workaround messages only on the initial configuration. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] ahci: update ahci-vt8251 reset sequenceTejun Heo2006-12-011-2/+76
| | | | | | | | | | | | | | | | | ahci-vt8251 * requires hardreset after PHY status change * doesn't clear BSY on signature FIS after hardreset * needs SError cleared for the port to operate after hardreset This patch implements ahci_vt8251_hardreset() and sets ATA_FLAG_HRST_TO_RESUME to handle the above behaviors. This fixes EH including hotplug on vt8251. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] libata: separate out and export sata_port_hardreset()Tejun Heo2006-12-011-10/+42
| | | | | | | | Separate out sata_port_hardreset() from sata_std_hardreset(). This will be used by LLD hardreset implementation and later by PMP. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] ahci: kill AHCI_FLAG_RESET_NEEDS_CLOTejun Heo2006-12-011-17/+4
| | | | | | | | | Now that ahci_softreset() is fixed to automatically perform CLO if BSY/DRQ is set on entry, AHCI_FLAG_RESET_NEEDS_CLO is redundant. Kill it. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] sata_sil24: add PMP related constantsTejun Heo2006-12-011-0/+5
| | | | | | | Add PMP related constants. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] sata_sil24: rename PMP related constantsTejun Heo2006-12-011-6/+7
| | | | | | | Rename PMP related constants for consistency. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] libata: make user scan wait for scan to completeTejun Heo2006-12-011-3/+5
| | | | | | | | | | Make user scan wait for scan to complete. This way user can wait for warm plug request to complete and is prevented from causing EH event storm by repetitively issuing scan request while EH is in progress. Signed-off-by: Tejun Heo <htejun@gmail.com> Cc: Fajun Chen <fajunchen@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] sata_nv: SRST sometimes fails after hotplug, use HRST_TO_RESUMETejun Heo2006-12-011-3/+6
| | | | | | | | NV controllers sometimes fail to perform softreset after hotplug. Make it use hardreset to resume link. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] libata: move ata_irq_on() into libata-sff.cTejun Heo2006-12-012-0/+32
| | | | | | | | | | ata_irq_on() isn't used outside of libata core layer. The function is TF/SFF interface specific but currently used by core path with some hack too. Move it from include/linux/libata.h to drivers/ata/libata-sff.c. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] libata: handle 0xff status properlyTejun Heo2006-12-011-12/+18
| | | | | | | | | | | | | | | | | | | | libata waits for !BSY even when the status register reports 0xff. This causes long boot delays when D8 isn't pulled down properly. This patch does the followings. * don't wait if status register is 0xff in all wait functions * make ata_busy_sleep() return 0 on success and -errno on failure. -ENODEV is returned on 0xff status and -EBUSY on other failures. * make ata_bus_softreset() succeed on 0xff status. 0xff status is not reset failure. It indicates no device. This removes unnecessary retries on such ports. Note that the code change assumes unoccupied port reporting 0xff status does not produce valid device signature. Signed-off-by: Tejun Heo <htejun@gmail.com> Cc: Joe Jin <lkmaillist@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] ata: Generic platform_device libata driverPaul Mundt2006-12-013-0/+305
| | | | | | | | | | | needs a changelog Signed-off-by: Paul Mundt <lethal@linux-sh.org> Acked-by: Russell King <rmk+kernel@arm.linux.org.uk> Cc: Jeff Garzik <jeff@garzik.org> Cc: Tejun Heo <htejun@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] libata: Revamp blacklist support to allow multiple kinds of ↵Alan Cox2006-12-011-48/+75
| | | | | | | | | | blacklisting flaws Signed-off-by: Alan Cox <alan@redhat.com> Cc: Jeff Garzik <jeff@garzik.org> Cc: Tejun Heo <htejun@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] sata_nv ADMA/NCQ support for nForce4Robert Hancock2006-12-012-12/+924
| | | | | | | | | | | | | | | | | | | | | This patch adds support for ADMA mode on NVIDIA nForce4 (CK804/MCP04) SATA controllers to the sata_nv driver. Benefits of ADMA mode include: - NCQ support - Reduced CPU overhead (controller DMAs command information from memory instead of them being pushed in by the CPU) - Full 64-bit DMA support ADMA mode is enabled by default in this version. To disable it, set the module parameter adma_enabled=0. Signed-off-by: Robert Hancock <hancockr@shaw.ca> Cc: Jeff Garzik <jeff@garzik.org> Cc: Tejun Heo <htejun@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [libata] pata_marvell: minor and trivial cleanupsJeff Garzik2006-12-011-22/+21
| | | | | | | | | - use pci_iomap() [Alan, version 0.0.5t] - fix Alan's version 0.0.5t change - line length, trailing whitespace, case indentation cleanups - don't use deprecated ->eng_timeout() in a driver that uses new EH Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] pata_marvell: Marvell 6101/6145 PATA driverAlan Cox2006-12-013-0/+231
| | | | | | | | | | | This is a legacy mode PATA driver for the 6101/45 and will also drive the SATA ports 1 & 2 in legacy mode as well if desired. Tested and confirmed working by users. The chip supports AHCI type behaviour for SATA and has a more advanced PATA interface as well so this driver will get it working but not get best performance for now. Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] pci_module_init() conversion for pata_pdc2027xHenrik Kretzschmar2006-12-011-1/+1
| | | | | | | | | pci_module_init() conversion for pata_pdc2027x Signed-off-by: Henrik Kretzschmar <henne@nachtwindheim.de> Acked-by: Alan Cox <alan@redhat.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] libata: add 40pin "short" cable support, honour drive side speed ↵Alan Cox2006-12-013-2/+38
| | | | | | | | | | | detection [deweerdt@free.fr: build fix] Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Frederik Deweerdt <deweerdt@free.fr> Cc: Tejun Heo <htejun@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] pci_module_init-convertion-in-ata_genericc fixAlan Cox2006-12-011-1/+1
| | | | | | | | | Acked-by: Alan Cox <alan@redhat.com> but please apply as follows to keep revision id straight Cc: Henrik Kretzschmar <henne@nachtwindheim.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] pci_module_init convertion in ata_generic.cHenrik Kretzschmar2006-12-011-1/+1
| | | | | | | | | pci_module_init convertion in ata_generic.c. Signed-off-by: Henrik Kretzschmar <henne@nachtwindheim.de> Acked-by: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] libata: Winbond supportAlan Cox2006-12-013-0/+314
| | | | | | | | | Winbond 83759A support in non-multichip mode (afaik nobody ever used multichip mode anyway). The 83759 is not supported by this driver as it is already handled elsewhere and doens't use the same interfaces. Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] libata: add missing sht->slave_destroyTejun Heo2006-11-2938-0/+38
| | | | | | | | Many LLDs are missing sht->slave_destroy. The method is mandatory to support device warm unplugging (echo 1 > /sys/.../delete). Without it, libata might access released scsi device. Signed-off-by: Tejun Heo <htejun@gmail.com>
* [PATCH] ahci: ignore PORT_IRQ_IF_ERR on JMB controllersTejun Heo2006-11-291-5/+22
| | | | | | | | | | | | | | | JMicron AHCI controllers set PORT_IRQ_IF_ERR on device errors. The IRQ status bit indicates interface error or protocol mismatch and ahci driver interprets it into AC_ERR_ATA_BUS. So, whenever an ATAPI device raises check condition, ahci interprets it as ATA bus error and thus resets it which, in turn, raises check condition thus creating a reset loop and rendering the device unuseable. This patch makes JMB controllers ignore PORT_IRQ_IF_ERR when interpreting error condition. Signed-off-by: Tejun Heo <htejun@gmail.com> Cc: Justin Tsai <justin@jmicron.com>
* [PATCH] libata: Fixup ata_sas_queuecmd to handle __ata_scsi_queuecmd failureBrian King2006-11-281-3/+6
| | | | | | | | Fixes ata_sas_queuecmd to properly handle a failure from __ata_scsi_queuecmd. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] ahci: AHCI mode SATA patch for Intel ICH9Jason Gaston2006-11-281-0/+11
| | | | | | | This patch adds the Intel ICH9 AHCI controller DID's for SATA support. Signed-off-by: Jason Gaston <jason.d.gaston@intel.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] libata: don't schedule EH on wcache on/off if old EHTejun Heo2006-11-281-5/+7
| | | | | | | | | | Do not schedule EH for revalidation on wcache on/off if old EH. Old EH cannot handle it and will result in WARN_ON()'s and oops. This closes bug #7412. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* Merge branch 'upstream-linus' of ↵Linus Torvalds2006-11-143-5/+18
|\ | | | | | | | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev * 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev: libata: fix double-completion on error [PATCH] pata_artop: fix "& (1 >>" typo [PATCH] hpt37x: Check the enablebits
| * libata: fix double-completion on errorDarrick J. Wong2006-11-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A curious thing happens, however, when ata_qc_new_init fails to get an ata_queued_cmd: First, ata_qc_new_init handles the failure like this: cmd->result = (DID_OK << 16) | (QUEUE_FULL << 1); done(cmd); Then, we return to ata_scsi_translate and do this: err_mem: cmd->result = (DID_ERROR << 16); done(cmd); It appears to me that first we set a status code indicating that we're ok but the device queue is full and finish the command, but then we blow away that status code and replace it with an error flag and finish the command a second time! That does not seem to be desirable behavior since we merely want the I/O to wait until a command slot frees up, not send errors up the block layer. In the err_mem case, we should simply exit out of ata_scsi_translate instead. Signed-off-by: Darrick J. Wong <djwong@us.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * [PATCH] pata_artop: fix "& (1 >>" typoAlexey Dobriyan2006-11-141-1/+1
| | | | | | | | | | Signed-off-by: Alexey Dobriyan <adobriyan@openvz.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * [PATCH] hpt37x: Check the enablebitsAlan Cox2006-11-141-3/+16
| | | | | | | | | | | | | | | | Helps for PATA but SATA bridged devices lie and always set all the bits so will need the error handling fixes from Tejun. Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | [PATCH] libata: Convert from module_init to subsys_initcallBrian King2006-11-141-1/+1
|/ | | | | | | | | | | | | | | | When building a monolithic kernel, the load order of drivers does not work for SAS libata users, resulting in a kernel oops. Convert libata to use subsys_initcall instead of module_init, which ensures that libata gets loaded before any LLDD. This is the same thing that scsi core does to solve the problem. The load order problem was observed on ipr SAS adapters and should exist for other SAS users as well. Signed-off-by: Brian King <brking@us.ibm.com> Acked-by: Jeff Garzik <jgarzik@pobox.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [libata] sata_via: fix obvious typoJeff Garzik2006-11-081-1/+1
| | | | | | Spotted by Martin Devera. Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [libata] Add support for AHCI controllers of MCP67.Peer Chen2006-11-021-0/+8
| | | | | Signed-off-by: Peer Chen <pchen@nvidia.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [libata] Add support for PATA controllers of MCP67 to pata_amd.c.Peer Chen2006-11-021-0/+2
| | | | | Signed-off-by: Peer Chen <pchen@nvidia.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* Revert "[PATCH] Add 0x7110 piix to ata_piix.c"Jeff Garzik2006-11-011-1/+0
| | | | | | | | | This reverts commit f833229c96c0bf53c05995e4bd58709d9e9edd67: According to reviewers and the lspci data provided in commit message itself, PCI ID 0x7110 should not have been added to ata_piix. Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [libata] sata_nv: Add PCI IDsPeer Chen2006-11-011-4/+8
| | | | Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] ahci: fix status register check in ahci_softresetTejun Heo2006-11-011-2/+1
| | | | | | | | | | | | | | ahci_softreset() used to use ahci_tf_read() which reads D2H_REG area to check for the Status register. However, this area is zeroed on initialization and not set by initial signature FIS. Replace it with ahci_check_status(). This bug prevented CLO code from being activated whenever BSY and/or DRQ is set prior to softreset. This fix makes AHCI_FLAG_RESET_NEEDS_CLO flag redundant. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] ata_piix: allow 01b MAP for both ICH6M and ICH7MTejun Heo2006-10-311-32/+5
| | | | | | | | | | | | | | | ICH7M was separated from ICH6M to allow undocumented MAP value 01b which was spotted on an ASUS notebook. However, there is also notebooks with MAP value 01b on ICH6M. This patch re-merges ICH6M and ICH7M entries and allows MAP value 01b for both. This problem has been reported and initial patch provided by Jonathan Dieter. Signed-off-by: Tejun Heo <htejun@gmail.com> Cc: Jonathan Dieter <jdieter@gmail.com> Cc: Tom Deblauwe <tom.deblauwe@telenet.be> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] libata: unexport ata_dev_revalidate()Tejun Heo2006-10-312-1/+1
| | | | | | | | ata_dev_revalidate() isn't used outside of libata core. Unexport it. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] Add 0x7110 piix to ata_piix.cJens Axboe2006-10-311-0/+1
| | | | | | | | | | | | | | | | | | | | | Hi Jeff, I tested the PATA support on my old VAIO notebook, and it failed to find my piix device: 00:07.1 Class 0101: 8086:7111 (rev 01) (prog-if 80 [Master]) Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 64 Region 4: I/O ports at fc90 [size=16] This patch adds the pci id to ata_piix.c and things then work as expected. Signed-off-by: Jens Axboe <jens.axboe@oracle.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] sata_sis: fix flags handling for the secondary portTejun Heo2006-10-311-11/+10
| | | | | | | | | | | | | | | | | | | | sis_init_one() modifies probe_ent->port_flags after allocating and initializing it using ata_pci_init_native_mode(). This makes port_flags for the secondary port (probe_ent->pinfo2->flags) go out of sync resulting in misdetection of device due to incorrectly initialized SCR access flag. This patch make probe_ent alloc/init happen after the final port flags value is determined. This is fragile but probe_ent and all the related mess are scheduled to go away soon for exactly this reason. We just need to hold everything together till then. This has been spotted and diagnosed and tested by Patrick McHardy. Signed-off-by: Tejun Heo <htejun@gmail.com> Cc: Patric McHardy <kaber@trash.net> Cc: Jeff Garzik <jeff@garzik.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] libata-sff: Allow for wacky systemsAlan Cox2006-10-211-0/+9
| | | | | | | | | | | | | There are some Linux supported platforms that simply cannot hit the low I/O addresses used by ATA legacy mode PCI mappings. These platforms have a window for PCI space that is fixed by the board logic and doesn't include the neccessary locations. Provide a config option so that such platforms faced with a controller that they cannot support simply error it and punt Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>