1.. SPDX-License-Identifier: GPL-2.0 2 3=================== 4Adaptec dpti driver 5=================== 6 7Redistribution and use in source form, with or without modification, are 8permitted provided that redistributions of source code must retain the 9above copyright notice, this list of conditions and the following disclaimer. 10 11This software is provided ``as is`` by Adaptec and 12any express or implied warranties, including, but not limited to, the 13implied warranties of merchantability and fitness for a particular purpose, 14are disclaimed. In no event shall Adaptec be 15liable for any direct, indirect, incidental, special, exemplary or 16consequential damages (including, but not limited to, procurement of 17substitute goods or services; loss of use, data, or profits; or business 18interruptions) however caused and on any theory of liability, whether in 19contract, strict liability, or tort (including negligence or otherwise) 20arising in any way out of the use of this driver software, even if advised 21of the possibility of such damage. 22 23This driver supports the Adaptec I2O RAID and DPT SmartRAID V I2O boards. 24 25Credits 26======= 27 28The original linux driver was ported to Linux by Karen White while at 29Dell Computer. It was ported from Bob Pasteur's (of DPT) original 30non-Linux driver. Mark Salyzyn and Bob Pasteur consulted on the original 31driver. 32 332.0 version of the driver by Deanna Bonds and Mark Salyzyn. 34 35History 36======= 37 38The driver was originally ported to linux version 2.0.34 39 40==== ========================================================================== 41V2.0 Rewrite of driver. Re-architectured based on i2o subsystem. 42 This was the first full GPL version since the last version used 43 i2osig headers which were not GPL. Developer Testing version. 44V2.1 Internal testing 45V2.2 First released version 46 47V2.3 Changes: 48 49 - Added Raptor Support 50 - Fixed bug causing system to hang under extreme load with 51 - management utilities running (removed GFP_DMA from kmalloc flags) 52 53V2.4 First version ready to be submitted to be embedded in the kernel 54 55 Changes: 56 57 - Implemented suggestions from Alan Cox 58 - Added calculation of resid for sg layer 59 - Better error handling 60 - Added checking underflow conditions 61 - Added DATAPROTECT checking 62 - Changed error return codes 63 - Fixed pointer bug in bus reset routine 64 - Enabled hba reset from ioctls (allows a FW flash to reboot and use 65 the new FW without having to reboot) 66 - Changed proc output 67==== ========================================================================== 68 69TODO 70==== 71- Add 64 bit Scatter Gather when compiled on 64 bit architectures 72- Add sparse lun scanning 73- Add code that checks if a device that had been taken offline is 74 now online (at the FW level) when test unit ready or inquiry 75 command from scsi-core 76- Add proc read interface 77- busrescan command 78- rescan command 79- Add code to rescan routine that notifies scsi-core about new devices 80- Add support for C-PCI (hotplug stuff) 81- Add ioctl passthru error recovery 82 83Notes 84===== 85The DPT card optimizes the order of processing commands. Consequently, 86a command may take up to 6 minutes to complete after it has been sent 87to the board. 88 89The files dpti_ioctl.h dptsig.h osd_defs.h osd_util.h sys_info.h are part of the 90interface files for Adaptec's management routines. These define the structures used 91in the ioctls. They are written to be portable. They are hard to read, but I need 92to use them 'as is' or I can miss changes in the interface. 93