public inbox for linux-scsi@vger.kernel.org
 help / color / mirror / Atom feed
* cpqfc
@ 2005-12-01 15:03 lance dillon
  2005-12-01 15:16 ` cpqfc Rolf Eike Beer
  0 siblings, 1 reply; 7+ messages in thread
From: lance dillon @ 2005-12-01 15:03 UTC (permalink / raw)
  To: linux-scsi

I have an old compaq proliant server (dual 733) with the Compaq
FibreChannel HBA Tachyon Chip/Board Ver??: WWN 5002CE4E44556677 (that is
what the kernel messages say).  This is for my church, which has a very
limited budget, so they really can't just buy a new machine with regular
ide drives (this machine was donated to them).  It also has a fibre
channel array attached to it.

kernel 2.6.14.3

Of course the driver is broken, so I'm trying to fix it.

I changed cpqfcTSworker.c so that it allocates space with kmalloc()
instead of on the stack (as per the messages seen by google: cpqfc too
much stack).

I modified a few lines that reference struct scsi_cmd member timeout,
which doesn't seem to exist anymore.  I replaced it with
timeout_per_command, but I'm not sure if that is correct.  Does anybody
have any more information on this for me?

I also had to modify the driver so it sees a0ec, rather than a0fc.

But, I'm getting the problem at all the resources seem to be already
allocated:

cat /proc/pci:

Bus  3, device   5, function 00:
  Class 0280: PCI device 0e11:a0ec (rev 3).
    IRQ 201.
    Master Capable.  Latency=64
    I/O at 0x4000 [0x40ff].
    I/O at 0x4400 [0x44ff].
    Non-prefetchable 32 bit memory at 0xc6fffe00 [0xc6ffffff].

in cpqfcTSinit.c, function Cpqfc_initHBAdata(), it sets IOBaseL and
IOBaseU from PciDev->resource[1].start and PciDev->resource[2].start.
It almost appears that it should be 0 and 1 instead.


I enable DEBUG_PCI in the source...

The kernel messages say that:
HostAdapter->PciDev->irq = 201
PciDev->baseaddress[0]= 4000
PciDev->baseaddress[1]= 4400
PciDev->baseaddress[2]= c6fffe00
PciDev->baseaddress[3]= 0
PciDev->baseaddress[4]= 0
PciDev->baseaddress[5]= 0

So it appears that Cpqfc_initHBAdata() should call request_region() on
4000 and 4400 (IOBaseL and IOBaseU), but since IOBaseL gets set to 4400
and IOBaseU gets set to c6fffe00.

I tried changing the code to set IOBaseL to PciDev->resource[0].start
and IOBaseU to PciDev->resource[1].start, and MemBase to
PciDev->resource[2].start, but the entire system froze when I did
modprobe cpqfc.

This is the error message I get when it is unmodified:

cpqfcHBAdata->fcChip.Registers.:
  IOBaseL = 4400
  IOBaseU = c6fffe00
  SFQconsumerIndex.address = f887e058
  ERQproducerIndex.address = f887e008
  TYconfig.address = f887e184
  FMconfig.address = f887e1c0
  FMcontrol.address = f887e1c4
cpqfc: address in use: c6fffe00
ACPI: PCI interrupt for device 000:03:05.0 disabled

This is when it tries to request_region() IOBaseU, which seems to be
incorrectly set to c6fffe00

However, when I change it so it request 4400 and 4000, it still says the
address is in use.

Would anybody have any ideas, or perhaps be able to point me in the
right direction?

Thanks...




^ permalink raw reply	[flat|nested] 7+ messages in thread
* cpqfc
@ 2005-12-02 15:09 lance dillon
  0 siblings, 0 replies; 7+ messages in thread
From: lance dillon @ 2005-12-02 15:09 UTC (permalink / raw)
  To: linux-scsi

So, I got the code to successfully compile and load, but when I
rebooted, the modprobe.conf shows:

alias eth1 cpqfc


I'm just wondering why it should look like an ethernet card, unless I'm
missing something...  I thought it would look like scsi drives..

Does anybody have any ideas?

Thanks...

l


^ permalink raw reply	[flat|nested] 7+ messages in thread
* cpqfc gone - all compay RA4X00 Array now useless in linux?
@ 2006-02-06 17:46 Ingo Flaschberger
  2006-02-06 18:23 ` Rolf Eike Beer
  0 siblings, 1 reply; 7+ messages in thread
From: Ingo Flaschberger @ 2006-02-06 17:46 UTC (permalink / raw)
  To: linux-scsi

Hey,

I'm very very sorry that the cpqfc driver is gone because it was the 
_only_ one which supported the now very cheap Compaq FiberChannel Array 
RA4X00.

With all other FC HBA's the logical volumes (LUN's) are not visible.
---snip---
5. Compaq RA4x00 firmware version 2.54 and later supports SSP (Selective
Storage Presentation), which maps LUNs to a WWN.  If RA4x00 firmware prior
2.54 (e.g. older controller) is used, or the FC HBA is replaced (another WWN
is used), logical volumes on the RA4x00 will no longer be visible.
---snap---

So... there are 3 possibilities:
1. Repair the cpqfc driver and but it again into linux?
2. Find out, how to get the RA4x00 arrays with othet HBA's running; I
 	searched about 1 week in Google, no way..
3. Aeh.. use... 2.4, use... other OS?

Hope to find a way... and not only kicking a working driver because of not 
as nice code and to much stack memory.

bye,
 	ingo flaschberger

geschaeftsleitung
crossip communications gmbH
------------------------------
sebastian kneipp gasse 1
a-1020 wien
fix: +43-1-726 15 22-217
fax: +43-1-726 15 22-111
mob: +43-699-105 86 719
www.xip.at
------------------------------

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2006-02-13  9:45 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-12-01 15:03 cpqfc lance dillon
2005-12-01 15:16 ` cpqfc Rolf Eike Beer
  -- strict thread matches above, loose matches on Subject: below --
2005-12-02 15:09 cpqfc lance dillon
2006-02-06 17:46 cpqfc gone - all compay RA4X00 Array now useless in linux? Ingo Flaschberger
2006-02-06 18:23 ` Rolf Eike Beer
2006-02-06 18:38   ` Ingo Flaschberger
2006-02-07  7:55     ` Rolf Eike Beer
2006-02-07 10:05       ` Booting from or using a Compaq RA4100 Array Ingo Flaschberger
2006-02-10 11:26         ` cpqfc Ingo Flaschberger
2006-02-10 12:59           ` cpqfc Christoph Hellwig
2006-02-10 19:04           ` cpqfc Martin K. Petersen
2006-02-13  9:45           ` cpqfc Rolf Eike Beer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox