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