diff mbox

Kconfig: disable Media Controller for DVB

Message ID f146ea68c1a5db7a17bdbc0a4f32ebb220c5913e.1434106648.git.mchehab@osg.samsung.com (mailing list archive)
State New, archived
Headers show

Commit Message

Mauro Carvalho Chehab June 12, 2015, 10:57 a.m. UTC
Since when we start discussions about the usage Media Controller
for complex hardware, one thing become clear: the way it is, MC
fails to map anything more complex than a webcam.

The point is that MC has entities named as devnodes, but the only
devnode used (before the DVB patches) is MEDIA_ENT_T_DEVNODE_V4L.
Due to the way MC got implemented, however, this entity actually
doesn't represent the devnode, but the hardware I/O engine that
receives data via DMA.

By coincidence, such DMA is associated with the V4L device node
on webcam hardware, but this is not true even for other V4L2
devices. For example, on USB hardware, the DMA is done via the
USB controller. The data passes though a in-kernel filter that
strips off the URB headers. Other V4L2 devices like radio may not
even have DMA. When it have, the DMA is done via ALSA, and not
via the V4L devnode.

In other words, MC is broken as a hole, but tagging it as BROKEN
right now would do more harm than good.

So, instead, let's mark, for now, the DVB part as broken and
block all new changes to it while we don't fix this mess, with
we hopefully will do for the next Kernel version.

Requested-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>

Comments

Hans Verkuil June 12, 2015, 11:02 a.m. UTC | #1
On 06/12/2015 12:57 PM, Mauro Carvalho Chehab wrote:
> Since when we start discussions about the usage Media Controller
> for complex hardware, one thing become clear: the way it is, MC
> fails to map anything more complex than a webcam.
> 
> The point is that MC has entities named as devnodes, but the only
> devnode used (before the DVB patches) is MEDIA_ENT_T_DEVNODE_V4L.
> Due to the way MC got implemented, however, this entity actually
> doesn't represent the devnode, but the hardware I/O engine that
> receives data via DMA.
> 
> By coincidence, such DMA is associated with the V4L device node
> on webcam hardware, but this is not true even for other V4L2
> devices. For example, on USB hardware, the DMA is done via the
> USB controller. The data passes though a in-kernel filter that
> strips off the URB headers. Other V4L2 devices like radio may not
> even have DMA. When it have, the DMA is done via ALSA, and not
> via the V4L devnode.
> 
> In other words, MC is broken as a hole, but tagging it as BROKEN

hole -> whole

One of these days you'll have retrained your brain for this :-)

> right now would do more harm than good.
> 
> So, instead, let's mark, for now, the DVB part as broken and
> block all new changes to it while we don't fix this mess, with

"while we fix this mess, which"

After fixing the typos:

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>

Regards,

	Hans

> we hopefully will do for the next Kernel version.
> 
> Requested-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
> 
> diff --git a/drivers/media/Kconfig b/drivers/media/Kconfig
> index 3ef0f90b128f..157099243d61 100644
> --- a/drivers/media/Kconfig
> +++ b/drivers/media/Kconfig
> @@ -97,6 +97,7 @@ config MEDIA_CONTROLLER
>  config MEDIA_CONTROLLER_DVB
>  	bool "Enable Media controller for DVB"
>  	depends on MEDIA_CONTROLLER
> +	depends on BROKEN
>  	---help---
>  	  Enable the media controller API support for DVB.
>  
> 

--
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
Mauro Carvalho Chehab June 12, 2015, 11:33 a.m. UTC | #2
Em Fri, 12 Jun 2015 13:02:00 +0200
Hans Verkuil <hverkuil@xs4all.nl> escreveu:

> On 06/12/2015 12:57 PM, Mauro Carvalho Chehab wrote:
> > Since when we start discussions about the usage Media Controller
> > for complex hardware, one thing become clear: the way it is, MC
> > fails to map anything more complex than a webcam.
> > 
> > The point is that MC has entities named as devnodes, but the only
> > devnode used (before the DVB patches) is MEDIA_ENT_T_DEVNODE_V4L.
> > Due to the way MC got implemented, however, this entity actually
> > doesn't represent the devnode, but the hardware I/O engine that
> > receives data via DMA.
> > 
> > By coincidence, such DMA is associated with the V4L device node
> > on webcam hardware, but this is not true even for other V4L2
> > devices. For example, on USB hardware, the DMA is done via the
> > USB controller. The data passes though a in-kernel filter that
> > strips off the URB headers. Other V4L2 devices like radio may not
> > even have DMA. When it have, the DMA is done via ALSA, and not
> > via the V4L devnode.
> > 
> > In other words, MC is broken as a hole, but tagging it as BROKEN
> 
> hole -> whole
> 
> One of these days you'll have retrained your brain for this :-)

Heh ;)

> 
> > right now would do more harm than good.
> > 
> > So, instead, let's mark, for now, the DVB part as broken and
> > block all new changes to it while we don't fix this mess, with
> 
> "while we fix this mess, which"

Changed to:
   "block all new changes to MC while we fix this mess, which"


Sending version 2.

Regards,
Mauro
--
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 mbox

Patch

diff --git a/drivers/media/Kconfig b/drivers/media/Kconfig
index 3ef0f90b128f..157099243d61 100644
--- a/drivers/media/Kconfig
+++ b/drivers/media/Kconfig
@@ -97,6 +97,7 @@  config MEDIA_CONTROLLER
 config MEDIA_CONTROLLER_DVB
 	bool "Enable Media controller for DVB"
 	depends on MEDIA_CONTROLLER
+	depends on BROKEN
 	---help---
 	  Enable the media controller API support for DVB.