1 Rocket Controller Driver for FreeBSD
2 Copyright (C) 2015 HighPoint Technologies, Inc. All rights reserved.
4 #############################################################################
8 * Change the SCSI target ID of the disk to be the index of physical connetion to the HBA.
9 * Support staggered drive spin up.
10 * Fix a bug that command would be timeout because of improper interrupt service routine.
11 * Error handling to avoid scsi command lost which caused system hang up.
12 * Fix a bug that fail to get the devcie's serial number via FreeNAS WebGUI.
15 * Do not retry the command and reset the disk when failed to enable or
16 disable spin up feature.
17 * Fix up a bug that disk failed to probe if driver failed to access the
19 * Fix a bug that request timeout but it has been completed in certain
21 * Support smartmontool for R750.
24 First source code release
26 #############################################################################
30 This package contains FreeBSD driver source code for HighPoint Rocket
32 SATA Controller: R750, DC7280.
36 THE DRIVER SOURCE CODE HIGHPOINT PROVIDED IS FREE OF CHARGE, AND THERE IS
37 NO WARRANTY FOR THE PROGRAM. THERE ARE NO RESTRICTIONS ON THE USE OF THIS
38 FREE SOURCE CODE. HIGHPOINT DOES NOT PROVIDE ANY TECHNICAL SUPPORT IF THE
39 CODE HAS BEEN CHANGED FROM ORIGINAL SOURCE CODE.
41 LIMITATION OF LIABILITY
43 IN NO EVENT WILL HIGHPOINT BE LIABLE FOR DIRECT, INDIRECT, SPECIAL,
44 INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF OR
45 INABILITY TO USE THIS PRODUCT OR DOCUMENTATION, EVEN IF ADVISED OF THE
46 POSSIBILITY OF SUCH DAMAGES. IN PARTICULAR, HIGHPOINT SHALL NOT HAVE
47 LIABILITY FOR ANY HARDWARE, SOFTWARE, OR DATA STORED USED WITH THE
48 PRODUCT, INCLUDING THE COSTS OF REPAIRING, REPLACING, OR RECOVERING
49 SUCH HARDWARE, OR DATA.
52 2. Rebuild the kernel with HighPoint Rocket support
53 -----------------------------------------------
55 1) Install kernel source package and building tools.
57 2) Extract the driver files under the kernel source tree:
60 # tar xvzf /your/path/to/hptnr-freebsd-src-v1.0-130701.tgz
62 3) Update the kernel configuration file to include the HighPoint source.
63 Assume the configure file is GENERIC, and new kernel configure file is
66 # cd i386/conf (or amd64/conf for AMD64)
69 4) Edit MYKERNEL, and add the following line under "RAID controllers
70 interfaced to the SCSI subsystem":
72 device "hptnr" #HighPoint Rocket
74 5) For i386 system, edit /usr/src/sys/conf/files.i386 and append the lines
77 hptnr_lib.o optional hptnr \
78 dependency "$S/dev/hptnr/i386-elf.hptnr_lib.o.uu" \
79 compile-with "uudecode < $S/dev/hptnr/i386-elf.hptnr_lib.o.uu" \
82 dev/hptnr/os_bsd.c optional hptnr
83 dev/hptnr/osm_bsd.c optional hptnr
84 dev/hptnr/hptnr_config.c optional hptnr
86 For amd64 system, edit /usr/src/sys/conf/files.amd64 and append the lines
89 hptnr_lib.o optional hptnr \
90 dependency "$S/dev/hptnr/amd64-elf.hptnr_lib.o.uu" \
91 compile-with "uudecode < $S/dev/hptnr/amd64-elf.hptnr_lib.o.uu" \
94 dev/hptnr/os_bsd.c optional hptnr
95 dev/hptnr/osm_bsd.c optional hptnr
96 dev/hptnr/hptnr_config.c optional hptnr
98 6) Rebuild and install the kernel:
100 a) for FreeBSD 5.x-i386/6.x-i386/7.x-i386/8.x-i386/9.x-i386:
102 # cd /usr/src/sys/i386/conf/
103 # /usr/sbin/config MYKERNEL
104 # cd ../compile/MYKERNEL/
109 b) for FreeBSD 5.x-amd64/6.x-amd64/7.x-amd64/8.x-amd64/9.x-amd64:
111 # cd /usr/src/sys/amd64/conf/
112 # /usr/sbin/config MYKERNEL
113 # cd ../compile/MYKERNEL/
120 # cd /usr/src/sys/i386/conf/
121 # /usr/sbin/config MYKERNEL
122 # cd ../../compile/MYKERNEL/
127 If the driver was previously configured as an auto-loaded module by
128 /boot/defaults/loader.conf, please remove the entry hptnr_load="YES"
129 from loader.conf to prevent the driver from being loaded twice.
131 7) Reboot from the new kernel.
134 3. Build/Load the driver as a kernel module
135 ------------------------------------------------
137 1) Install kernel source package and building tools.
139 2) Extract the driver files under the kernel source tree:
142 # tar xvzf /your/path/to/hptnr-freebsd-src-v1.0-111213.tgz
145 4) Build the driver module:
150 5) Copy the driver module to the kernel module directory
154 # cp hptnr.ko /modules/
156 For FreeBSD 5.x/6.x/7.x/8.x/9.x:
158 # cp hptnr.ko /boot/kernel/
160 6) Reboot and load the driver under loader prompt. e.g:
162 BTX loader 1.00 BTX version is 1.01
163 Console: internal video/keyboard
164 BIOS driver A: is disk0
165 BIOS driver C: is disk2
166 BIOS 636kB/74512kB available memory
168 FreeBSD/i386 bootstrap loader, Revision 0.8
169 (mailto:jkh@narf.osd.bsdi.com, Sat Apr 21 08:46:19 GMT 2001)
170 Loading /boot/defaults/loader.conf
171 /kernel text=0x24f1db data=0x3007ec+0x2062c -
173 Hit [Enter] to boot immediagely, or any other key for command prompt.
174 Booting [kernel] in 9 seconds
176 <-- press SPACE key here
177 Type '?' for a list of commands, 'help' for more detailed help.
179 /modules/hptnr.ko text=0xf571 data=0x2c8+0x254
182 For FreeBSD 5.x/6.x/7.x/8.x/9.x, you can select 6 on the boot menu to get a loader
185 7) You can add a below line into /boot/defaults/loader.conf to load the
186 driver automatically:
190 Please refer to the installation guide in HighPoint FreeBSD driver release
191 package for more information.
194 #############################################################################
195 Technical support and service
197 If you have questions about installing or using your HighPoint product,
198 check the user's guide or readme file first, and you will find answers to
199 most of your questions here. If you need further assistance, please
200 contact us. We offer the following support and information services:
202 1) The HighPoint Web Site provides information on software upgrades,
203 answers to common questions, and other topics. The Web Site is
204 available from Internet 24 hours a day, 7 days a week, at
205 http://www.highpoint-tech.com.
207 2) For technical support, send e-mail to support@highpoint-tech.com
209 NOTE: Before you send an e-mail, please visit our Web Site
210 (http://www.highpoint-tech.com) to check if there is a new or
211 updated device driver for your system.