Mailing List archive

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

[linux-dvb] Re: refactoring



On Friday 01 Oct 2004 14:38, Andrew de Quincey wrote:
> On Friday 01 Oct 2004 14:26, Kenneth Aafløy wrote:
> > On Friday 01 October 2004 13:46, Gerd Knorr wrote:
> > > On Fri, Oct 01, 2004 at 10:59:52AM +0100, Andrew de Quincey wrote:
> > > > On Friday 01 Oct 2004 08:49, you wrote:
> > > > > For the cx22702 you should be able to simply take the code from the
> > > > > v4l cvs ...
> > > >
> > > > Doh! I wish I'd remembered that.. I've already done that one.
> > >
> > >  - rework Kconfig: don't ask the users which FE they want to build, but
> > >    enable the ones needed via "select" [1].  That makes it easier for
> > > the users (you can't forget to enable the frontend, and you don't need
> > > to know which one your card has) and also avoids the source being
> > > cluttered up with "#ifdef CONFIG_DVB_<FRONTEND>".
> > >
> > > config VIDEO_CX88_DVB
> > >         tristate "DVB Support for cx2388x based TV cards"
> > >         depends on VIDEO_CX88 && DVB_CORE
> > >         select DVB_CX22702
> > >         ---help---
> > >         <help text here>
> >
> > Please, don't use select, that will force a user with a Nexus-S with the
> > stv0299 frontend to have all other frontends compiled in. This will
> > create bloated drivers, and actually would hurt the embedded platform
> > (Holger argued that the i2c core was huge, don't think he wants to be
> > forced to include more frontends)
> >
> > Use the default construct instead, which makes it possible to deselect,
> > but 'reminds' the user that it's probably a good idea to select this
> > item.
> >
> >         default y if VIDEO_CX88_DVB=y
> >  default m if VIDEO_CX88_DVB=m
>
> That isn't going to work - card drivers are linked directly to frontend
> drivers by the exported XXX_attach() calls, and by the card's
> implementation of the PLL code.
>
> I'd suggest (for cards which need multiple frontends) we allow the users to
> customise which frontends have support compiled in for each card. By
> default, all of the frontends which the card might possibly need are
> selected.
>
> Therefore people who just want to get their new card going, and don't
> really care about the size of the resulting modules can quickly select the
> driver and not care about frontends (which realistically is going to be
> most end-users).
>
> However, people who do care about size will still have the option to
> customise exactly which frontend is supported.
>
> Sound ok?

Actually - is that what you meant all along? i.e. using #ifdef DVBFE_BLAHBLAH 
in the card drivers.




Home | Main Index | Thread Index