[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

localtalk, was Re: pcmcia ethernet card support for m68k?



On Tue, 11 Aug 2020, Brad Boyer wrote:

> Do we have enough CPU time to implement LocalTalk fully in software 
> without causing other issues?

It would cause issues if drivers (especially the VIA clocksource) were 
badly starved of CPU, such that interrupts were handled too late. We 
already have a system clock drift problem on many models (though not all) 
because of that.

> I believe it's a synchronous protocol, and unless you're talking about 
> one of the models with IOPs (IIfx, Q900, Q950) or real DMA (Q660, Q840) 
> the CPU will need to be involved on a very fixed schedule.

I agree, the IOP machines would be good candidates. The PSC machines too, 
now that the NetBSD developers have figured out a lot more about the DMA 
controller.

> Is it possible to do that level of real-time scheduling with a standard 
> Linux kernel?

Well, high efficiency I/O and real time processing are important to the 
upstream kernel, because some big customers want those things.

> If I'm interpreting the docs correctly, we will have to talk to the 
> serial controller around 8000 times per second (230kbit/s and 4 bytes at 
> a time from the ESCC)

I think 8000 is an over-estimate. 230kbit/s is a baud rate not a bit rate, 
right?

> with very tight tolerances. 

Slack tolerances probably lead to high packet loss. But there may be a 
happy medium.

> Will it cause problems to have the serial controller sending interrupts 
> that often?

I would like to know how many interrupts per second can be serviced on a 
Powerbook 190 (assuming that the ISR does nothing except acknowledge the 
interrupt) without consuming more than say, 50% CPU. It might be possible 
to run a test like this using the timer interrupt, just by reducing 
VIA_TIMER_CYCLES.

> I suspect Apple just hogged the CPU during data transfer.
> 

Me too. IIRC the mouse pointer moved jerkily during Localtalk I/O (and 
also during floppy disk initialization).


Reply to: