The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/dev/hptnr/README

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 Rocket Controller Driver for FreeBSD
    2 Copyright (C) 2015 HighPoint Technologies, Inc. All rights reserved.
    3 
    4 #############################################################################
    5 Revision History:
    6 
    7    v1.1.4 2015-06-09
    8      * Fix a bug that FailLED was not initialized properly.
    9 
   10    v1.1.3 2015-05-19
   11      * Support Report Luns command.
   12 
   13    v1.1.2 2015-05-05
   14      * Fix a bug that report wrong physical sector size for 512e HDD.
   15 
   16    v1.1.1 2015-03-26
   17      * Support 4Kn drive.
   18      * Change the SCSI target ID of the disk to be the index of physical connetion to the HBA.
   19      * Support staggered drive spin up.
   20      * Fix a bug that command would be timeout because of improper interrupt service routine.
   21      * Error handling to avoid scsi command lost which caused system hang up.
   22      * Fix a bug that fail to get the devcie's serial number via FreeNAS WebGUI.
   23 
   24    v1.0.1 2014-8-19
   25      * Do not retry the command and reset the disk when failed to enable or 
   26        disable spin up feature.
   27      * Fix up a bug that disk failed to probe if driver failed to access the
   28        10th LBA.
   29      * Fix a bug that request timeout but it has been completed in certain 
   30        cases.
   31      * Support smartmontool for R750.
   32 
   33    v1.0 2013-7-3
   34         First source code release
   35 
   36 #############################################################################
   37 
   38 1. Overview
   39 ---------------------
   40   This package contains FreeBSD driver source code for HighPoint Rocket 
   41   controller, include:
   42   SATA Controller: R750, DC7280.
   43 
   44   NO WARRANTY
   45 
   46   THE DRIVER SOURCE CODE HIGHPOINT PROVIDED IS FREE OF CHARGE, AND THERE IS
   47   NO WARRANTY FOR THE PROGRAM. THERE ARE NO RESTRICTIONS ON THE USE OF THIS
   48   FREE SOURCE CODE. HIGHPOINT DOES NOT PROVIDE ANY TECHNICAL SUPPORT IF THE
   49   CODE HAS BEEN CHANGED FROM ORIGINAL SOURCE CODE.
   50 
   51   LIMITATION OF LIABILITY
   52 
   53   IN NO EVENT WILL HIGHPOINT BE LIABLE FOR DIRECT, INDIRECT, SPECIAL,
   54   INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF OR
   55   INABILITY TO USE THIS PRODUCT OR DOCUMENTATION, EVEN IF ADVISED OF THE
   56   POSSIBILITY OF SUCH DAMAGES. IN PARTICULAR, HIGHPOINT SHALL NOT HAVE
   57   LIABILITY FOR ANY HARDWARE, SOFTWARE, OR DATA STORED USED WITH THE
   58   PRODUCT, INCLUDING THE COSTS OF REPAIRING, REPLACING, OR RECOVERING
   59   SUCH HARDWARE, OR DATA.
   60 
   61 
   62 2. Rebuild the kernel with HighPoint Rocket support
   63 -----------------------------------------------
   64 
   65   1) Install kernel source package and building tools. 
   66   
   67   2) Extract the driver files under the kernel source tree:
   68 
   69      # cd /usr/src/sys/
   70      # tar xvzf /your/path/to/HPTNR_FreeBSD_Src_1.x.x_xx_xx_xx.tgz
   71 
   72   3) Update the kernel configuration file to include the HighPoint source.
   73      Assume the configure file is GENERIC, and new kernel configure file is 
   74      MYKERNEL:
   75 
   76      # cd i386/conf          (or amd64/conf for AMD64)
   77      # cp GENERIC MYKERNEL
   78 
   79   4) Edit MYKERNEL, and add the following line under "RAID controllers 
   80      interfaced to the SCSI subsystem":
   81 
   82           device  "hptnr"   #HighPoint Rocket
   83 
   84   5) For i386 system, edit /usr/src/sys/conf/files.i386 and append the lines
   85      shown below:
   86 
   87           hptnr_lib.o optional    hptnr  \
   88               dependency  "$S/dev/hptnr/i386-elf.hptnr_lib.o.uu" \
   89               compile-with    "uudecode < $S/dev/hptnr/i386-elf.hptnr_lib.o.uu" \
   90               no-implicit-rule
   91 
   92           dev/hptnr/hptnr_os_bsd.c      optional        hptnr
   93           dev/hptnr/hptnr_osm_bsd.c     optional        hptnr
   94           dev/hptnr/hptnr_config.c      optional        hptnr
   95 
   96      For amd64 system, edit /usr/src/sys/conf/files.amd64 and append the lines
   97      shown below:
   98 
   99           hptnr_lib.o optional    hptnr  \
  100               dependency  "$S/dev/hptnr/amd64-elf.hptnr_lib.o.uu" \
  101               compile-with    "uudecode < $S/dev/hptnr/amd64-elf.hptnr_lib.o.uu" \
  102               no-implicit-rule
  103 
  104           dev/hptnr/hptnr_os_bsd.c      optional        hptnr
  105           dev/hptnr/hptnr_osm_bsd.c     optional        hptnr
  106           dev/hptnr/hptnr_config.c      optional        hptnr
  107 
  108   6) Rebuild and install the kernel:
  109 
  110      a) for FreeBSD 5.x-i386/6.x-i386/7.x-i386/8.x-i386/9.x-i386/10.x-i386:
  111      
  112         # cd /usr/src/sys/i386/conf/
  113         # /usr/sbin/config MYKERNEL
  114         # cd ../compile/MYKERNEL/
  115         # make depend
  116         # make 
  117         # make install
  118 
  119      b) for FreeBSD 5.x-amd64/6.x-amd64/7.x-amd64/8.x-amd64/9.x-amd64/10.x-amd64:
  120 
  121         # cd /usr/src/sys/amd64/conf/
  122         # /usr/sbin/config MYKERNEL
  123         # cd ../compile/MYKERNEL/
  124         # make depend
  125         # make 
  126         # make install
  127 
  128      c) for FreeBSD 4.x:
  129      
  130         # cd /usr/src/sys/i386/conf/
  131         # /usr/sbin/config MYKERNEL
  132         # cd ../../compile/MYKERNEL/
  133         # make depend
  134         # make 
  135         # make install
  136 
  137     If the driver was previously configured as an auto-loaded module by
  138     /boot/defaults/loader.conf, please remove the entry hptnr_load="YES"
  139     from loader.conf to prevent the driver from being loaded twice.
  140     
  141   7) Reboot from the new kernel.
  142 
  143 
  144 3. Build/Load the driver as a kernel module
  145 ------------------------------------------------
  146 
  147   1) Install kernel source package and building tools. 
  148   
  149   2) Extract the driver files under the kernel source tree:
  150     
  151      # cd /usr/src/sys/
  152      # tar xvzf /your/path/to/HPTNR_FreeBSD_Src_1.x.x_xx_xx_xx.tgz
  153 
  154 
  155   4) Build the driver module:
  156     
  157      # cd modules/hptnr
  158      # make
  159 
  160   5) Copy the driver module to the kernel module directory
  161 
  162      For FreeBSD 4.x:
  163      
  164      # cp hptnr.ko /modules/
  165 
  166      For FreeBSD 5.x/6.x/7.x/8.x/9.x/10.x:
  167     
  168      # cp hptnr.ko /boot/kernel/
  169 
  170   6) Reboot and load the driver under loader prompt. e.g:
  171 
  172         BTX loader 1.00  BTX version is 1.01
  173         Console: internal video/keyboard
  174         BIOS driver A: is disk0
  175         BIOS driver C: is disk2
  176         BIOS 636kB/74512kB available memory
  177         
  178         FreeBSD/i386 bootstrap loader, Revision 0.8
  179         (mailto:jkh@narf.osd.bsdi.com, Sat Apr 21 08:46:19 GMT 2001)
  180         Loading /boot/defaults/loader.conf
  181         /kernel text=0x24f1db data=0x3007ec+0x2062c -
  182         
  183         Hit [Enter] to boot immediagely, or any other key for command prompt.
  184         Booting [kernel] in 9 seconds
  185         
  186          <-- press SPACE key here 
  187         Type '?' for a list of commands, 'help' for more detailed help.
  188         ok load hptnr
  189         /modules/hptnr.ko text=0xf571 data=0x2c8+0x254
  190         ok boot
  191         
  192      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
  193      prompt.
  194   
  195   7) You can add a below line into /boot/defaults/loader.conf to load the
  196      driver automatically:
  197     
  198            hptnr_load="YES"
  199     
  200      Please refer to the installation guide in HighPoint FreeBSD driver release 
  201      package for more information.
  202      
  203 
  204 #############################################################################
  205 Technical support and service
  206 
  207   If you have questions about installing or using your HighPoint product,
  208   check the user's guide or readme file first, and you will find answers to
  209   most of your questions here. If you need further assistance, please
  210   contact us. We offer the following support and information services:
  211 
  212   1)  The HighPoint Web Site provides information on software upgrades,
  213       answers to common questions, and other topics. The Web Site is
  214       available from Internet 24 hours a day, 7 days a week, at
  215       http://www.highpoint-tech.com.
  216 
  217   2)  For technical support, send e-mail to support@highpoint-tech.com
  218 
  219   NOTE: Before you send an e-mail, please visit our Web Site
  220         (http://www.highpoint-tech.com) to check if there is a new or 
  221         updated device driver for your system.
  222 
  223 $FreeBSD$

Cache object: 0132cef1f7700971bc033b4776355093


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.