- Patch from Aravind Parchuri <aravind.parchuri@gmail.com> with some my modifications:
[mirror/scst/.git] / mpt / README
1 Target driver for LSI/MPT XXX cards
2 ===================================
3
4 Version X.X.X, XX XXX 200X
5 --------------------------
6
7 This driver was originally developed by Hu Gang and then is developed by
8 Erik Habbinga <erikhabbinga@inphase-tech.com>. It is on the early stage
9 of development.
10
11 The current maintainer of this driver is Erik. Please send him all
12 question related to it (CC: scst-devel@lists.sourceforge.net).
13
14 This driver tested only on Linux kernel versions 2.6.15.x.
15
16 Building from the Linux kernel tree
17 -----------------------------------
18
19 To build from the kernel tree, you should:
20
21 1. Link drivers/message/fusion/mpt_scst to $(SCST_DIR)/mpt
22
23 2. Patch drivers/message/fusion/Makefile and
24 drivers/message/fusion/Kconfig by diffs from $(SCST_DIR)/mpt/in-tree
25
26 3. Correct in drivers/message/fusion/Makefile SCST_INC_DIR variable so
27 it points to correct directory with SCST include files.
28
29 Building outside the Linux kernel tree
30 --------------------------------------
31
32 Edit Makefile, comment there line 
33
34 obj-$(CONFIG_FUSION_SCST) += mpt_scst.o
35
36 and uncomment line
37
38 obj-m += mpt_scst.o
39
40 Notes on implementation
41 -----------------------
42 The driver takes the mptstm target driver implemented by LSI
43 and ports it to the SCST architecture.
44
45 The LSI hardware returns an error when it realizes that command
46 status and sense data cannot be sent in the same transaction.
47 This happens during non-packetized SCSI command handling (not FC or
48 SAS).  For SCSI implementations, the driver speculatively caches
49 sense data.  If the hardware reports that the sense data could not
50 be sent, the driver will return the cached sense data without
51 involving SCST if the next command is REQUEST SENSE.  Cached sense
52 data is discarded on bus reset or if the next command after sense
53 send failure was not REQUEST SENSE.
54
55 Caching sense data in this fashion probably won't work in a tagged
56 command queuing environment.  If SCSI hardware is being used, the
57 driver inspects responses to the INQUIRY command and clears the
58 BQUE and CMDQUE bits in the standard INQUIRY response to disable
59 tagged command queuing.
60