aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
| * [SCSI] eata_pio: Remove FALSE/TRUE definesRichard Knutsson2007-03-201-7/+0
| | | | | | | | | | | | | | | | eata_generic.h is only included by eata_pio.c and it only uses FALSE/TRUE in comments. Signed-off-by: Richard Knutsson <ricknu-0@student.ltu.se> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] expose eh_timed_out to the host templateJames Bottomley2007-03-202-1/+23
| | | | | | | | | | | | | | | | | | It looks like megaraid_sas at least needs this to throttle its commands as they begin to time out. The code keeps the existing transport template use of eh_timed_out (and allows the transport to override the host if they both have this callback). Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] aacraid: Improved error handlingMark Haverkamp2007-03-205-33/+130
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Received from Mark Salyzyn, This set of fixes improve error handling stability of the driver. A popular manifestation of the problems is an NULL pointer reference in the interrupt handler when referencing portions of the scsi command context, or in the scsi_done handling when an offlined device is referenced. The aacraid driver currently does not get notification of orphaned command completions due to devices going offline. The driver also fails to handle the commands that are finished by the error handler, and thus can complete again later at the hands of the adapter causing situations of completion of an invalid scsi command context. Test Unit Ready calls abort assuming that the abort was successful, but are not, and thus when the interrupt from the adapter occurs, they reference invalid command contexts. We add in a TIMED_OUT flag to inform the aacraid FIB context that the interrupt service should merely release the driver resources and not complete the command up. We take advantage of this with the abort handler as well for select abortable commands. And we detect and react if a command that can not be aborted is currently still outstanding to the controller when reissued by the retry mechanism. Signed-off-by: Mark Haverkamp <markh@linux-foundation.org> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] aacraid: fix srb ioctl for 64 bitsMark Haverkamp2007-03-201-102/+157
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Received from Mark Salyzyn, The raw srb ioctl is supposed to be able to take packets with 32 and 64 bit virtual address SG elements, it did not handle the frames with 64 bit SG elements well when communicating with 64 bit DMA capable adapters, and it did not handle the 32 bit limited DMA adapters at all. The enclosed patch now handles all four quadrants (32 bit / 64 bit SG elements in SRB requests + 32 bit or 64 bit DMA capable adapters) This fix is required before Java based management applications in a 64 bit user space can submit raw srb requests to the array physical components via the ioctl mechanism, the allocated user memory pool on 64 bit machines under this environment forced the management software's hands to submit 64 bit user space virtual address SG elements in via the ioctl. Signed-off-by: Mark Haverkamp <markh@linux-foundation.org> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] aacraid: remove un-needed references to container id (cid)Mark Haverkamp2007-03-201-17/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Received from Mark Salyzyn, This little patch removes the ',cid)' container identification argument from some of the functions. The argument is used in some cases as merely a debug helper and thus not used, and in others, the value can be quickly acquired from the scsi command in their single solitary use in the procedure rather than wasting resources on passing the argument in from above. Signed-off-by: Mark Haverkamp <markh@linux-foundation.org> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] aacraid: Fix ioctl handling when adapter resetsMark Haverkamp2007-03-202-8/+19
| | | | | | | | | | | | | | | | | | | | | | | | Received from Mark Salyzyn, Outstanding ioctl calls still have some problems with aborting cleanly in the face of a reset iop recovery action should the adapter ever enter into a Firmware Assert (BlinkLED) condition. The enclosed patch resolves some uncovered flawed handling. Signed-off-by: Mark Haverkamp <markh@linux-foundation.org> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] aacraid: Fix blocking issue with container probing function (cast update)Mark Haverkamp2007-03-201-142/+169
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Received from Mark Salyzyn, The aac_probe_container call blocks. This is an issue because it is called on occasion in the context of the queuecommand handler. Once in a blue moon this has resulted in a kernel panic sleeping during interrupt; or problems with some embedded system versions of the kernel that depend on queuecommand to not block. This ugly patch rewrites the aac_probe_container call into a new routine _aac_probe_container that is an asynchronous state machine to complete the series of operations. The legacy blocking aac_probe_container call used in other areas of the driver (during initialization scanning for all targets and in the separate hot-add/remove [aacraid] thread) merely issues _aac_probe_container and then simple spins calling schedule() waiting for completion. Signed-off-by: Mark Haverkamp <markh@linux-foundation.org> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] aacraid: Fix struct element name issueMark Haverkamp2007-03-205-45/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Received from Mark Salyzyn, This patch is to resolve a namespace issue that will result from a patch expected in the future that adds a new interface; rationalized as correcting a long term issue where hw_fib, instead of hw_fib_va, refers to the virtual address space and hw_fib_pa refers to the physical address space. A small fragment of this patch also cleans up an unused variable that was close to the patch fragments. Signed-off-by: Mark Haverkamp <markh@linux-foundation.org> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] aacraid: add restart adapter platform functionMark Haverkamp2007-03-203-25/+31
| | | | | | | | | | | | | | | | | | | | | | | | Received from Mark Salyzyn, This patch updates the adapter restart function to deal with some adapters that have specific IOP reset needs. Since the code for restarting the adapter was in two places, changed over to utilizing a platform function in one place. Signed-off-by: Mark Haverkamp <markh@linux-foundation.org> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] set resid in scsi_io_completion() even for check conditionPete Wyckoff2007-03-201-2/+2
| | | | | | | | | | | | | | | | | | | | Some targets can return both valid data and sense information. Always update the request data_len from the SCSI command residual. Callers should interpret sense data to determine what parts of the data are valid in case of a CHECK CONDITION status. Signed-off-by: Pete Wyckoff <pw@osc.edu> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] tgt: remove the code to build senseFUJITA Tomonori2007-03-201-14/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | tgt notifies a LLD of the failure with sense when it hits the user-space daemon bugs. However, tgt doesn't know anything about SCSI devices that initiators talks to. So it's impossible to send proper sense buffer (format and contents). This patch changes tgt not to notify a LLD of the failure with bogus sense. Instead, tgt just re-queues the failure command to the internal list so that it will be freed cleanly later on when the scsi_host is removed. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] fc_transport: update potential link speedsJames Smart2007-03-202-0/+4
| | | | | | | | | | | | | | | | | | | | This patch updates the FC transport for all speeds identified in SM-HBA. Note: it does not sync the "bit" definitions, as that is actually insulated from user-space via the sysfs text string. (I could do it, but it does introduce a potential binary-incompatibility). Signed-off-by: James Smart <James.Smart@emulex.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] qla2xxx: Update version number to 8.01.07-k6.Andrew Vasquez2007-03-201-1/+1
| | | | | | | | | | Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] qla2xxx: Allow the extended-error-logging flag to be dynamic.Andrew Vasquez2007-03-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | The module parameter, ql2xextended_error_logging, can now be set dynamically by writing to the following sysfs entry: /sys/module/qla2xxx/parameters/ql2xextended_error_logging This alleviates the need for the driver to be unloaded and reloaded in order to enable logging. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] qla2xxx: Drop acquisition of hardware_lock during flash manipulations.Andrew Vasquez2007-03-201-6/+0
| | | | | | | | | | | | | | | | | | | | | | There's no need given, I/O has been quiesced, RISC interrupts have been disabled, and finally the RISC has been paused. Flash manipulation on ISP21xx, ISP22xx, and ISP23xx parts requires the RISC to go through a full reset to recover. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] qla2xxx: Add cond_resched() calls during HBA flash manipulation.Andrew Vasquez2007-03-201-0/+5
| | | | | | | | | | | | | | | | | | We're observing soft lockups during HBA FLASH retrieval and update. Add cond_resched() each time around the tight-loops during flash read()s/write()s. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] qla2xxx: Add scan_[start|finish]() callbacks for ISP24xx HBAs.Andrew Vasquez2007-03-201-0/+2
| | | | | | | | | | Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] qla2xxx: fix RSCN handling on big-endian systemsMalahal Naineni2007-03-201-5/+8
| | | | | | | | | | | | | | | | | | | | | | qla2xxx driver fails to handle RSCN events affecting area or domain due to an endian issue on big endian systems. This fixes the port_id_t structure on big endian systems. Signed-off-by: Malahal Naineni <malahal@us.ibm.com> Acked-by: Seokmann Ju <seokmann.ju@qlogic.com> Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] make scsi_wait_scan always modularJames Bottomley2007-03-202-1/+7
| | | | | | | | | | | | | | | | | | | | Currently scsi_wait_scan is only built modular if SCSI is modular. However, it's perfectly possible for a built in SCSI still to have modular drivers and thus need scsi_wait_scan as a module. Therefore, scsi_wait_scan should always be built as a module (unless the kernel doesn't support modules). Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] fusion: kernel-doc warning fixesRandy Dunlap2007-03-203-26/+22
| | | | | | | | | | | | | | | | Fix kernel-doc warnings in fusion driver code. Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Acked-by: "Moore, Eric" <Eric.Moore@lsi.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] sd: typo fix: sdkp_printk should be sd_printkJames Bottomley2007-03-111-1/+1
| | | | | | | | Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] pci2000: Delete unused header file.Robert P. J. Day2007-03-111-197/+0
| | | | | | | | | | | | | | | | | | | | | | | | This driver was removed a while ago by commit 099175c94a221fa2723b7273883c98cd32efe900 However, it seems that pci2000.h wasn't properly eliminated, so remove it now. Signed-off-by: Robert P. J. Day <rpjday@mindspring.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] tgt: fix scsi command leakFUJITA Tomonori2007-03-111-3/+20
| | | | | | | | | | | | | | | | | | | | | | The failure to map user-space pages leads to scsi command leak. It can happens mostly because of user-space daemon bugs (or OOM). This patch makes tgt just notify a LLD of the failure with sense when blk_rq_map_user() fails. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] tgt: fix sesnse buffer problemsFUJITA Tomonori2007-03-116-133/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch simplify the way to notify LLDs of the command completion and addresses the following sense buffer problems: - can't handle both data and sense. - forces user-space to use aligned sense buffer tgt copies sense_data from userspace to cmnd->sense_buffer (if necessary), maps user-space pages (if necessary) and then calls host->transfer_response (host->transfer_data is removed). Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] tgt: rm bio hacks in scsi tgtMike Christie2007-03-112-102/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | scsi tgt breaks up a command into multple scatterlists if we cannot fit all the data in one. This was because the block rq helpers did not support large requests and because we can get a command of any old size so it is hard to preallocate pages for scatterlist large enough (we cannot really preallocate pages with the bio map user path). In 2.6.20, we added large request support to the block layer helper, blk_rq_map_user. And at LSF, we talked about increasing SCSI_MAX_PHYS_SEGMENTS for scsi tgt if we want to support really really :) large (greater than 256 * PAGE_SIZE in the worst mapping case) requests. The only target currently implemented does not even support the multiple scatterlists stuff and only supports smaller requests, so this patch just coverts scsi tgt to use blk_rq_map_user. Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] iscsi_tcp: print useful error message when iscsi crc23c allocation failsMike Christie2007-03-111-2/+12
| | | | | | | | | | | | | | | | | | | | | | People do not read the README and seem to like to unselect the crc32c module even though iscsi_tcp selects it for them. This patch spits a error that tells the user that they really do need the module. Hopefully, we will get fewer people asking about this now. Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] iscsi_tcp: increase max_sectorsMike Christie2007-03-111-0/+1
| | | | | | | | | | | | | | | | | | | | For a while now, the block layer has seperated max sectors and max hw sectors. Software iscsi has no limit so this patch increases max hw sectors, so we can support large pass through commands. Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] libiscsi: use get_unalignedMike Christie2007-03-111-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | Dave Miller meantioned that the data buffer in a past sense fixup patch was not gauranteed to be aligned properly for ia64. This patch has libiscsi use get_unalinged to make sure. There are a couple more places in the digest handling we may need to do this, but we are in the middle of fixing that code for big endien systems so just the sense access is fixed here. Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] iscsi transport: use atomic for session_nr allocationsMike Christie2007-03-111-2/+4
| | | | | | | | | | | | | | | | | | qla4xxx and iscsi_tcp or iser could be creating sessions at the same time, so make session_nr id allocation atomic. Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] iscsi: rename DEFAULT_MAX_RECV_DATA_SEGMENT_LENGTHMike Christie2007-03-114-6/+16
| | | | | | | | | | | | | | | | | | This patch renames DEFAULT_MAX_RECV_DATA_SEGMENT_LENGTH to avoid confusion with the drivers default values (DEFAULT_MAX_RECV_DATA_SEGMENT_LENGTH is the iscsi RFC specific default). Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] libiscsi: clear mtaskMike Christie2007-03-111-11/+8
| | | | | | | | | | | | | | Consolidate the mtask clearing code. Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] libiscsi: flush work before freeing connectionMike Christie2007-03-111-0/+3
| | | | | | | | | | | | | | | | | | It's possible that we call iscsi_xmitworker after iscsi_conn_release which causes a oops. This patch flushes the workqueue. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] constants.c: Update ASC list and make it constMartin K. Petersen2007-03-111-1/+6
| | | | | | | | | | | | | | | | | | | | Add missing additional sense code and provide pointer to upstream reference (from Doug Gilbert). Add missing const (from Michael Tokarev). Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] sd: convert logging to new printk helpersMartin K. Petersen2007-03-111-21/+29
| | | | | | | | | | | | | | | | Convert the sd.c SCSI logging calls to scmd_printk()/sd_printk() instead of plain printk(). Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] sd: make printing use a common prefixMartin K. Petersen2007-03-112-158/+165
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make SCSI disk printing more consistent: - Define sd_printk(), sd_print_sense_hdr() and sd_print_result() - Move relevant header bits into sd.h - Remove all the legacy disk_name passing and use scsi_disk pointers where possible - Switch printk() lines to the new sd_ functions so that output is consistent Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] Make error printing more verboseMartin K. Petersen2007-03-113-35/+24
| | | | | | | | | | | | | | | | | | | | | | This patch enhances SCSI error printing by: - Making use of scsi_print_result() in the completion functions. - Having scmd_printk() output the disk name (when applicable). Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] constants.c: cleanup, verbose result printingMartin K. Petersen2007-03-112-126/+151
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clean up constants.c and make result printing more user friendly: - Refactor the command and sense functions so that the actual formatting can be called from the various helper functions with the correct prefix. - Replace scsi_print_hostbyte() and scsi_print_driverbyte() with scsi_print_result() which is verbose when CONFIG_SCSI_CONSTANTS is on. Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] zfcp: fix likely/unlikely usageHeiko Carstens2007-03-111-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | zfcp_fsf_protstatus_eval() takes always the 'wrong' branch. Likely Profiling Results --------------------------------------------------------- [+- ] Type | # True | # False | Function:Filename@Line +unlikely | 11042| 0 zfcp_fsf_protstatus_eval() Acked-by: Swen Schillig <swen@vnet.ibm.com> Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* | Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/voyager-2.6Linus Torvalds2007-05-056-102/+84
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | * master.kernel.org:/pub/scm/linux/kernel/git/jejb/voyager-2.6: [VOYAGER] add smp alternatives [VOYAGER] Use modern techniques to setup and teardown low identiy mappings. [VOYAGER] Convert the monitor thread to use the kthread API [VOYAGER] clockevents driver: bring voyager in to line [VOYAGER] clockevents: correct boot cpu is zero assumption [VOYAGER] add smp_call_function_single
| * | [VOYAGER] add smp alternativesJames Bottomley2007-05-011-0/+2
| | | | | | | | | | | | | | | | | | It's about time voyager had them Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * | [VOYAGER] Use modern techniques to setup and teardown low identiy mappings.Eric W. Biederman2007-05-011-32/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a trivial and hopefully obviously correct patch to setup and teardown the identity mappings the way the rest of arch/i386 does. My new page table setup code will break some assumptions below so this is my attempt to keep voyager working. Signed-off-by: Eric W. Biederman <ebiederm@xmission.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * | [VOYAGER] Convert the monitor thread to use the kthread APIChristoph Hellwig2007-05-013-55/+24
| | | | | | | | | | | | | | | | | | | | | full kthread conversion on the voyager power switch handling thread. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * | [VOYAGER] clockevents driver: bring voyager in to lineJames Bottomley2007-05-011-1/+7
| | | | | | | | | | | | | | | | | | | | | The irq0 timer interrupt should be initiallised identically with mach-default. Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * | [VOYAGER] clockevents: correct boot cpu is zero assumptionJames Bottomley2007-05-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | This isn't true for voyager, so alter setup_pit_timer() to initialise the cpumask from the current processor id (which should be the boot processor) rather than defaulting to zero. Acked-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * | [VOYAGER] add smp_call_function_singleJames Bottomley2007-04-301-13/+44
| | | | | | | | | | | | | | | | | | This apparently has msr users now, so add it to the voyager HAL Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
* | | ide-cs: recognize 2GB CompactFlash from TranscendFabrice Aeschbacher2007-05-051-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Without the following patch, the kernel does not automatically detect 2GB CompactFlash cards from Transcend. Signed-off-by: Fabrice Aeschbacher <fabrice.aeschbacher@siemens.com> Cc: Dominik Brodowski <linux@dominikbrodowski.net> Acked-by: Peter Stuge <peter@stuge.se> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
* | | hpt366: don't check enablebits for HPT36xSergei Shtylyov2007-05-051-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | HPT36x chip don't seem to have the channel enable bits, so prevent the IDE core from checking them... Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Cc: Michal Kepien <michal.kepien@poczta.onet.pl> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
* | | ide-cris: fix ->speedproc and wrong ->swdma_maskBartlomiej Zolnierkiewicz2007-05-051-5/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * fix ->speedproc to set the drive speed * this driver doesn't support SWDMA so use the correct ->swdma_mask * BUG() if an unsupported mode is passed to ->speedproc Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
* | | siimage: fix wrong ->swdma_maskBartlomiej Zolnierkiewicz2007-05-051-10/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This driver doesn't support SWDMA so use the correct ->swdma_mask. While at it: * no need to call config_chipset_for_pio() in config_chipset_for_dma(), if DMA is not available config_chipset_for_pio() will be called by siimage_config_drive_for_dma() and if DMA is available config_siimage_chipset_for_pio() will be called by siimage_tune_chipset() * remove needless config_chipset_for_pio() wrapper * bump driver version Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
* | | it821x: PIO mode setup fixesBartlomiej Zolnierkiewicz2007-05-051-68/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * limit max PIO mode to PIO4, this driver doesn't support PIO5 and attempt to setup PIO5 by it821x_tuneproc() could result in incorrect PIO timings + incorrect base clock being set for controller in the passthrough mode * move code limiting max PIO according to the pair device capabilities from config_it821x_chipset_for_pio() to it821x_tuneproc() so the check is also applied for mode change requests coming through ->tuneproc and ->speedproc interfaces * set device speed in it821x_tuneproc() * in it821x_tune_chipset() call it821x_tuneproc() also if the controller is in the smart mode (so the check for pair device max PIO is done) * rename it821x_tuneproc() to it821x_tune_pio(), then add it821x_tuneproc() wrapper which does the max PIO mode check; it worked by the pure luck previously, pio[4] and pio_want[4] arrays were used with index == 255 so random PIO timings and base clock were set for the controller in the passthrough mode, thankfully PIO timings and base clock were corrected later by config_it821x_chipset_for_pio() call (but it was not called for PIO-only devices during resume and for user requested PIO autotuning) * remove config_it821x_chipset_for_pio() call from config_chipset_for_dma() as the driver sets ->autotune to 1 and ->tuneproc does the proper job now * convert the last user of config_it821x_chipset_for_pio() to use it821x_tuneproc(drive, 255) and remove no longer needed function While at it: * fix few comments * bump driver version Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>