Re: [v4l-dvb-maintainer] 2.6.19-rc1: DVB frontend selection causes compile errors

Adrian Bunk
2006-10-09T08:05:48Z

On Mon, Oct 09, 2006 at 03:53:00AM -0400, Michael Krufky wrote:
> Adrian Bunk wrote:
> > The DVB frontend selection changes in 2.6.19-rc1 are giving me the
> > following compile error:
> >
> > <-- snip -->
> >
> > ...
> > LD .tmp_vmlinux1
> > drivers/built-in.o: In function `dvb_init':
> > saa7134-dvb.c:(.text+0x91d94): undefined reference to `tda10086_attach'
> > saa7134-dvb.c:(.text+0x91db0): undefined reference to `tda826x_attach'
> > make: *** [.tmp_vmlinux1] Error 1
> >
> > <-- snip -->
> >
> > .config attached.
> >
> > cu
> > Adrian
>
>
> Adrian,

Hi Michael,

> Does this fix it for you?

it does fix it with my .config, but

> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
>
> diff -r 7efa405e2d66 linux/drivers/media/dvb/frontends/tda10086.h
> --- a/drivers/media/dvb/frontends/tda10086.h Fri Oct 06 17:12:00 2006 -0300
> +++ b/drivers/media/dvb/frontends/tda10086.h Mon Oct 09 03:43:28 2006 -0400
> @@ -35,7 +35,16 @@ struct tda10086_config
> u8 invert;
> };
>
> +#if defined(CONFIG_DVB_TDA10086) || defined(CONFIG_DVB_TDA10086_MODULE)
> extern struct dvb_frontend* tda10086_attach(const struct tda10086_config* config,
> struct i2c_adapter* i2c);
> +#else
> +static inline struct dvb_frontend* tda10086_attach(const struct tda10086_config* config,
> + struct i2c_adapter* i2c)
> +{
> + printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __FUNCTION__);
> + return NULL;
> +}
> +#endif // CONFIG_DVB_TDA10086
>...

this breaks with CONFIG_VIDEO_SAA7134_DVB=y, CONFIG_DVB_TDA1004X=m.

#if defined(CONFIG_DVB_TDA10086) || (defined(CONFIG_DVB_TDA10086_MODULE) && defined(MODULE))
might work, but the whole manual frontend selection IMHO looks a bit
fragile.

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