On Thu, 12 Mar 2009 10:11:12 -0400
Devin Heitmueller <devin.heitmuel...@gmail.com> wrote:

> On Thu, Mar 12, 2009 at 4:54 AM, Mauro Carvalho Chehab
> <mche...@infradead.org> wrote:
> > Hi Devin,
> >
> > There's a bug on your patch series: see this:
> >
> > Those are the locations of au8522 files at Kernel's tree:
> >        drivers/media/dvb/frontends/au8522.h
> >        drivers/media/dvb/frontends/au8522_dig.c
> >        drivers/media/dvb/frontends/au8522_priv.h
> >        drivers/media/video/au8522_decoder.c
> >
> > And those are the Makefile rules for au8522.h on 
> > drivers/media/dvb/frontends/Makefile:
> >
> > au8522-objs = au8522_dig.o au8522_decoder.o
> > obj-$(CONFIG_DVB_AU8522) += au8522.o
> >
> > When you're compiling the out-of-tree version, everything works OK, but, for
> > in-tree compilation, au8522_decoder won't be compiled, since the file will 
> > be
> > in the wrong dir.
> >
> > If I'm understanding well, this chip has two functions: it is a dvb frontend
> > and an analog video/audio demodulator, right?
> >
> > One solution would be to have all those files in the same directory. 
> > However,
> > au8522_decoder doesn't fit well on dvb/frontends. It is also not a tuner,
> > otherwise common/tuners would be another better place.
> >
> > Another alternative would be to create two kconfig rules (and two separate
> > modules), being one for au8522_decoder and another for the frontend, since 
> > they
> > are, in fact, two different things.
> >
> > I suspect,however, that compiling just one or another would break 
> > compilation.
> > So, we need to create some sort of rules that will warrant that both modules
> > will be compiled at the same time. This is not an easy task, since we cannot
> > add "depends on", since frontends are compiled by using "select". So, we 
> > will
> > need to re-design the Kconfig rules to use depends on instead of select 
> > (well,
> > this is something good, anyway, since the usage of "select" is something 
> > that
> > should be avoided, according with Kbuild docs).
> >
> > I'll keep reviewing the patch series. Maybe I'll merge it, but, in this 
> > case,
> > I'll need to blacklist the module until we found a solution, or find a way 
> > to
> > allow my -git trees to compile.
> >
> > Cheers,
> > Mauro
> >
> 
> Hello Mauro,
> 
> Both files are required, as they share certain functions (such as the
> i2c transfer functions).  Also, they share a common state mechanism,
> which is why both files end up in the same .ko file.
> 
> This case is a little unique since it is the first case where we have
> a single chip that acts as a digital demod, an analog demod, and an
> analog video/audio decoder.
> 
> I can certainly put the au8522_decoder.c into dvb/frontends even
> though this probably violates some rule about analog stuff being in
> the DVB section of the tree.  Would that resolve your concern?
> 
> I really don't want to make redesigning the KConfig rules a
> prerequisite to getting this rather large patch series merged.  I
> would suggest we do what is required to get the code in (such as
> moving the _decoder.c to frontends), and then we can tune the solution
> to be something more optimal in terms of how the tree is structured.

I don't like much the idea of moving decoder to frontends, but we may do this
as an intermediate step. To make things easier for future changes, IMO, it
would be better to create a separate dir for this driver, inside dvb/frontends.
This will help to move it elsewhere.

Cheers,
Mauro.


Cheers,
Mauro
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to