Em 23-05-2011 10:11, Hans Petter Selasky escreveu: > --HPS > > > dvb-usb-0012.patch > > > From 7222450a9d6f96f652237c65019fb25f54586d01 Mon Sep 17 00:00:00 2001 > From: Hans Petter Selasky <hselasky@xxxxxxx> > Date: Mon, 23 May 2011 14:43:35 +0200 > Subject: [PATCH] Make DVB NET configurable in the kernel. > > Signed-off-by: Hans Petter Selasky <hselasky@xxxxxxx> > --- > drivers/media/Kconfig | 12 +++++++++++- > drivers/media/dvb/dvb-core/Makefile | 4 +++- > drivers/media/dvb/dvb-core/dvb_net.h | 26 ++++++++++++++++++++++++++ > 3 files changed, 40 insertions(+), 2 deletions(-) > > diff --git a/drivers/media/Kconfig b/drivers/media/Kconfig > index 6995940..dc61895 100644 > --- a/drivers/media/Kconfig > +++ b/drivers/media/Kconfig > @@ -68,7 +68,6 @@ config VIDEO_V4L2_SUBDEV_API > > config DVB_CORE > tristate "DVB for Linux" > - depends on NET && INET > select CRC32 > help > DVB core utility functions for device handling, software fallbacks etc. > @@ -85,6 +84,17 @@ config DVB_CORE > > If unsure say N. > > +config DVB_NET > + bool "DVB Network Support" > + default (NET && INET) > + depends on NET && INET > + help > + The DVB network support in the DVB core can > + optionally be disabled if this > + option is set to N. > + > + If unsure say Y. > + > config VIDEO_MEDIA > tristate > default (DVB_CORE && (VIDEO_DEV = n)) || (VIDEO_DEV && (DVB_CORE = n)) || (DVB_CORE && VIDEO_DEV) > diff --git a/drivers/media/dvb/dvb-core/Makefile b/drivers/media/dvb/dvb-core/Makefile > index 0b51828..8f22bcd 100644 > --- a/drivers/media/dvb/dvb-core/Makefile > +++ b/drivers/media/dvb/dvb-core/Makefile > @@ -2,8 +2,10 @@ > # Makefile for the kernel DVB device drivers. > # > > +dvb-net-$(CONFIG_DVB_NET) := dvb_net.o > + > dvb-core-objs := dvbdev.o dmxdev.o dvb_demux.o dvb_filter.o \ > dvb_ca_en50221.o dvb_frontend.o \ > - dvb_net.o dvb_ringbuffer.o dvb_math.o > + $(dvb-net-y) dvb_ringbuffer.o dvb_math.o > > obj-$(CONFIG_DVB_CORE) += dvb-core.o > diff --git a/drivers/media/dvb/dvb-core/dvb_net.h b/drivers/media/dvb/dvb-core/dvb_net.h > index 3a3126c..8a0907f 100644 > --- a/drivers/media/dvb/dvb-core/dvb_net.h > +++ b/drivers/media/dvb/dvb-core/dvb_net.h > @@ -32,6 +32,8 @@ > > #define DVB_NET_DEVICES_MAX 10 > > +#ifdef CONFIG_DVB_NET > + > struct dvb_net { > struct dvb_device *dvbdev; > struct net_device *device[DVB_NET_DEVICES_MAX]; > @@ -45,3 +47,27 @@ void dvb_net_release(struct dvb_net *); > int dvb_net_init(struct dvb_adapter *, struct dvb_net *, struct dmx_demux *); > > #endif > + > +#ifndef CONFIG_DVB_NET > + > +struct dvb_dev_stub; > + > +struct dvb_net { > + struct dvb_dev_stub *dvbdev; > +}; > + > +static inline void dvb_net_release(struct dvb_net *dvbnet) > +{ > + dvbnet->dvbdev = 0; > +} > + > +static inline int dvb_net_init(struct dvb_adapter *adap, > + struct dvb_net *dvbnet, struct dmx_demux *dmx) > +{ > + dvbnet->dvbdev = (void *)1; > + return 0; > +} > + > +#endif > + > +#endif > -- 1.7.1.1 --HPS Patch is ok, but the code when DVB_NET is not defined can be simpler. So, I'm applying the following patch after yours: commit 92e226848f32fb593f5da0f1d1c30b6a6ec429b6 Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxx> Date: Wed Jun 1 13:03:12 2011 -0300 dvb_net: Simplify the code if DVB NET is not defined Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxx> diff --git a/drivers/media/dvb/dvb-core/dvb_net.h b/drivers/media/dvb/dvb-core/dvb_net.h index cfd2c46..1e53acd 100644 --- a/drivers/media/dvb/dvb-core/dvb_net.h +++ b/drivers/media/dvb/dvb-core/dvb_net.h @@ -42,32 +42,25 @@ struct dvb_net { struct dmx_demux *demux; }; - void dvb_net_release(struct dvb_net *); int dvb_net_init(struct dvb_adapter *, struct dvb_net *, struct dmx_demux *); -#endif - -#ifndef CONFIG_DVB_NET - -struct dvb_dev_stub; +#else struct dvb_net { - struct dvb_dev_stub *dvbdev; + struct dvb_device *dvbdev; }; static inline void dvb_net_release(struct dvb_net *dvbnet) { - dvbnet->dvbdev = 0; } static inline int dvb_net_init(struct dvb_adapter *adap, struct dvb_net *dvbnet, struct dmx_demux *dmx) { - dvbnet->dvbdev = (void *)1; return 0; } -#endif +#endif /* ifdef CONFIG_DVB_NET */ #endif -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html