Best readers,

I have a problem with an IP over an IEEE 1394 card ( FireWire ).

I am using a driver that registers itself as an ordenary network
driver, but that uses Emanuel Pirker's 1394 subsystem to access
the 1394 card, thus allowing multiple drivers to use the same
card simultaniously.

I have read Alessandro Rubini's "Linux Device Drivers" and looked
at the kernel source. With this I've been able to create the frame
for the driver, but now I've arrived at a problem that I can not
solve on my own:

When linux wishes to transmit some data is builds a packet (skbuff)
with the data, then calls routines to build its header and calls the
transmit function in the relevant driver.

Thus when the transmit function in a network driver is handled packet
to transmit, all it has to do it update statistics and broadcast the
data and return. An interrupt will be generated after succesfull 
broadcasting and the skbuff will be released.

I should act the same and transmit, however their are some differences:

1. The header for an ethernet packet has been build using a general
   purpose ethernet implementation. There is no general purpose 1394
   implementation, thus I will have to build my own routines.

2. Ethernet uses ARP, and thus can find the right hardware adress for
   a give IP.  This will be filled in by the header build routine.
   But linux has no support [yet] for broadcasting on a FireWire bus,
   and thus I need to figure out how to get the right hardwareadress
   for a given IP number.

I have set the flag IFF_NOARP and if I understand things correctly then 
this implies that functions will be called in my own driver to correctly
do all this.  However I do not understand this. Has anybody a pointer 
to a good description for me? Browsing the kernelsource is usefull, but 
difficult to understand to the uninitiated.

-Hennes  <[EMAIL PROTECTED]>
Ref IEEE 1394: http://www.edu.uni-klu.ac.at/~epirker/ieee1394.html
               ftp://ftp.sysmbios.com/pub/standards/io/IETF/IP1394
-
To unsubscribe from this list: send the line "unsubscribe linux-net" in
the body of a message to [EMAIL PROTECTED]

Reply via email to