Re: Linux IEEE-1394 (FireWire) clarification

Andreas Bombe (andreas.bombe@munich.netsurf.de)
Mon, 14 Jun 1999 22:26:53 +0200


On Thu, Jun 10, 1999 at 10:54:09PM +0200, Emanuel Pirker wrote:
>
> Reading Andreas Bombe's message (I am not subscribed to lkml due to
> mailbox overload) in the archives, I have to clarify some points:
>
> * It's right that my TILynx driver is just a some-line-code skeleton which
> does effectively nothing.
> * It's NOT right that I have come nowhere. In fact, I have a working
> subsystem (there are some points I dislike about it but it works)
> and a working AIC-5800 driver. The AIC driver does outgoing and
> receiving transactions without problems.

I have ingoing transactions (with that I mean including sending
replys). I can for example read the cycle counter from another
machine. I sort of have outgoing transactions (means the code is
there, except it always crashes on me so far).

> * One person got IP packets over this driver.
>
> I have searched long for somebody who can help me doing the stuff and,
> most important, write a TILynx driver. I started the effort as a
> university project which is now finished. I study and work at the same
> time and so there is too little time to do it alone.
>
> So, I am glad that Andreas Bombe joins the Linux IEEE-1394 effort, but I
> strongly disagree on his idea of leaving all work and experience behind
> and doing everything again. So I suggest

I have looked a lot at your subsystem. I first tried to implement a
Lynx driver that fits into your subsystem but gave up after a few
hours.

> * we get together and design a subsystem that does what we want

I have designed a subsystem already, at least the mid level (core
implementation) and low level (hardware driver) and all the interfaces
between them. And I have most of the code.

The high level stuff is something that is yet to be designed, but that
is mostly node identifying and passing of bus events (resets, node is
lost...).

> * we then see what we have and how to migrate existing code

Your code has all the FireWire stuff inside and interlaced with the AIC
hardware driver. You have mostly copied code from the SCSI subsystem
without understanding why something is there and have therefore moved
all the cruft from the SCSI subsystem (which is badly designed as most
developers on the kernel list agree). Reusing something of that would
have taken more effort than to just rewrite it and add the missing
pieces.

> * we use existing infrastructure (webspace, mailing lists, CVS) as it is
> already established.

No point against that. It's just that I didn't need much of that yet.

> * the TILynx chip may be important to many people including Andreas,
> but in fact this chip is deprecated and not produced any more.
> TI now produces and sells OHCI boards.

So what? You can easily add new hardware drivers to my subsystem. i
would actually be glad if you could migrate your Adaptec code to my
subsystem. As I said in a mail I sent you some time I ago it would
actually greatly simplify your driver because you can leave out all
FireWire stuff and transaction code (basically the driver gets
pre-built packets for sending and simply dumps the receive buffer to
the core code plus all the little stuff like bus resets). And no more
of that SCSI subsystem like templates through headers, which really
suck.

-- 
    Andreas E. Bombe <andreas.bombe@munich.netsurf.de>
    http://home.pages.de/~andreas.bombe/
RSA 0x886663c9  30 EC 09 73 84 7B 55 83  C4 7A 91 D9 9D C5 4B B0
DSA 0x04880A44 72E5 7031 4414 2EB6 F6B4  4CBD 1181 7032 0488 0A44

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/