Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 08 Sep 1999 16:45:46 +0800
From:      Peter Wemm <peter@netplex.com.au>
To:        Bruce Evans <bde@zeta.org.au>
Cc:        "Matthew N. Dodd" <winter@jurai.net>, Bruce Evans <bde@FreeBSD.org>, dfr@nlsystems.com, cvs-all@FreeBSD.org, cvs-committers@FreeBSD.org
Subject:   Re: cvs commit: src/sys/alpha/conf files.alpha src/sys/i386/conf files.i386 src/sys/conf files src/sys/dev/sio sio.c src/sys/isa sio.c sioreg.h 
Message-ID:  <19990908084546.8DA8A1CA9@overcee.netplex.com.au>
In-Reply-To: Your message of "Wed, 08 Sep 1999 14:50:49 %2B1000." <Pine.BSF.4.10.9909081439330.12081-100000@alphplex.bde.org> 

next in thread | previous in thread | raw e-mail | index | archive | help
Bruce Evans wrote:
> > On Tue, 7 Sep 1999, Bruce Evans wrote:
> > > Right now I'm only objecting to the misorganisation in /dev.  I have
> > > objected to it before :-).  I don't want directories with 1 or 2 files
> > > in them.  The bus-independent part of the sio driver probably needs 2
> > > files, sio.c and siovar.h (not the existing sioreg.h).
> > 
> > Right now sys/dev/sio has 1 or 2 files.
> > 
> > In the future it will have as many as 10.
> > 
> > sio_isa.c
> > sio_pci.c
> > sio_mca.c
> > sio_eisa.c
> > 
> > etc...
> 
> I hope not.

At the moment there are things like this:
        com->loses_outints = COM_LOSESOUTINTS(flags) != 0;
        com->no_irq = isa_get_irq(dev) < 0;   # <<<<<
        com->tx_fifo_size = 1;

which are scattered throughout the probe/attach code.  Would you rather:

        com->loses_outints = COM_LOSESOUTINTS(flags) != 0;
#if NISA > 0
	if (com->busmode == COM_ISA)
		com->no_irq = isa_get_irq(dev) < 0;
#endif
#if NEISA > 0
	if (com->busmode == COM_EISA)
		com->no_irq = rman_get_start(com->irqres) < 0;
#endif
#if NPCI > 0
	if (com->busmode == COM_PCI)
		....
#endif
.. NMCA .. NPCCARD .. etc.
	com->tx_fifo_size = 1;

.. or would you prefer it being done properly?


> > Keeping all the files for a particular driver in 1 place and not all
> > spread out makes propogating changes to the various files a little easier
> > to manage no?
> 
> No :-).
> 
> Changes should rarely need to be propagated if the core is properly
> designed.  E.g., in my cy driver, which is similar to sio, I rarely
> had to even look at cy_pci.c.

.. cy.c/cy_pci.c are are a near perfect example of what we want to
do.  Things like com_addr() etc would be fixed to not call external
functions, the newbus stuff wouldn't intrude on the probe/attach code
and so on.

> Bruce

Cheers,
-Peter
--
Peter Wemm - peter@FreeBSD.org; peter@yahoo-inc.com; peter@netplex.com.au



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19990908084546.8DA8A1CA9>