1Rocket Controller Driver for FreeBSD 2Copyright (C) 2015 HighPoint Technologies, Inc. All rights reserved. 3 4############################################################################# 5Revision History: 6 v1.1.1 2015-03-26 7 * Support 4Kn drive. 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. 13 14 v1.0.1 2014-8-19 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 18 10th LBA. 19 * Fix a bug that request timeout but it has been completed in certain 20 cases. 21 * Support smartmontool for R750. 22 23 v1.0 2013-7-3 24 First source code release 25 26############################################################################# 27 281. Overview 29--------------------- 30 This package contains FreeBSD driver source code for HighPoint Rocket 31 controller, include: 32 SATA Controller: R750, DC7280. 33 34 NO WARRANTY 35 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. 40 41 LIMITATION OF LIABILITY 42 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. 50 51 522. Rebuild the kernel with HighPoint Rocket support 53----------------------------------------------- 54 55 1) Install kernel source package and building tools. 56 57 2) Extract the driver files under the kernel source tree: 58 59 # cd /usr/src/sys/ 60 # tar xvzf /your/path/to/hptnr-freebsd-src-v1.0-130701.tgz 61 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 64 MYKERNEL: 65 66 # cd i386/conf (or amd64/conf for AMD64) 67 # cp GENERIC MYKERNEL 68 69 4) Edit MYKERNEL, and add the following line under "RAID controllers 70 interfaced to the SCSI subsystem": 71 72 device "hptnr" #HighPoint Rocket 73 74 5) For i386 system, edit /usr/src/sys/conf/files.i386 and append the lines 75 shown below: 76 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" \ 80 no-implicit-rule 81 82 dev/hptnr/os_bsd.c optional hptnr 83 dev/hptnr/osm_bsd.c optional hptnr 84 dev/hptnr/hptnr_config.c optional hptnr 85 86 For amd64 system, edit /usr/src/sys/conf/files.amd64 and append the lines 87 shown below: 88 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" \ 92 no-implicit-rule 93 94 dev/hptnr/os_bsd.c optional hptnr 95 dev/hptnr/osm_bsd.c optional hptnr 96 dev/hptnr/hptnr_config.c optional hptnr 97 98 6) Rebuild and install the kernel: 99 100 a) for FreeBSD 5.x-i386/6.x-i386/7.x-i386/8.x-i386/9.x-i386: 101 102 # cd /usr/src/sys/i386/conf/ 103 # /usr/sbin/config MYKERNEL 104 # cd ../compile/MYKERNEL/ 105 # make depend 106 # make 107 # make install 108 109 b) for FreeBSD 5.x-amd64/6.x-amd64/7.x-amd64/8.x-amd64/9.x-amd64: 110 111 # cd /usr/src/sys/amd64/conf/ 112 # /usr/sbin/config MYKERNEL 113 # cd ../compile/MYKERNEL/ 114 # make depend 115 # make 116 # make install 117 118 c) for FreeBSD 4.x: 119 120 # cd /usr/src/sys/i386/conf/ 121 # /usr/sbin/config MYKERNEL 122 # cd ../../compile/MYKERNEL/ 123 # make depend 124 # make 125 # make install 126 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. 130 131 7) Reboot from the new kernel. 132 133 1343. Build/Load the driver as a kernel module 135------------------------------------------------ 136 137 1) Install kernel source package and building tools. 138 139 2) Extract the driver files under the kernel source tree: 140 141 # cd /usr/src/sys/ 142 # tar xvzf /your/path/to/hptnr-freebsd-src-v1.0-111213.tgz 143 144 145 4) Build the driver module: 146 147 # cd modules/hptnr 148 # make 149 150 5) Copy the driver module to the kernel module directory 151 152 For FreeBSD 4.x: 153 154 # cp hptnr.ko /modules/ 155 156 For FreeBSD 5.x/6.x/7.x/8.x/9.x: 157 158 # cp hptnr.ko /boot/kernel/ 159 160 6) Reboot and load the driver under loader prompt. e.g: 161 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 167 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 - 172 173 Hit [Enter] to boot immediagely, or any other key for command prompt. 174 Booting [kernel] in 9 seconds 175 176 <-- press SPACE key here 177 Type '?' for a list of commands, 'help' for more detailed help. 178 ok load hptnr 179 /modules/hptnr.ko text=0xf571 data=0x2c8+0x254 180 ok boot 181 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 183 prompt. 184 185 7) You can add a below line into /boot/defaults/loader.conf to load the 186 driver automatically: 187 188 hptnr_load="YES" 189 190 Please refer to the installation guide in HighPoint FreeBSD driver release 191 package for more information. 192 193 194############################################################################# 195Technical support and service 196 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: 201 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. 206 207 2) For technical support, send e-mail to support@highpoint-tech.com 208 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. 212 213$FreeBSD$ 214