ARECA SATA/SAS RAID CONTROLLER
				   ARC11XX/ARC12XX/13XX/16XX/18XX
		S.u.S.E. Linux Enterprise Server 10 i386, x86_64, kernel 2.6.16.21-0.8


==============  Driver User's Guide  ==============
Linux SCSI driver technical support
Mail address:support@areca.com.tw
Tel: 886-2-8797-4060
Fax: 886-2-8797-5970
Web site: www.areca.com.tw
====================================================



***************************************************************************
**1. Release Contents                                             *********
***************************************************************************

I. readme.txt - The readme file for ARC11XX/ARC12XX/ARC13XX/ARC16XX/ARC18XX Linux scsi raid driver  

II. arcmsr.1.20.0x.15.zip - Source code (arcmsr.c, arcmsr.h, Makefile)

III. install.zip - Ziped dirver modules disk (dd) image file "driver.img"


****************************************************************************
**2. S.u.S.E. Linux Enterprise Server 10 Installation              *********
****************************************************************************

A. Before Installation - Under DOS/Windows environment

	a. Unzip "install.zip"

		X:\PATH\pkunzip.exe install.zip =>> driver.img
			

	b. Dump it into a floppy disk.

		X:\PATH\rawrite.exe driver.img A:

		Tips: You can get rawrite.exe from SLES Installation CD1 or DVD 

B. S.u.S.E Linux installation start...boot from CD or DVD

	a. Press "F5" select "Yes".
		
	b. Select "Installation" to install the S.u.S.E. Linux Enterprise Server 10 
		
	c. Insert the driver disk to floppy drive.
		
	d. When the message: "Please choose the driver update medium" pop-up, it means 
Now, your areca raid driver is working for your raid volume. And you can see all your raid volumes appear on "SuSE medium list". Please click "Back" for back to normal installation console.

	e. Please follow SuSE's installation procedure to install your system.

	P.S. : Once you attempt to update your kernel. You should work on old kernel and install new kernel source tree. Please follow linux kernel make procedure and add areca raid driver source for new kernel build.
			
***************************************************************************
** 3. Installing raid driver on an Existing System                 ********
***************************************************************************
CASE 1: if you do not attempt to compile driver source

	Insert the driver disk to floppy drive.
	# mount /media/floppy
	# cd /media/floppy
	# sh patch.x86_64( or sh patch.i386 )
	# cd /
	# umount /media/floppy
	# reboot

CASE 2: if you need to compile linux kernel drivers source

P.S: You must install your Linux system by developmental environment and include kernel source first, in other words you should select the adequate packages on the menu list. First of all, please copy "arcmsr" source code folder to /usr/src/linux/drivers/scsi/ 
	
	There are two ways to build the arcmsr driver.

	A. In-tree build
    	================

		a. Copy the `arcmsr' directory to $KSRC/drivers/scsi, then manually edit the following two files to add the options necessary to build the driver:

        	b. Add the following line to $KSRC/drivers/scsi/Makefile:		
		@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
        
		obj-$(CONFIG_SCSI_ARCMSR)       += arcmsr/        
        
		@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

       		c. Add the following block to $KSRC/drivers/scsi/Kconfig:		
        		@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

		config SCSI_ARCMSR
	     	tristate "ARECA ARC11X0[PCI-X]/ARC12X0[PCI-EXPRESS] SATA-RAID support"
	     	depends on  PCI && SCSI
	     	help
	     	This driver supports all of ARECA's SATA RAID controllers cards.
	     	This is an ARECA maintained driver by Erich Chen. If you have any
	     	problems, please mail to <support@areca.com.tw>, please contact < http://www.areca.com.tw >
		< ftp://ftp.areca.com.tw >
		To compile this driver as a module, choose M here: the
	     	module will be called arcmsr.

        		config SCSI_ARCMSR_MSI
	     	bool "Use PCI message signal interrupt"
	     	depends on PCI_MSI && SCSI_ARCMSR
	     	default n
	     	help
	     	If you say Y here.  You will enable PCI Message signaled Interrupts
	     	function, but some machines may have problems.  If you get
	     	abort command on driver initialize, you have to answer Y here.
	     	If the IRQ problem even worse, please report the problem to the maintainer.      
  
        		@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
		
		d.
		# cd /usr/src/linux
		# make mrproper
		# make menuconfig(or make xconfig, make gconfig, make menuconfig)
             
		e. Now configure and build your kernel as you usually do, paying attention to  select the Device Drivers -> SCSI device support -> SCSI low-level drivers -> ARECA SATA RAID Host Controller option.
        	
		f. Please do "Load an Alternate Configuration File" from /boot/config-2.6.16.21-0.8-xxxx....
		
		g. If you need to change your own kernel version(Release number,Configuration), Please from entry "Build options".......
		
		h. Please check ARECA RAID driver.... "ARECA ARC11XX/ARC12XX/ARC13XX/ARC16XX/ARC18XX SATA/SAS RAID support"

		i.
		# make
		# make modules_install

			Case 1: if your system is single processor and no hyper-threading
				# cp -f ./arch/i386(or x86_64)/boot/bzImage /boot/vmlinuz-2.6.16.21-0.8-default

			Case 2: if your system is multi processors or hyper-threading
				# cp -f ./arch/i386(or x86_64)/boot/bzImage /boot/vmlinuz-2.6.16.21-0.8-smp
 
	B. Out-of-tree build
    	====================

                This option is particularly useful if you are running a stock kernel supplied
                by your Linux distributor, or for other reason do not want to perform a full
                kernel build. Please note that this way you will only be able to build a module
                version of the arcmsr driver; also note that you will need at least the headers
                and configuration file your current kernel was built with.

                 Provided that you meet all the above prerequisites, building the arcmsr driver
                 module is done with the following command:

	# cd arcmsr 
                # make -C /lib/modules/`uname -r`/build CONFIG_SCSI_ARCMSR=m SUBDIRS=$PWD modules 
                # insmod arcmsr.ko

					
	C. Make an initrd image:
    	========================

		a. Edit file /etc/sysconfig/kernel
			
        	@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
		..
		...
		INITRD_MODULES="arcmsr reiserfs"  # add this context description
		...
		..
        	@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

		b.
		# mkinitrd
		# reboot
		
		P.S: If you do'nt overwrite default kernel. You can edit /boot/grub/menu.lst. You can do your own kernel and ramdisk image in case that you have made incorrect kernel.