If anyone would like to look at the driver code I've been
working on for 53c770 SCSI, I can mail it to you.
I tried posting it to the list but it was too big. :(
Currently the driver (evidently) finds the SCSI controller,
does the cache test (and passes), and begins trying to
setup up the chip for IRQ handling. At that point it stops.
My suspicion is that some driver memory space is getting
trampled on somehow, because some of the data in the
np data structure, is not able to be accessed beyond a
certain point in the driver execution. Unfortunately, it
has been my experience that memory leaks/problems
such as these can be very difficult to track down, especially without a
debugger of some sort (or a more experienced
coder :)) Another theory I have is that the allocation and
alignment of the np structure is being done improperly. Since the np
structure is huge and complicated, rewriting this bit would be difficult.
I've noticed that the newer versions of the LSI/NCR/Symbios driver code
is using a different scheme of allocating and initializing this
structure. In any event, I am considering moving my hacking to a new
version of the driver code where some of these problems may have been
fixed.
On the other hand, I could be completely wrong about my
suspicions and having some others look at the code might
be helpful.
I will try to find time to port it to the 2.2 CVS kernel so that a patch
can be generated as well. My code is not pretty at the moment (lots of
ugly printks and so forth.). I suppose I should take them out before I
make a patch?
Fred
|