Subject: Re: ByteRunner TC-800 multiport serial board
To: Chris G. Demetriou <cgd@pa.dec.com>
From: Jukka Marin <jmarin@pyy.jmp.fi>
List: netbsd-help
Date: 05/18/1998 23:41:34
On Mon, May 18, 1998 at 01:17:12PM -0700, Chris G. Demetriou wrote:
> > The baud-rate multipliers are per-port settable using _jumpers_, nothing
> > can be changed in software.
> Right. That's why I said the multiplier would make sense to set via
> driver flags, i.e. a 'flags' declaration for the driver in the config
> file.
>
> Sounds like it makes sense to do it per-port.
I guess so. Too bad I haven't got the time to make the driver better. I hope
it is considered "good enough" to be included in the tree. After all, it's
almost identical to the boca and other multi port serial card drivers... ;-)
> Well, sure, but that wasn't what I was getting at. Note that the
> following is very much a "how things should be done" comment, and
> isn't necessarily reflected by all existing drivers. 8-)
You're right, it isn't ;)
> When something calls config_found(), that's supposed to mean "I know
> this device is here, really I do." For some multiport boards, where
> there are a known number of chips and changing that requires a chip
> puller or soldering iron, config_found() is the right thing to do.
Yeah. Well, when I first did the tcom driver (back in 1.2 times), I only
knew about the 4-port card, which always has 4 UARTs. Later, I had to
make the driver work on an 8-port card and as the same driver appeared to
work with 4-port cards...
> In a case where you _know_ you have a variable number of ports, you
> probably shouldn't be config_found()ing things that you're not sure
> that you have. One way to be "sure" that you have something, for
> instance, is to write a cheap, sleazy probe routine which just makes
> sure that something is in that space, and assumes that if there's
> something there that it belongs to the board. (not an unreasonable
> assumption.)
Maybe comprobe1() could be called again at attach time.. or maybe
a bit mask should be set during probe time.. Anyway, I won't be able
to do this anytime soon :(
-jm