Subject: Re: Localtalk interface design ideas
To: Ignatios Souvatzis <firstname.lastname@example.org>
From: Bill Studenmund <email@example.com>
Date: 02/14/1997 09:09:07
> Sounds like synchronours HDLC to me, at the lowest level. If this is
> true, you need special chips to do it... or maybe additional hardware
> tranforming async HDLC to sync HDLC. In the latter case, a line
> discipline to talk to these beasts would be sufficient. In the former
> case you need special hardware (e.g., Zilog 8530, which is used in
> Sparcstations) as cheap serial interfaces don't have any HDLC mode,
> and enhanced drivers which accept some ioctl to set the hardware into
> HDLC mode.
It is synchronous HDLC, and that's why the mac uses 8530's. :-)
> No, a line discipline won't be sufficient in the general
> case. However, if we define a set of ioctls to put the driver into
> HDLC mode, a line discipline should be enough to transfer the data
> between any of these HDLC drivers and the Appletalk protocol.
I've thought about doing something like that, but I decided against it
for two reasons.
1) LocalTalk imposes some tight timing constrains on the packets, such
that certain received packets really need to fire off replies from
within the receive packet interrupt routine. I don't think we can wait
for a tty-level processor to get the packet to formulate a reply. I don't
see how having the interrupt handler know about what's in the packets fits
in the tty line discipline model.
2) How do we preserve packet boundries when going through the tty system?
I can see on transmission how we can do it, but how on reception?