1228940SdelphijRocketRAID Controller Driver for FreeBSD
2284730SdelphijCopyright (C) 2005-2015 HighPoint Technologies, Inc. All rights reserved.
3228940Sdelphij
4228940Sdelphij#############################################################################
5228940SdelphijRevision History:
6284730Sdelphij   v1.2.7.1 06/08/2015
7284730Sdelphij   * Add 10.x comment and correct file name in readme.
8284730Sdelphij   
9284730Sdelphij   v1.2.7 05/22/2015
10284730Sdelphij   * Support Report Luns command.
11284730Sdelphij   
12284730Sdelphij   v1.2.6 04/13/2015
13284730Sdelphij   * Fix a bug that some disks will be dropped when data integrity test over
14284730Sdelphij     one hour on 32bit system.
15284730Sdelphij	   
16284730Sdelphij   v1.2.5 01/26/2015
17284730Sdelphij    * Fix a bug that failed to verify controller by retrying 8 times.
18284730Sdelphij    * Supported 4Kn drive.
19228940Sdelphij
20284730Sdelphij   v1.2.4 09/29/2014
21284730Sdelphij    * Fix a bug that memory would be corrupted and caused strange system
22284730Sdelphij      behavior when running IO and WebGUI
23284730Sdelphij    
24284730Sdelphij   v1.2.3 01/24/2014
25284730Sdelphij    * fixup system crash while write date to raid5.
26284730Sdelphij
27284730Sdelphij   v1.1   07/01/2013
28284730Sdelphij    * Fix 2nd RAID controller can not load as multipath issue.
29284730Sdelphij
30284730Sdelphij   v1.0   12/13/2011
31284730Sdelphij    * First source code release
32284730Sdelphij
33228940Sdelphij#############################################################################
34228940Sdelphij
35228940Sdelphij1. Overview
36228940Sdelphij---------------------
37228940Sdelphij  This package contains FreeBSD driver source code for HighPoint RocketRAID 
38228940Sdelphij  controller, include:
39228940Sdelphij  SAS Controller: RR271x, RR272x, RR274x, RR276x, RR278x.
40228940Sdelphij
41228940Sdelphij  NO WARRANTY
42228940Sdelphij
43228940Sdelphij  THE DRIVER SOURCE CODE HIGHPOINT PROVIDED IS FREE OF CHARGE, AND THERE IS
44228940Sdelphij  NO WARRANTY FOR THE PROGRAM. THERE ARE NO RESTRICTIONS ON THE USE OF THIS
45228940Sdelphij  FREE SOURCE CODE. HIGHPOINT DOES NOT PROVIDE ANY TECHNICAL SUPPORT IF THE
46228940Sdelphij  CODE HAS BEEN CHANGED FROM ORIGINAL SOURCE CODE.
47228940Sdelphij
48228940Sdelphij  LIMITATION OF LIABILITY
49228940Sdelphij
50228940Sdelphij  IN NO EVENT WILL HIGHPOINT BE LIABLE FOR DIRECT, INDIRECT, SPECIAL,
51228940Sdelphij  INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF OR
52228940Sdelphij  INABILITY TO USE THIS PRODUCT OR DOCUMENTATION, EVEN IF ADVISED OF THE
53228940Sdelphij  POSSIBILITY OF SUCH DAMAGES. IN PARTICULAR, HIGHPOINT SHALL NOT HAVE
54228940Sdelphij  LIABILITY FOR ANY HARDWARE, SOFTWARE, OR DATA STORED USED WITH THE
55228940Sdelphij  PRODUCT, INCLUDING THE COSTS OF REPAIRING, REPLACING, OR RECOVERING
56228940Sdelphij  SUCH HARDWARE, OR DATA.
57228940Sdelphij
58228940Sdelphij
59228940Sdelphij2. Rebuild the kernel with HighPoint RocketRAID support
60228940Sdelphij-----------------------------------------------
61228940Sdelphij
62228940Sdelphij  1) Install kernel source package and building tools. 
63228940Sdelphij  
64228940Sdelphij  2) Extract the driver files under the kernel source tree:
65228940Sdelphij
66228940Sdelphij     # cd /usr/src/sys/
67284730Sdelphij     # tar xvzf /your/path/to/HPT27xx_FreeBSD_Src_v1.2.7.1_15_06_08.tgz
68228940Sdelphij
69228940Sdelphij  3) Update the kernel configuration file to include the HighPoint source.
70228940Sdelphij     Assume the configure file is GENERIC, and new kernel configure file is 
71228940Sdelphij     MYKERNEL:
72228940Sdelphij
73228940Sdelphij     # cd i386/conf          (or amd64/conf for AMD64)
74228940Sdelphij     # cp GENERIC MYKERNEL
75228940Sdelphij
76228940Sdelphij  4) Edit MYKERNEL, and add the following line under "RAID controllers 
77228940Sdelphij     interfaced to the SCSI subsystem":
78228940Sdelphij
79228940Sdelphij          device  "hpt27xx"   #HighPoint RocketRAID
80228940Sdelphij
81228940Sdelphij  5) For i386 system, edit /usr/src/sys/conf/files.i386 and append the lines
82228940Sdelphij     shown below:
83228940Sdelphij
84228940Sdelphij          hpt27xx_lib.o optional    hpt27xx  \
85228940Sdelphij              dependency  "$S/dev/hpt27xx/i386-elf.hpt27xx_lib.o.uu" \
86228940Sdelphij              compile-with    "uudecode < $S/dev/hpt27xx/i386-elf.hpt27xx_lib.o.uu" \
87228940Sdelphij              no-implicit-rule
88228940Sdelphij
89284730Sdelphij          dev/hpt27xx/hpt27xx_os_bsd.c      optional        hpt27xx
90284730Sdelphij          dev/hpt27xx/hpt27xx_osm_bsd.c     optional        hpt27xx
91228940Sdelphij          dev/hpt27xx/hpt27xx_config.c      optional        hpt27xx
92228940Sdelphij
93228940Sdelphij     For amd64 system, edit /usr/src/sys/conf/files.amd64 and append the lines
94228940Sdelphij     shown below:
95228940Sdelphij
96228940Sdelphij          hpt27xx_lib.o optional    hpt27xx  \
97228940Sdelphij              dependency  "$S/dev/hpt27xx/amd64-elf.hpt27xx_lib.o.uu" \
98228940Sdelphij              compile-with    "uudecode < $S/dev/hpt27xx/amd64-elf.hpt27xx_lib.o.uu" \
99228940Sdelphij              no-implicit-rule
100228940Sdelphij
101284730Sdelphij          dev/hpt27xx/hpt27xx_os_bsd.c      optional        hpt27xx
102284730Sdelphij          dev/hpt27xx/hpt27xx_osm_bsd.c     optional        hpt27xx
103228940Sdelphij          dev/hpt27xx/hpt27xx_config.c      optional        hpt27xx
104228940Sdelphij
105228940Sdelphij  6) Rebuild and install the kernel:
106228940Sdelphij
107284730Sdelphij     a) for FreeBSD 5.x-i386/6.x-i386/7.x-i386/8.x-i386/9.x-i386/10.x-i386:
108228940Sdelphij     
109228940Sdelphij        # cd /usr/src/sys/i386/conf/
110228940Sdelphij        # /usr/sbin/config MYKERNEL
111228940Sdelphij        # cd ../compile/MYKERNEL/
112228940Sdelphij        # make depend
113228940Sdelphij        # make 
114228940Sdelphij        # make install
115228940Sdelphij
116284730Sdelphij     b) for FreeBSD 5.x-amd64/6.x-amd64/7.x-amd64/8.x-amd64/9.x-amd64/10.x-amd64:
117228940Sdelphij
118228940Sdelphij        # cd /usr/src/sys/amd64/conf/
119228940Sdelphij        # /usr/sbin/config MYKERNEL
120228940Sdelphij        # cd ../compile/MYKERNEL/
121228940Sdelphij        # make depend
122228940Sdelphij        # make 
123228940Sdelphij        # make install
124228940Sdelphij
125228940Sdelphij     c) for FreeBSD 4.x:
126228940Sdelphij     
127228940Sdelphij        # cd /usr/src/sys/i386/conf/
128228940Sdelphij        # /usr/sbin/config MYKERNEL
129228940Sdelphij        # cd ../../compile/MYKERNEL/
130228940Sdelphij        # make depend
131228940Sdelphij        # make 
132228940Sdelphij        # make install
133228940Sdelphij
134228940Sdelphij    If the driver was previously configured as an auto-loaded module by
135228940Sdelphij    /boot/defaults/loader.conf, please remove the entry hpt27xx_load="YES"
136228940Sdelphij    from loader.conf to prevent the driver from being loaded twice.
137228940Sdelphij    
138228940Sdelphij  7) Reboot from the new kernel.
139228940Sdelphij
140228940Sdelphij
141228940Sdelphij3. Build/Load the driver as a kernel module
142228940Sdelphij------------------------------------------------
143228940Sdelphij
144228940Sdelphij  1) Install kernel source package and building tools. 
145228940Sdelphij  
146228940Sdelphij  2) Extract the driver files under the kernel source tree:
147228940Sdelphij    
148228940Sdelphij     # cd /usr/src/sys/
149284730Sdelphij     # tar xvzf /your/path/to/HPT27xx_FreeBSD_Src_v1.2.7.1_15_06_08.tgz
150228940Sdelphij
151228940Sdelphij
152228940Sdelphij  4) Build the driver module:
153228940Sdelphij    
154228940Sdelphij     # cd modules/hpt27xx
155228940Sdelphij     # make
156228940Sdelphij
157228940Sdelphij  5) Copy the driver module to the kernel module directory
158228940Sdelphij
159228940Sdelphij     For FreeBSD 4.x:
160228940Sdelphij     
161228940Sdelphij     # cp hpt27xx.ko /modules/
162228940Sdelphij
163284730Sdelphij     For FreeBSD 5.x/6.x/7.x/8.x/9.x/10.x:
164228940Sdelphij    
165228940Sdelphij     # cp hpt27xx.ko /boot/kernel/
166228940Sdelphij
167228940Sdelphij  6) Reboot and load the driver under loader prompt. e.g:
168228940Sdelphij
169228940Sdelphij        BTX loader 1.00  BTX version is 1.01
170228940Sdelphij        Console: internal video/keyboard
171228940Sdelphij        BIOS driver A: is disk0
172228940Sdelphij        BIOS driver C: is disk2
173228940Sdelphij        BIOS 636kB/74512kB available memory
174228940Sdelphij        
175228940Sdelphij        FreeBSD/i386 bootstrap loader, Revision 0.8
176228940Sdelphij        (mailto:jkh@narf.osd.bsdi.com, Sat Apr 21 08:46:19 GMT 2001)
177228940Sdelphij        Loading /boot/defaults/loader.conf
178228940Sdelphij        /kernel text=0x24f1db data=0x3007ec+0x2062c -
179228940Sdelphij        
180228940Sdelphij        Hit [Enter] to boot immediagely, or any other key for command prompt.
181230133Suqs        Booting [kernel] in 9 seconds
182228940Sdelphij        
183228940Sdelphij         <-- press SPACE key here 
184228940Sdelphij        Type '?' for a list of commands, 'help' for more detailed help.
185228940Sdelphij        ok load hpt27xx
186228940Sdelphij        /modules/hpt27xx.ko text=0xf571 data=0x2c8+0x254
187228940Sdelphij        ok boot
188228940Sdelphij        
189284730Sdelphij     For FreeBSD 5.x/6.x/7.x/8.x/9.x/10.x, you can select 6 on the boot menu to get a loader
190228940Sdelphij     prompt.
191228940Sdelphij  
192228940Sdelphij  7) You can add a below line into /boot/defaults/loader.conf to load the
193228940Sdelphij     driver automatically:
194228940Sdelphij    
195228940Sdelphij           hpt27xx_load="YES"
196228940Sdelphij    
197228940Sdelphij     Please refer to the installation guide in HighPoint FreeBSD driver release 
198228940Sdelphij     package for more information.
199228940Sdelphij     
200228940Sdelphij
201228940Sdelphij#############################################################################
202228940SdelphijTechnical support and service
203228940Sdelphij
204228940Sdelphij  If you have questions about installing or using your HighPoint product,
205228940Sdelphij  check the user's guide or readme file first, and you will find answers to
206228940Sdelphij  most of your questions here. If you need further assistance, please
207228940Sdelphij  contact us. We offer the following support and information services:
208228940Sdelphij
209228940Sdelphij  1)  The HighPoint Web Site provides information on software upgrades,
210228940Sdelphij      answers to common questions, and other topics. The Web Site is
211228940Sdelphij      available from Internet 24 hours a day, 7 days a week, at
212228940Sdelphij      http://www.highpoint-tech.com.
213228940Sdelphij
214228940Sdelphij  2)  For technical support, send e-mail to support@highpoint-tech.com
215228940Sdelphij
216228940Sdelphij  NOTE: Before you send an e-mail, please visit our Web Site
217228940Sdelphij        (http://www.highpoint-tech.com) to check if there is a new or 
218228940Sdelphij        updated device driver for your system.
219228940Sdelphij
220228940Sdelphij$FreeBSD: releng/11.0/sys/dev/hpt27xx/README 284730 2015-06-23 17:26:16Z delphij $
221