1*0f74dae5SSascha WildnerRocketRAID Controller Driver for FreeBSD 2*0f74dae5SSascha WildnerCopyright (C) 2011 HighPoint Technologies, Inc. All rights reserved. 3*0f74dae5SSascha Wildner 4*0f74dae5SSascha Wildner############################################################################# 5*0f74dae5SSascha WildnerRevision History: 6*0f74dae5SSascha Wildner v1.0 2011-12-27 7*0f74dae5SSascha Wildner First source code release 8*0f74dae5SSascha Wildner 9*0f74dae5SSascha Wildner############################################################################# 10*0f74dae5SSascha Wildner 11*0f74dae5SSascha Wildner1. Overview 12*0f74dae5SSascha Wildner--------------------- 13*0f74dae5SSascha Wildner This package contains FreeBSD driver source code for HighPoint RocketRAID 14*0f74dae5SSascha Wildner controller, include: 15*0f74dae5SSascha Wildner SAS Controller: RR271x, RR272x, RR274x, RR276x, RR278x. 16*0f74dae5SSascha Wildner 17*0f74dae5SSascha Wildner NO WARRANTY 18*0f74dae5SSascha Wildner 19*0f74dae5SSascha Wildner THE DRIVER SOURCE CODE HIGHPOINT PROVIDED IS FREE OF CHARGE, AND THERE IS 20*0f74dae5SSascha Wildner NO WARRANTY FOR THE PROGRAM. THERE ARE NO RESTRICTIONS ON THE USE OF THIS 21*0f74dae5SSascha Wildner FREE SOURCE CODE. HIGHPOINT DOES NOT PROVIDE ANY TECHNICAL SUPPORT IF THE 22*0f74dae5SSascha Wildner CODE HAS BEEN CHANGED FROM ORIGINAL SOURCE CODE. 23*0f74dae5SSascha Wildner 24*0f74dae5SSascha Wildner LIMITATION OF LIABILITY 25*0f74dae5SSascha Wildner 26*0f74dae5SSascha Wildner IN NO EVENT WILL HIGHPOINT BE LIABLE FOR DIRECT, INDIRECT, SPECIAL, 27*0f74dae5SSascha Wildner INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF OR 28*0f74dae5SSascha Wildner INABILITY TO USE THIS PRODUCT OR DOCUMENTATION, EVEN IF ADVISED OF THE 29*0f74dae5SSascha Wildner POSSIBILITY OF SUCH DAMAGES. IN PARTICULAR, HIGHPOINT SHALL NOT HAVE 30*0f74dae5SSascha Wildner LIABILITY FOR ANY HARDWARE, SOFTWARE, OR DATA STORED USED WITH THE 31*0f74dae5SSascha Wildner PRODUCT, INCLUDING THE COSTS OF REPAIRING, REPLACING, OR RECOVERING 32*0f74dae5SSascha Wildner SUCH HARDWARE, OR DATA. 33*0f74dae5SSascha Wildner 34*0f74dae5SSascha Wildner 35*0f74dae5SSascha Wildner2. Rebuild the kernel with HighPoint RocketRAID support 36*0f74dae5SSascha Wildner----------------------------------------------- 37*0f74dae5SSascha Wildner 38*0f74dae5SSascha Wildner 1) Install kernel source package and building tools. 39*0f74dae5SSascha Wildner 40*0f74dae5SSascha Wildner 2) Extract the driver files under the kernel source tree: 41*0f74dae5SSascha Wildner 42*0f74dae5SSascha Wildner # cd /usr/src/sys/ 43*0f74dae5SSascha Wildner # tar xvzf /your/path/to/hpt27xx-freebsd-src-v1.0-111227.tgz 44*0f74dae5SSascha Wildner 45*0f74dae5SSascha Wildner 3) Update the kernel configuration file to include the HighPoint source. 46*0f74dae5SSascha Wildner Assume the configure file is GENERIC, and new kernel configure file is 47*0f74dae5SSascha Wildner MYKERNEL: 48*0f74dae5SSascha Wildner 49*0f74dae5SSascha Wildner # cd i386/conf (or amd64/conf for AMD64) 50*0f74dae5SSascha Wildner # cp GENERIC MYKERNEL 51*0f74dae5SSascha Wildner 52*0f74dae5SSascha Wildner 4) Edit MYKERNEL, and add the following line under "RAID controllers 53*0f74dae5SSascha Wildner interfaced to the SCSI subsystem": 54*0f74dae5SSascha Wildner 55*0f74dae5SSascha Wildner device "hpt27xx" #HighPoint RocketRAID 56*0f74dae5SSascha Wildner 57*0f74dae5SSascha Wildner 5) For i386 system, edit /usr/src/sys/conf/files.i386 and append the lines 58*0f74dae5SSascha Wildner shown below: 59*0f74dae5SSascha Wildner 60*0f74dae5SSascha Wildner hpt27xx_lib.o optional hpt27xx \ 61*0f74dae5SSascha Wildner dependency "$S/dev/hpt27xx/i386-elf.hpt27xx_lib.o.uu" \ 62*0f74dae5SSascha Wildner compile-with "uudecode < $S/dev/hpt27xx/i386-elf.hpt27xx_lib.o.uu" \ 63*0f74dae5SSascha Wildner no-implicit-rule 64*0f74dae5SSascha Wildner 65*0f74dae5SSascha Wildner dev/hpt27xx/os_bsd.c optional hpt27xx 66*0f74dae5SSascha Wildner dev/hpt27xx/osm_bsd.c optional hpt27xx 67*0f74dae5SSascha Wildner dev/hpt27xx/hpt27xx_config.c optional hpt27xx 68*0f74dae5SSascha Wildner 69*0f74dae5SSascha Wildner For amd64 system, edit /usr/src/sys/conf/files.amd64 and append the lines 70*0f74dae5SSascha Wildner shown below: 71*0f74dae5SSascha Wildner 72*0f74dae5SSascha Wildner hpt27xx_lib.o optional hpt27xx \ 73*0f74dae5SSascha Wildner dependency "$S/dev/hpt27xx/amd64-elf.hpt27xx_lib.o.uu" \ 74*0f74dae5SSascha Wildner compile-with "uudecode < $S/dev/hpt27xx/amd64-elf.hpt27xx_lib.o.uu" \ 75*0f74dae5SSascha Wildner no-implicit-rule 76*0f74dae5SSascha Wildner 77*0f74dae5SSascha Wildner dev/hpt27xx/os_bsd.c optional hpt27xx 78*0f74dae5SSascha Wildner dev/hpt27xx/osm_bsd.c optional hpt27xx 79*0f74dae5SSascha Wildner dev/hpt27xx/hpt27xx_config.c optional hpt27xx 80*0f74dae5SSascha Wildner 81*0f74dae5SSascha Wildner 6) Rebuild and install the kernel: 82*0f74dae5SSascha Wildner 83*0f74dae5SSascha Wildner a) for FreeBSD 5.x-i386/6.x-i386/7.x-i386/8.x-i386/9.x-i386: 84*0f74dae5SSascha Wildner 85*0f74dae5SSascha Wildner # cd /usr/src/sys/i386/conf/ 86*0f74dae5SSascha Wildner # /usr/sbin/config MYKERNEL 87*0f74dae5SSascha Wildner # cd ../compile/MYKERNEL/ 88*0f74dae5SSascha Wildner # make depend 89*0f74dae5SSascha Wildner # make 90*0f74dae5SSascha Wildner # make install 91*0f74dae5SSascha Wildner 92*0f74dae5SSascha Wildner b) for FreeBSD 5.x-amd64/6.x-amd64/7.x-amd64/8.x-amd64/9.x-amd64: 93*0f74dae5SSascha Wildner 94*0f74dae5SSascha Wildner # cd /usr/src/sys/amd64/conf/ 95*0f74dae5SSascha Wildner # /usr/sbin/config MYKERNEL 96*0f74dae5SSascha Wildner # cd ../compile/MYKERNEL/ 97*0f74dae5SSascha Wildner # make depend 98*0f74dae5SSascha Wildner # make 99*0f74dae5SSascha Wildner # make install 100*0f74dae5SSascha Wildner 101*0f74dae5SSascha Wildner c) for FreeBSD 4.x: 102*0f74dae5SSascha Wildner 103*0f74dae5SSascha Wildner # cd /usr/src/sys/i386/conf/ 104*0f74dae5SSascha Wildner # /usr/sbin/config MYKERNEL 105*0f74dae5SSascha Wildner # cd ../../compile/MYKERNEL/ 106*0f74dae5SSascha Wildner # make depend 107*0f74dae5SSascha Wildner # make 108*0f74dae5SSascha Wildner # make install 109*0f74dae5SSascha Wildner 110*0f74dae5SSascha Wildner If the driver was previously configured as an auto-loaded module by 111*0f74dae5SSascha Wildner /boot/defaults/loader.conf, please remove the entry hpt27xx_load="YES" 112*0f74dae5SSascha Wildner from loader.conf to prevent the driver from being loaded twice. 113*0f74dae5SSascha Wildner 114*0f74dae5SSascha Wildner 7) Reboot from the new kernel. 115*0f74dae5SSascha Wildner 116*0f74dae5SSascha Wildner 117*0f74dae5SSascha Wildner3. Build/Load the driver as a kernel module 118*0f74dae5SSascha Wildner------------------------------------------------ 119*0f74dae5SSascha Wildner 120*0f74dae5SSascha Wildner 1) Install kernel source package and building tools. 121*0f74dae5SSascha Wildner 122*0f74dae5SSascha Wildner 2) Extract the driver files under the kernel source tree: 123*0f74dae5SSascha Wildner 124*0f74dae5SSascha Wildner # cd /usr/src/sys/ 125*0f74dae5SSascha Wildner # tar xvzf /your/path/to/hpt27xx-freebsd-src-v1.0-111227.tgz 126*0f74dae5SSascha Wildner 127*0f74dae5SSascha Wildner 128*0f74dae5SSascha Wildner 4) Build the driver module: 129*0f74dae5SSascha Wildner 130*0f74dae5SSascha Wildner # cd modules/hpt27xx 131*0f74dae5SSascha Wildner # make 132*0f74dae5SSascha Wildner 133*0f74dae5SSascha Wildner 5) Copy the driver module to the kernel module directory 134*0f74dae5SSascha Wildner 135*0f74dae5SSascha Wildner For FreeBSD 4.x: 136*0f74dae5SSascha Wildner 137*0f74dae5SSascha Wildner # cp hpt27xx.ko /modules/ 138*0f74dae5SSascha Wildner 139*0f74dae5SSascha Wildner For FreeBSD 5.x/6.x/7.x/8.x/9.x: 140*0f74dae5SSascha Wildner 141*0f74dae5SSascha Wildner # cp hpt27xx.ko /boot/kernel/ 142*0f74dae5SSascha Wildner 143*0f74dae5SSascha Wildner 6) Reboot and load the driver under loader prompt. e.g: 144*0f74dae5SSascha Wildner 145*0f74dae5SSascha Wildner BTX loader 1.00 BTX version is 1.01 146*0f74dae5SSascha Wildner Console: internal video/keyboard 147*0f74dae5SSascha Wildner BIOS driver A: is disk0 148*0f74dae5SSascha Wildner BIOS driver C: is disk2 149*0f74dae5SSascha Wildner BIOS 636kB/74512kB available memory 150*0f74dae5SSascha Wildner 151*0f74dae5SSascha Wildner FreeBSD/i386 bootstrap loader, Revision 0.8 152*0f74dae5SSascha Wildner (mailto:jkh@narf.osd.bsdi.com, Sat Apr 21 08:46:19 GMT 2001) 153*0f74dae5SSascha Wildner Loading /boot/defaults/loader.conf 154*0f74dae5SSascha Wildner /kernel text=0x24f1db data=0x3007ec+0x2062c - 155*0f74dae5SSascha Wildner 156*0f74dae5SSascha Wildner Hit [Enter] to boot immediagely, or any other key for command prompt. 157*0f74dae5SSascha Wildner Booting [kernel] in 9 seconds 158*0f74dae5SSascha Wildner 159*0f74dae5SSascha Wildner <-- press SPACE key here 160*0f74dae5SSascha Wildner Type '?' for a list of commands, 'help' for more detailed help. 161*0f74dae5SSascha Wildner ok load hpt27xx 162*0f74dae5SSascha Wildner /modules/hpt27xx.ko text=0xf571 data=0x2c8+0x254 163*0f74dae5SSascha Wildner ok boot 164*0f74dae5SSascha Wildner 165*0f74dae5SSascha Wildner For FreeBSD 5.x/6.x/7.x/8.x/9.x, you can select 6 on the boot menu to get a loader 166*0f74dae5SSascha Wildner prompt. 167*0f74dae5SSascha Wildner 168*0f74dae5SSascha Wildner 7) You can add a below line into /boot/defaults/loader.conf to load the 169*0f74dae5SSascha Wildner driver automatically: 170*0f74dae5SSascha Wildner 171*0f74dae5SSascha Wildner hpt27xx_load="YES" 172*0f74dae5SSascha Wildner 173*0f74dae5SSascha Wildner Please refer to the installation guide in HighPoint FreeBSD driver release 174*0f74dae5SSascha Wildner package for more information. 175*0f74dae5SSascha Wildner 176*0f74dae5SSascha Wildner 177*0f74dae5SSascha Wildner############################################################################# 178*0f74dae5SSascha WildnerTechnical support and service 179*0f74dae5SSascha Wildner 180*0f74dae5SSascha Wildner If you have questions about installing or using your HighPoint product, 181*0f74dae5SSascha Wildner check the user's guide or readme file first, and you will find answers to 182*0f74dae5SSascha Wildner most of your questions here. If you need further assistance, please 183*0f74dae5SSascha Wildner contact us. We offer the following support and information services: 184*0f74dae5SSascha Wildner 185*0f74dae5SSascha Wildner 1) The HighPoint Web Site provides information on software upgrades, 186*0f74dae5SSascha Wildner answers to common questions, and other topics. The Web Site is 187*0f74dae5SSascha Wildner available from Internet 24 hours a day, 7 days a week, at 188*0f74dae5SSascha Wildner http://www.highpoint-tech.com. 189*0f74dae5SSascha Wildner 190*0f74dae5SSascha Wildner 2) For technical support, send e-mail to support@highpoint-tech.com 191*0f74dae5SSascha Wildner 192*0f74dae5SSascha Wildner NOTE: Before you send an e-mail, please visit our Web Site 193*0f74dae5SSascha Wildner (http://www.highpoint-tech.com) to check if there is a new or 194*0f74dae5SSascha Wildner updated device driver for your system. 195*0f74dae5SSascha Wildner 196*0f74dae5SSascha Wildner$FreeBSD: src/sys/dev/hpt27xx/README,v 1.2 2012/01/15 13:23:33 uqs Exp $ 197