From patchwork Wed Jun 1 16:08:37 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mauro Carvalho Chehab X-Patchwork-Id: 840692 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter2.kernel.org (8.14.4/8.14.3) with ESMTP id p51G8mjg028295 for ; Wed, 1 Jun 2011 16:08:48 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756314Ab1FAQIq (ORCPT ); Wed, 1 Jun 2011 12:08:46 -0400 Received: from mx1.redhat.com ([209.132.183.28]:34529 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755497Ab1FAQIq (ORCPT ); Wed, 1 Jun 2011 12:08:46 -0400 Received: from int-mx02.intmail.prod.int.phx2.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id p51G8e2D011568 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Wed, 1 Jun 2011 12:08:40 -0400 Received: from [10.36.11.228] (vpn2-11-228.ams2.redhat.com [10.36.11.228]) by int-mx02.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id p51G8bmd010159; Wed, 1 Jun 2011 12:08:39 -0400 Message-ID: <4DE66405.4000803@redhat.com> Date: Wed, 01 Jun 2011 13:08:37 -0300 From: Mauro Carvalho Chehab User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.17) Gecko/20110419 Red Hat/3.1.10-1.el6_0 Thunderbird/3.1.10 MIME-Version: 1.0 To: Hans Petter Selasky CC: "linux-media@vger.kernel.org" Subject: Re: [PATCH] Make DVB NET configurable in the kernel. References: <201105231511.44508.hselasky@c2i.net> In-Reply-To: <201105231511.44508.hselasky@c2i.net> X-Scanned-By: MIMEDefang 2.67 on 10.5.11.12 Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.6 (demeter2.kernel.org [140.211.167.43]); Wed, 01 Jun 2011 16:08:48 +0000 (UTC) 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 > Date: Mon, 23 May 2011 14:43:35 +0200 > Subject: [PATCH] Make DVB NET configurable in the kernel. > > Signed-off-by: Hans Petter Selasky > --- > 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 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 --- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html 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