I'm considering implementing a generic Frame Relay driver for Linux.
It would work with any HDLC interface. I think it should follow the way
Cisco and sync PPP is written. However, I don't understand few things yet.
Why is the sync PPP driver different from regular async PPP?
According to RFC1661/1662, the protocol doesn't differ, not counting
the encapsulation level (where HDLC frames are just sent by hardware
sync board, or are constructed and then sent using async interface).
Don't you think sync and async PPP should be merged, and async serial
driver should provide HDLC interface (for PPP etc)? That way, writing
drivers for sync boards would be easier, and it would be possible to use
async ports with protocols used with sync boards now. Of course, generic
HDLC would also provide a character-mode interface.
I think real sync board driver should be as simple as possible, with
the rest done in generic driver. The hardware driver should just provide
routines to initialize the board and set parameters, send a HDLC frame,
handle an irq when a frame is received, etc.
The generic (library) driver would register net devices (say, slXXX and
slXXX.YYY for FR DLCIs), handle all protocol selection ioctls and
interpret/send proper HDLC frames (containing PPP/FR/whatever) using
underlying hardware drivers.
-- Krzysztof Halasa Network Administrator- 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/