Re: [PATCH 08/18] V4L/DVB (4734): Tda826x: fix frontend selection for dvb_attach

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

 



On Sat, Oct 14, 2006 at 02:10:33PM -0400, Michael Krufky wrote:
> Adrian Bunk wrote:
> > On Sat, Oct 14, 2006 at 09:00:50AM -0300, [email protected] wrote:
> >> From: Michael Krufky <[email protected]>
> >>
> >> Signed-off-by: Michael Krufky <[email protected]>
> >> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
> >> ---
> >>
> >>  drivers/media/dvb/frontends/tda826x.h |   19 ++++++++++++++++---
> >>  1 files changed, 16 insertions(+), 3 deletions(-)
> >>
> >> diff --git a/drivers/media/dvb/frontends/tda826x.h b/drivers/media/dvb/frontends/tda826x.h
> >> index 3307607..83998c0 100644
> >> --- a/drivers/media/dvb/frontends/tda826x.h
> >> +++ b/drivers/media/dvb/frontends/tda826x.h
> >> @@ -35,6 +35,19 @@ #include "dvb_frontend.h"
> >>   * @param has_loopthrough Set to 1 if the card has a loopthrough RF connector.
> >>   * @return FE pointer on success, NULL on failure.
> >>   */
> >> -extern struct dvb_frontend *tda826x_attach(struct dvb_frontend *fe, int addr, struct i2c_adapter *i2c, int has_loopthrough);
> >> -
> >> -#endif
> >> +#if defined(CONFIG_DVB_TDA826X) || defined(CONFIG_DVB_TDA826X_MODULE)
> >> +extern struct dvb_frontend* tda826x_attach(struct dvb_frontend *fe, int addr,
> >> +					   struct i2c_adapter *i2c,
> >> +					   int has_loopthrough);
> >> +#else
> >> +static inline struct dvb_frontend* tda826x_attach(struct dvb_frontend *fe,
> >> +						  int addr,
> >> +						  struct i2c_adapter *i2c,
> >> +						  int has_loopthrough)
> >> +{
> >> +	printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __FUNCTION__);
> >> +	return NULL;
> >> +}
> >> +#endif // CONFIG_DVB_TDA826X
> >> +
> >> +#endif // __DVB_TDA826X_H__
> > 
> > This breaks with CONFIG_VIDEO_SAA7134_DVB=y, CONFIG_DVB_TDA826X=m.
> 
> Regardless, the patch must be applied.  The above should only break with DVB_FE_CUSTOMIZE=Y ...
> 
> Turn off DVB_FE_CUSTOMIZE, and you will find that the above does NOT break.  You can probably reproduce this 'broken' situation by setting any card driver = y, with the frontend = m ...
> 
> As stated in the prior thread, "CONFIG_VIDEO_SAA7134_DVB=y, CONFIG_DVB_TDA826X=m" is not the problem -- rather, "CONFIG_VIDEO_SAA7134_DVB=y, CONFIG_DVB_TDA826X=m, DVB_FE_CUSTOMIZE=Y" causes the breakage.

This patch fixes only a part of the problem.

If this is the way how you want to handle CONFIG_DVB_FE_CUSTOMIZE=y, 
I don't understand why you don't use
  #if defined(CONFIG_DVB_TDA826X) || (defined(CONFIG_DVB_TDA826X_MODULE) && defined(MODULE))
which is what I stated in exactly the thread you quote.

> -Mike Krufky

cu
Adrian

-- 

       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux