Re: [PATCH] [media] media/v4l2: VIDEO_RENESAS_VSP1 should depend on HAS_DMA

From: Geert Uytterhoeven
Date: Fri Sep 06 2013 - 13:07:56 EST


On Fri, Sep 6, 2013 at 5:20 PM, Laurent Pinchart
<laurent.pinchart@xxxxxxxxxxxxxxxx> wrote:
> On Friday 06 September 2013 14:43:56 Geert Uytterhoeven wrote:
>> If NO_DMA=y:
>>
>> warning: (... && VIDEO_RENESAS_VSP1 && ...) selects VIDEOBUF2_DMA_CONTIG
>> which has unmet direct dependencies (MEDIA_SUPPORT && HAS_DMA)
>>
>> drivers/media/v4l2-core/videobuf2-dma-contig.c: In function âvb2_dc_mmapâ:
>> drivers/media/v4l2-core/videobuf2-dma-contig.c:202: error: implicit
>> declaration of function âdma_mmap_coherentâ
>> drivers/media/v4l2-core/videobuf2-dma-contig.c: In function
>> âvb2_dc_get_base_sgtâ: drivers/media/v4l2-core/videobuf2-dma-contig.c:385:
>> error: implicit declaration of function âdma_get_sgtableâ make[7]: ***
>> [drivers/media/v4l2-core/videobuf2-dma-contig.o] Error 1
>>
>> VIDEO_RENESAS_VSP1 (which doesn't have a platform dependency) selects
>> VIDEOBUF2_DMA_CONTIG, but the latter depends on HAS_DMA.
>>
>> Make VIDEO_RENESAS_VSP1 depend on HAS_DMA to fix this.
>
> Is there a chance we could fix the Kconfig infrastructure instead ? It warns
> about the unmet dependency, shouldn't it disallow selecting the driver in the
> first place ? I have a vague feeling that this topic has been discussed before
> though.

This has come up several times before.
Unfortunately "select" was "designed" to circumvent all dependencies of
the target symbol.

> If that's not possible,
>
>> Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
>
> Acked-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
>
>> ---
>> drivers/media/platform/Kconfig | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/media/platform/Kconfig b/drivers/media/platform/Kconfig
>> index 8068d7b..fbc0611 100644
>> --- a/drivers/media/platform/Kconfig
>> +++ b/drivers/media/platform/Kconfig
>> @@ -212,7 +212,7 @@ config VIDEO_SH_VEU
>>
>> config VIDEO_RENESAS_VSP1
>> tristate "Renesas VSP1 Video Processing Engine"
>> - depends on VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
>> + depends on VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API && HAS_DMA
>> select VIDEOBUF2_DMA_CONTIG
>> ---help---
>> This is a V4L2 driver for the Renesas VSP1 video processing engine.

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/