xref: /freebsd/sys/dev/hpt27xx/README (revision 78d14616)
181966bceSXin LIRocketRAID Controller Driver for FreeBSD
2f29c86f1SXin LICopyright (C) 2005-2015 HighPoint Technologies, Inc. All rights reserved.
381966bceSXin LI
481966bceSXin LI#############################################################################
581966bceSXin LIRevision History:
6f29c86f1SXin LI   v1.2.7.1 06/08/2015
7f29c86f1SXin LI   * Add 10.x comment and correct file name in readme.
8f29c86f1SXin LI
9f29c86f1SXin LI   v1.2.7 05/22/2015
10f29c86f1SXin LI   * Support Report Luns command.
11f29c86f1SXin LI
12f29c86f1SXin LI   v1.2.6 04/13/2015
13f29c86f1SXin LI   * Fix a bug that some disks will be dropped when data integrity test over
14f29c86f1SXin LI     one hour on 32bit system.
15f29c86f1SXin LI
16f29c86f1SXin LI   v1.2.5 01/26/2015
17f29c86f1SXin LI    * Fix a bug that failed to verify controller by retrying 8 times.
18f29c86f1SXin LI    * Supported 4Kn drive.
19f29c86f1SXin LI
20f29c86f1SXin LI   v1.2.4 09/29/2014
21f29c86f1SXin LI    * Fix a bug that memory would be corrupted and caused strange system
22f29c86f1SXin LI      behavior when running IO and WebGUI
23f29c86f1SXin LI
24f29c86f1SXin LI   v1.2.3 01/24/2014
25f29c86f1SXin LI    * fixup system crash while write date to raid5.
26f29c86f1SXin LI
27f29c86f1SXin LI   v1.1   07/01/2013
28f29c86f1SXin LI    * Fix 2nd RAID controller can not load as multipath issue.
29f29c86f1SXin LI
30f29c86f1SXin LI   v1.0   12/13/2011
31f29c86f1SXin LI    * First source code release
3281966bceSXin LI
3381966bceSXin LI#############################################################################
3481966bceSXin LI
3581966bceSXin LI1. Overview
3681966bceSXin LI---------------------
3781966bceSXin LI  This package contains FreeBSD driver source code for HighPoint RocketRAID
3881966bceSXin LI  controller, include:
3981966bceSXin LI  SAS Controller: RR271x, RR272x, RR274x, RR276x, RR278x.
4081966bceSXin LI
4181966bceSXin LI  NO WARRANTY
4281966bceSXin LI
4381966bceSXin LI  THE DRIVER SOURCE CODE HIGHPOINT PROVIDED IS FREE OF CHARGE, AND THERE IS
4481966bceSXin LI  NO WARRANTY FOR THE PROGRAM. THERE ARE NO RESTRICTIONS ON THE USE OF THIS
4581966bceSXin LI  FREE SOURCE CODE. HIGHPOINT DOES NOT PROVIDE ANY TECHNICAL SUPPORT IF THE
4681966bceSXin LI  CODE HAS BEEN CHANGED FROM ORIGINAL SOURCE CODE.
4781966bceSXin LI
4881966bceSXin LI  LIMITATION OF LIABILITY
4981966bceSXin LI
5081966bceSXin LI  IN NO EVENT WILL HIGHPOINT BE LIABLE FOR DIRECT, INDIRECT, SPECIAL,
5181966bceSXin LI  INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF OR
5281966bceSXin LI  INABILITY TO USE THIS PRODUCT OR DOCUMENTATION, EVEN IF ADVISED OF THE
5381966bceSXin LI  POSSIBILITY OF SUCH DAMAGES. IN PARTICULAR, HIGHPOINT SHALL NOT HAVE
5481966bceSXin LI  LIABILITY FOR ANY HARDWARE, SOFTWARE, OR DATA STORED USED WITH THE
5581966bceSXin LI  PRODUCT, INCLUDING THE COSTS OF REPAIRING, REPLACING, OR RECOVERING
5681966bceSXin LI  SUCH HARDWARE, OR DATA.
5781966bceSXin LI
5881966bceSXin LI
5981966bceSXin LI2. Rebuild the kernel with HighPoint RocketRAID support
6081966bceSXin LI-----------------------------------------------
6181966bceSXin LI
6281966bceSXin LI  1) Install kernel source package and building tools.
6381966bceSXin LI
6481966bceSXin LI  2) Extract the driver files under the kernel source tree:
6581966bceSXin LI
6681966bceSXin LI     # cd /usr/src/sys/
67f29c86f1SXin LI     # tar xvzf /your/path/to/HPT27xx_FreeBSD_Src_v1.2.7.1_15_06_08.tgz
6881966bceSXin LI
6981966bceSXin LI  3) Update the kernel configuration file to include the HighPoint source.
7081966bceSXin LI     Assume the configure file is GENERIC, and new kernel configure file is
7181966bceSXin LI     MYKERNEL:
7281966bceSXin LI
7381966bceSXin LI     # cd i386/conf          (or amd64/conf for AMD64)
7481966bceSXin LI     # cp GENERIC MYKERNEL
7581966bceSXin LI
7681966bceSXin LI  4) Edit MYKERNEL, and add the following line under "RAID controllers
7781966bceSXin LI     interfaced to the SCSI subsystem":
7881966bceSXin LI
7981966bceSXin LI          device  "hpt27xx"   #HighPoint RocketRAID
8081966bceSXin LI
8181966bceSXin LI  5) For i386 system, edit /usr/src/sys/conf/files.i386 and append the lines
8281966bceSXin LI     shown below:
8381966bceSXin LI
8481966bceSXin LI          hpt27xx_lib.o optional    hpt27xx  \
8581966bceSXin LI              dependency  "$S/dev/hpt27xx/i386-elf.hpt27xx_lib.o.uu" \
8681966bceSXin LI              compile-with    "uudecode < $S/dev/hpt27xx/i386-elf.hpt27xx_lib.o.uu" \
8781966bceSXin LI              no-implicit-rule
8881966bceSXin LI
89f29c86f1SXin LI          dev/hpt27xx/hpt27xx_os_bsd.c      optional        hpt27xx
90f29c86f1SXin LI          dev/hpt27xx/hpt27xx_osm_bsd.c     optional        hpt27xx
9181966bceSXin LI          dev/hpt27xx/hpt27xx_config.c      optional        hpt27xx
9281966bceSXin LI
9381966bceSXin LI     For amd64 system, edit /usr/src/sys/conf/files.amd64 and append the lines
9481966bceSXin LI     shown below:
9581966bceSXin LI
9681966bceSXin LI          hpt27xx_lib.o optional    hpt27xx  \
9781966bceSXin LI              dependency  "$S/dev/hpt27xx/amd64-elf.hpt27xx_lib.o.uu" \
9881966bceSXin LI              compile-with    "uudecode < $S/dev/hpt27xx/amd64-elf.hpt27xx_lib.o.uu" \
9981966bceSXin LI              no-implicit-rule
10081966bceSXin LI
101f29c86f1SXin LI          dev/hpt27xx/hpt27xx_os_bsd.c      optional        hpt27xx
102f29c86f1SXin LI          dev/hpt27xx/hpt27xx_osm_bsd.c     optional        hpt27xx
10381966bceSXin LI          dev/hpt27xx/hpt27xx_config.c      optional        hpt27xx
10481966bceSXin LI
10581966bceSXin LI  6) Rebuild and install the kernel:
10681966bceSXin LI
107f29c86f1SXin LI     a) for FreeBSD 5.x-i386/6.x-i386/7.x-i386/8.x-i386/9.x-i386/10.x-i386:
10881966bceSXin LI
10981966bceSXin LI        # cd /usr/src/sys/i386/conf/
11081966bceSXin LI        # /usr/sbin/config MYKERNEL
11181966bceSXin LI        # cd ../compile/MYKERNEL/
11281966bceSXin LI        # make depend
11381966bceSXin LI        # make
11481966bceSXin LI        # make install
11581966bceSXin LI
116f29c86f1SXin LI     b) for FreeBSD 5.x-amd64/6.x-amd64/7.x-amd64/8.x-amd64/9.x-amd64/10.x-amd64:
11781966bceSXin LI
11881966bceSXin LI        # cd /usr/src/sys/amd64/conf/
11981966bceSXin LI        # /usr/sbin/config MYKERNEL
12081966bceSXin LI        # cd ../compile/MYKERNEL/
12181966bceSXin LI        # make depend
12281966bceSXin LI        # make
12381966bceSXin LI        # make install
12481966bceSXin LI
12581966bceSXin LI     c) for FreeBSD 4.x:
12681966bceSXin LI
12781966bceSXin LI        # cd /usr/src/sys/i386/conf/
12881966bceSXin LI        # /usr/sbin/config MYKERNEL
12981966bceSXin LI        # cd ../../compile/MYKERNEL/
13081966bceSXin LI        # make depend
13181966bceSXin LI        # make
13281966bceSXin LI        # make install
13381966bceSXin LI
13481966bceSXin LI    If the driver was previously configured as an auto-loaded module by
13581966bceSXin LI    /boot/defaults/loader.conf, please remove the entry hpt27xx_load="YES"
13681966bceSXin LI    from loader.conf to prevent the driver from being loaded twice.
13781966bceSXin LI
13881966bceSXin LI  7) Reboot from the new kernel.
13981966bceSXin LI
14081966bceSXin LI
14181966bceSXin LI3. Build/Load the driver as a kernel module
14281966bceSXin LI------------------------------------------------
14381966bceSXin LI
14481966bceSXin LI  1) Install kernel source package and building tools.
14581966bceSXin LI
14681966bceSXin LI  2) Extract the driver files under the kernel source tree:
14781966bceSXin LI
14881966bceSXin LI     # cd /usr/src/sys/
149f29c86f1SXin LI     # tar xvzf /your/path/to/HPT27xx_FreeBSD_Src_v1.2.7.1_15_06_08.tgz
15081966bceSXin LI
15181966bceSXin LI
15281966bceSXin LI  4) Build the driver module:
15381966bceSXin LI
15481966bceSXin LI     # cd modules/hpt27xx
15581966bceSXin LI     # make
15681966bceSXin LI
15781966bceSXin LI  5) Copy the driver module to the kernel module directory
15881966bceSXin LI
15981966bceSXin LI     For FreeBSD 4.x:
16081966bceSXin LI
16181966bceSXin LI     # cp hpt27xx.ko /modules/
16281966bceSXin LI
163f29c86f1SXin LI     For FreeBSD 5.x/6.x/7.x/8.x/9.x/10.x:
16481966bceSXin LI
16581966bceSXin LI     # cp hpt27xx.ko /boot/kernel/
16681966bceSXin LI
16781966bceSXin LI  6) Reboot and load the driver under loader prompt. e.g:
16881966bceSXin LI
16981966bceSXin LI        BTX loader 1.00  BTX version is 1.01
17081966bceSXin LI        Console: internal video/keyboard
17181966bceSXin LI        BIOS driver A: is disk0
17281966bceSXin LI        BIOS driver C: is disk2
17381966bceSXin LI        BIOS 636kB/74512kB available memory
17481966bceSXin LI
17581966bceSXin LI        FreeBSD/i386 bootstrap loader, Revision 0.8
17681966bceSXin LI        (mailto:jkh@narf.osd.bsdi.com, Sat Apr 21 08:46:19 GMT 2001)
17781966bceSXin LI        Loading /boot/defaults/loader.conf
17881966bceSXin LI        /kernel text=0x24f1db data=0x3007ec+0x2062c -
17981966bceSXin LI
18081966bceSXin LI        Hit [Enter] to boot immediagely, or any other key for command prompt.
181004a39cdSUlrich Spörlein        Booting [kernel] in 9 seconds
18281966bceSXin LI
18381966bceSXin LI         <-- press SPACE key here
18481966bceSXin LI        Type '?' for a list of commands, 'help' for more detailed help.
18581966bceSXin LI        ok load hpt27xx
18681966bceSXin LI        /modules/hpt27xx.ko text=0xf571 data=0x2c8+0x254
18781966bceSXin LI        ok boot
18881966bceSXin LI
189f29c86f1SXin LI     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
19081966bceSXin LI     prompt.
19181966bceSXin LI
19281966bceSXin LI  7) You can add a below line into /boot/defaults/loader.conf to load the
19381966bceSXin LI     driver automatically:
19481966bceSXin LI
19581966bceSXin LI           hpt27xx_load="YES"
19681966bceSXin LI
19781966bceSXin LI     Please refer to the installation guide in HighPoint FreeBSD driver release
19881966bceSXin LI     package for more information.
19981966bceSXin LI
20081966bceSXin LI
20181966bceSXin LI#############################################################################
20281966bceSXin LITechnical support and service
20381966bceSXin LI
20481966bceSXin LI  If you have questions about installing or using your HighPoint product,
20581966bceSXin LI  check the user's guide or readme file first, and you will find answers to
20681966bceSXin LI  most of your questions here. If you need further assistance, please
20781966bceSXin LI  contact us. We offer the following support and information services:
20881966bceSXin LI
20981966bceSXin LI  1)  The HighPoint Web Site provides information on software upgrades,
21081966bceSXin LI      answers to common questions, and other topics. The Web Site is
21181966bceSXin LI      available from Internet 24 hours a day, 7 days a week, at
21281966bceSXin LI      http://www.highpoint-tech.com.
21381966bceSXin LI
21481966bceSXin LI  2)  For technical support, send e-mail to support@highpoint-tech.com
21581966bceSXin LI
21681966bceSXin LI  NOTE: Before you send an e-mail, please visit our Web Site
21781966bceSXin LI        (http://www.highpoint-tech.com) to check if there is a new or
21881966bceSXin LI        updated device driver for your system.
219