cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

dpti.rst (3527B)


      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.