ARECA SATA RAID CONTROLLER ARC11XX/ARC12XX , Driver Ver. 1.20.0X.12 RedHat Linux Advance Server 3.0 Update 5, x86_64 edition, kernel 2.4.21-32.EL =================== Driver User's Guide ======================= Linux SCSI driver technical support mail address: erich@areca.com.tw Tel: 886-2-8797-4060 Ext.203 Fax: 886-2-8797-5970 Web site: www.areca.com.tw ================================================================= ********************************************************************** ** 1. Contents ** ********************************************************************** readme.txt - (This file)The readme file for ARC11XX/ARC12XX RedHat Linux scsi raid driver arcmsr.1.20.0X.12.zip - Source code (arcmsr.c, arcmsr.h, Makefile) install.zip - Ziped dirver disk(dd) image file driver.img ********************************************************************** ** 2. First-time installation ** ********************************************************************** A. Before Installation - Under DOS/Windows environment a. Unzip driver disk X:\PATH\pkunzip.exe install-xxxx.zip =>> driver.img b. Dump it into a floppy disk. X:\PATH\rawrite.exe driver.img A: Tips: You can get rawrite.exe from RedHat Enterprise Linux Advance Server 3.0 installation CD #1 "\dosutils" directory. - Under Unix enviroment a. # unzip install.zip b. # dd if=driver.img of=/dev/fd0 B. Installation a. Booting from Installation CDROM #1 or boot disk made by yourself(boot.img is under \images directroy of Installation disk one) b. On installation screen, a prompted lable "boot:" will appear at the bottom of the screen. Press c. When [Warning] message appeared: *********************************************************************************** ** No hard drives have been found. ** You probably need to manually choose device drivers for installation to succeed. ** Would like to select drivers now? *********************************************************************************** You need to do something here ...... insert driver disk (dump from driver.img) into your floppy drive and Press "Ctl+Alt+F2" switch to new console for load "ARECA RAID CONTROLLER DRIVER". #mkdir /floppy #mount /dev/fd0 /floppy #ls /floppy #insmod /floppy/2.4.21-32.EL/arcmsr.o #dmesg ;; now you can see all attached RAID VOLUME on installation system ...... than Press Ctl+Alt+F1 back to [Warning] page: Say "No" here d. Driver of arcmsr should be loaded into kernel. The kernel will find RAID Volume connected to you raid card, and continue installing your system... When installation message: "Congratulations, the installation is complete..... ", You need to push "Ctrl + Alt + F2" again and do something for completely system installation. ; Depended on your CPU model, copy the properly arcmsr module : Case 1. if your system is Intel EM64T #cp /floppy/2.4.21-32.EL/arcmsr.o /mnt/sysimage/lib/modules/2.4.21-32.EL/kernel/drivers/scsi Case 2. if your system is AMD64, Single Processor #cp /floppy/2.4.21-32.EL/amd64/arcmsr.o /mnt/sysimage/lib/modules/2.4.21-32.EL/kernel/drivers/scsi Case 3. if your system is AMD64, Dual Core or SMP #cp /floppy/2.4.21-32.ELsmp/amd64/arcmsr.o /mnt/sysimage/lib/modules/2.4.21-32.ELsmp/kernel/drivers/scsi #ls /mnt/sysimage/lib/modules/2.4.21-32.EL/kernel/drivers/scsi (EM64T or AMD64 single processor) or #ls /mnt/sysimage/lib/modules/2.4.21-32.ELsmp/kernel/drivers/scsi (AMD64 Dual Core or SMP) ;You need make sure that "arcmsr.o file copy" has been done. #chroot /mnt/sysimage ; use "vi" edit file /lib/modules/2.4.21-32.EL/modules.dep add ==> /lib/modules/2.4.21-32.EL/kernel/drivers/scsi/arcmsr.o: /lib/modules/2.4.21-32.EL/kernel/drivers/scsi/scsi_mod.o ; add this context description into /etc/modules.conf add ==> alias scsi_hostadapter arcmsr ; Depended on your CPU model, Build up a new initrd image : Case 1. if your system is Intel EM64T or AMD64(Single Processor) # /sbin/mkinitrd -f -v /boot/initrd-2.4.21-32.EL.img 2.4.21-32.EL Case 2. if your system is AMD64, Dual Core or SMP # /sbin/mkinitrd -f -v /boot/initrd-2.4.21-32.ELsmp.img 2.4.21-32.ELsmp Than, push "Ctrl + Alt + F7" return to installation Graphic Mode..... e. Please push "Exit" button for system reboot to finish system installation. ********************************************************************** ** 3. Installing raid driver on an Existing System. ** ********************************************************************** CASE 1: if you do not attempt to compile driver source $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$ extract arcmsr.o from driver disk $$ $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ insert driver disk (dump from driver.img) into your floppy drive # mount /dev/fd0 /mnt # cp /mnt/2.4.21-32.EL/arcmsr.o /tmp # cd /tmp You can use insmod to install ARECA RAID driver arcmsr.o manually # insmod ./arcmsr.o or ; Depended on your CPU model, copy the properly arcmsr module : Case 1. if your system is Intel EM64T #cp /mnt/2.4.21-32.EL/arcmsr.o /lib/modules/2.4.21-32.EL/kernel/drivers/scsi Case 2. if your system is AMD64, Single Processor #cp /mnt/2.4.21-32.EL/amd64/arcmsr.o /lib/modules/2.4.21-32.EL/kernel/drivers/scsi Case 3. if your system is AMD64, Dual Core or SMP #cp /mnt/2.4.21-32.ELsmp/amd64/arcmsr.o /lib/modules/2.4.21-32.ELsmp/kernel/drivers/scsi Make new initrd image An initrd image is needed for loading your SCSI module at boot time. So you need update your initrd image..... Insert and add this context description into /etc/modules.conf Example: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ ...... @ alias scsi_hostadapter arcmsr <----add this context description @ ...... @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Build up a new initrd image. we assum your kernel version is 2.4.21-32.EL. # mkinitrd -f -v /boot/initrd-2.4.21-32.EL.custom.img 2.4.21-32.EL Insert and add this context description into /boot/grub/grub.conf Example: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ ...... @ title Red Hat Linux (2.4.21-32.EL) @ root (hd0,0) @ kernel /vmlinuz-2.4.21-32.EL ro root=/dev/sda2 @ initrd /initrd-2.4.21-32.EL.img @ @ title Red Hat Linux (2.4.21-32.EL)custom <----add this context description @ root (hd0,0) <----add this context description @ kernel /vmlinuz-2.4.21-32.EL ro root=/dev/sda2 <----add this context description @ initrd /initrd-2.4.21-32.EL.custom.img <----add this context description @ ...... @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ CASE 2: if you need to compile linux kernel drivers source $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$ Method for recompile linux kernel source kernel $$ $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ A. Prepare for make new kernel and drivers a. You need create a short link 'linux' in /usr/src directory first. #ln -s linux-2.4 linux b. unzip arcmsr.1.20.0X.12.zip c. Depended on your kernel version, copy the properly folder (arcmsr) to /usr/src/linux/drivers/scsi B. Modify make and config files In /usr/src/linux/drivers/scsi/Makefile @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ ... @ .... @ subdir-$(CONFIG_SCSI_ARCMSR) += arcmsr @ obj-$(CONFIG_SCSI_ARCMSR) += arcmsr/arcmsr.o @ ... @ .. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ In /usr/src/linux/drivers/scsi/Config.in @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ ... @ .... @ if [ "$CONFIG_PCI" = "y" ]; then @ dep_tristate 'ARECA ARC11X0[PCI-X]/ARC12X0[PCI-EXPRESS] SATA-RAID support' CONFIG_SCSI_ARCMSR $CONFIG_SCSI @ fi @ .... @ ... @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ C. Make new kernel # cd /usr/src/linux-2.4 # make mrproper # make config (or make oldconfig,xconfig...) Tips: Say "M" means configure this driver as a module. ;When prompt for "SCSI support" say "Y" or "M". ;When prompt for "SCSI disk support" say "Y" or "M". ;When prompt for "SCSI tape support" say "Y" or "M". ;When prompt for "SCSI CD-ROM support" say "Y" or "M". ;When prompt for "SCSI generic support" say "Y" or "M". ;When prompt for "ARECA ARC11X0[PCI-X]/ARC12X0[PCI-EXPRESS] SATA-RAID support" ;say "Y" or "M" # make dep # make clean # make bzImage # make modules # make modules_install # cp ./arch/x86_64/boot/bzImage /boot D. Modify boot loader configuration files. ################################# ## If you using LILO to boot up## ################################# I. Edit /etc/lilo.conf file as follow... Example: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ ... @ image = /boot/vmlinuz @ root = /dev/sda1 @ label = linux @ read-only @ @ image = /boot/bzImage <--- add this context description @ root = /dev/sda1 <--- add this context description @ label = arcmsr <--- add this context description @ read-only <--- add this context description @ ... @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ II. Make an initrd image NOTICE: If your low-level drivers are module, going on, otherwise, jump to step III An initrd image is needed for loading your SCSI module at boot time. So you need make your own initrd image..... Insert a add this context description into /etc/modules.conf Example: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ ...... @ alias scsi_hostadapter arcmsr <---- add this context description @ ...... @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Build up a new initrd image. we assum your kernel version is 2.4.21-32.ELcustom. # mkinitrd -f -v /boot/initrd-2.4.21-32.ELcustom.raid.img 2.4.21-32.ELcustom Insert a add this context description into /etc/lilo.conf Example: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ ... @ image = /boot/vmlinuz @ root = /dev/sda1 @ label = linux @ read-only @ @ image = /boot/bzImage @ root = /dev/sda1 @ label = arcmsr @ read-only @ initrd = /boot/initrd-2.4.21-32.ELcustom.raid.img <---add this context description @ ... @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ III. Update lilo # lilo ################################## ## If you using Grub to boot up ## ################################## I. Modify /boot/grub/grub.conf Example: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ ...... @ title Red Hat Linux (2.4.21-32.EL) @ root (hd0,0) @ kernel /vmlinuz-2.4.21-32.EL ro root=/dev/sda2 @ initrd /initrd-2.4.21-32.EL.img @ @ title Red Hat Linux (2.4.21-32.EL)custom <----add this context description @ root (hd0,0) <----add this context description @ kernel /bzImage ro root=/dev/sda2 <----add this context description @ ...... @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ II. Make an initrd image NOTICE: If your low-level drivers are module, go through, otherwise, skip. An initrd image is needed for loading your SCSI module at boot time. So you need make your own initrd image..... Insert a add this context description into /etc/modules.conf Example: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ ...... @ alias scsi_hostadapter arcmsr <---- add this context description @ ...... @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Build up a new initrd image. we assum your kernel version is 2.4.21-32.ELcustom. # mkinitrd -f -v /boot/initrd-2.4.21-32.ELcustom.raid.img 2.4.21-32.ELcustom Insert a add this context description into /boot/grub/grub.conf Example: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ ...... @ title Red Hat Linux (2.4.21-32.EL) @ root (hd0,0) @ kernel /vmlinuz-2.4.21-32.EL ro root=/dev/sda2 @ initrd /initrd-2.4.21-32.EL.img @ @ title Red Hat Linux (2.4.21-32.EL)custom @ root (hd0,0) @ kernel /bzImage ro root=/dev/sda2 @ initrd /initrd-2.4.21-32.ELcustom.raid.img <----add this context description @ ...... @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ E. #reboot