[parisc-linux-cvs] linux grundler

Grant Grundler parisc-linux@lists.parisc-linux.org
Sun, 16 Mar 2003 18:13:22 -0700 (MST)


CVSROOT:	/var/cvs
Module name:	linux
Changes by:	grundler	03/03/16 18:13:22

Modified files:
	.              : Makefile 
	drivers/scsi   : Config.in Makefile 
Added files:
	drivers/scsi/qla2xxx: Config.in Makefile README.qla2x00 
	                      SUPPORTED_KERNEL_VERSION.txt exioct.h 
	                      exioctln.h inioct.h listops.h ql2100_fw.h 
	                      ql2200_fw.h ql2200ip_fw.h ql2300_fw.h 
	                      ql2300ip_fw.h qla2100.c qla2200.c 
	                      qla2300.c qla2x00.c qla2x00.h 
	                      qla2x00_ioctl.c qla_cfg.c qla_cfg.h 
	                      qla_cfgln.c qla_debug.h qla_fo.c 
	                      qla_fo.cfg qla_fo.h qla_gbl.h qla_inioct.c 
	                      qla_ip.c qla_ip.h qla_mbx.c qla_mbx.h 
	                      qla_settings.h qla_vendor.c qla_version.h 
	                      qlfo.h qlfolimits.h qlfoln.h release.txt 
	                      revision.notes 

Log message:
2.4.20-pa31 NEW DRIVER: qla2xxx v6.0.4

I've tested this driver on ia64 with qla2342 HBA.
Passed 64 hours stress/functional testing in two arbitrated loops.

On parisc, driver loads (and unloads), but using same HBA complains:
scsi(4): Cable is unplugged...

even though the cable is connected to the same hub.
It's possible something is wrong with the transciever but unlikely.

I've made one modification to the driver to avoid assembler complaints
about alignment. Use of be64_to_cpup() to swap the order of an 8 byte
array (port_entry->name[]) looks wrong to me given that no where in the
code is the array ever referenced as a pointer *and* the destination
(device.name[]) is not 8-byte aligned. Using a "for()" loop to copy
and swap the order now since this doesn't seem endian related to me.
Change is in qla2x00.c and marked with "#if 0 /* GGG */".