2019-02-05 06:39:05

by Kuninori Morimoto

[permalink] [raw]
Subject: compile error at sun6i_video


Hi MultiMedia ML

I got below compile error at SH.

...
CC drivers/tty/tty_io.o
/opt/RB02197/home/morimoto/save/WORK/linux/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c: In function 'sun6i_video_start_streaming':
/opt/RB02197/home/morimoto/save/WORK/linux/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c:141:29: error: passing argument 1 of 'media_pipeline_start' from incompatible pointer type [-Werror=incompatible-pointer-types]
ret = media_pipeline_start(&video->vdev.entity, &video->vdev.pipe);
^~~~~~~~~~~~~~~~~~~
In file included from /opt/RB02197/home/morimoto/save/WORK/linux/include/media/media-device.h:26,
from /opt/RB02197/home/morimoto/save/WORK/linux/include/media/v4l2-device.h:24,
from /opt/RB02197/home/morimoto/save/WORK/linux/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c:10:
/opt/RB02197/home/morimoto/save/WORK/linux/include/media/media-entity.h:1030:84: note: expected 'struct media_pad *' but argument is of type 'struct media_entity *'
__must_check int media_pipeline_start(struct media_pad *pad,
^
/opt/RB02197/home/morimoto/save/WORK/linux/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c:205:22: error: passing argument 1 of 'media_pipeline_stop' from incompatible pointer type [-Werror=incompatible-pointer-types]
media_pipeline_stop(&video->vdev.entity);
^~~~~~~~~~~~~~~~~~~
In file included from /opt/RB02197/home/morimoto/save/WORK/linux/include/media/media-device.h:26,
from /opt/RB02197/home/morimoto/save/WORK/linux/include/media/v4l2-device.h:24,
from /opt/RB02197/home/morimoto/save/WORK/linux/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c:10:
/opt/RB02197/home/morimoto/save/WORK/linux/include/media/media-entity.h:1055:44: note: expected 'struct media_pad *' but argument is of type 'struct media_entity *'
void media_pipeline_stop(struct media_pad *pad);
~~~~~~~~~~~~~~~~~~^~~
/opt/RB02197/home/morimoto/save/WORK/linux/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c: In function 'sun6i_video_stop_streaming':
/opt/RB02197/home/morimoto/save/WORK/linux/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c:229:22: error: passing argument 1 of 'media_pipeline_stop' from incompatible pointer type [-Werror=incompatible-pointer-types]
media_pipeline_stop(&video->vdev.entity);
^~~~~~~~~~~~~~~~~~~
In file included from /opt/RB02197/home/morimoto/save/WORK/linux/include/media/media-device.h:26,
from /opt/RB02197/home/morimoto/save/WORK/linux/include/media/v4l2-device.h:24,
from /opt/RB02197/home/morimoto/save/WORK/linux/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c:10:
/opt/RB02197/home/morimoto/save/WORK/linux/include/media/media-entity.h:1055:44: note: expected 'struct media_pad *' but argument is of type 'struct media_entity *'
void media_pipeline_stop(struct media_pad *pad);
~~~~~~~~~~~~~~~~~~^~~


Best regards
---
Kuninori Morimoto


2019-02-05 10:26:56

by Sakari Ailus

[permalink] [raw]
Subject: Re: compile error at sun6i_video

Hi Morimoto-san,

On Tue, Feb 05, 2019 at 03:38:29PM +0900, Kuninori Morimoto wrote:
>
> Hi MultiMedia ML
>
> I got below compile error at SH.
>
> ...
> CC drivers/tty/tty_io.o
> /opt/RB02197/home/morimoto/save/WORK/linux/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c: In function 'sun6i_video_start_streaming':
> /opt/RB02197/home/morimoto/save/WORK/linux/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c:141:29: error: passing argument 1 of 'media_pipeline_start' from incompatible pointer type [-Werror=incompatible-pointer-types]
> ret = media_pipeline_start(&video->vdev.entity, &video->vdev.pipe);
> ^~~~~~~~~~~~~~~~~~~
> In file included from /opt/RB02197/home/morimoto/save/WORK/linux/include/media/media-device.h:26,
> from /opt/RB02197/home/morimoto/save/WORK/linux/include/media/v4l2-device.h:24,
> from /opt/RB02197/home/morimoto/save/WORK/linux/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c:10:
> /opt/RB02197/home/morimoto/save/WORK/linux/include/media/media-entity.h:1030:84: note: expected 'struct media_pad *' but argument is of type 'struct media_entity *'
> __must_check int media_pipeline_start(struct media_pad *pad,
> ^
> /opt/RB02197/home/morimoto/save/WORK/linux/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c:205:22: error: passing argument 1 of 'media_pipeline_stop' from incompatible pointer type [-Werror=incompatible-pointer-types]
> media_pipeline_stop(&video->vdev.entity);
> ^~~~~~~~~~~~~~~~~~~
> In file included from /opt/RB02197/home/morimoto/save/WORK/linux/include/media/media-device.h:26,
> from /opt/RB02197/home/morimoto/save/WORK/linux/include/media/v4l2-device.h:24,
> from /opt/RB02197/home/morimoto/save/WORK/linux/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c:10:
> /opt/RB02197/home/morimoto/save/WORK/linux/include/media/media-entity.h:1055:44: note: expected 'struct media_pad *' but argument is of type 'struct media_entity *'
> void media_pipeline_stop(struct media_pad *pad);
> ~~~~~~~~~~~~~~~~~~^~~
> /opt/RB02197/home/morimoto/save/WORK/linux/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c: In function 'sun6i_video_stop_streaming':
> /opt/RB02197/home/morimoto/save/WORK/linux/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c:229:22: error: passing argument 1 of 'media_pipeline_stop' from incompatible pointer type [-Werror=incompatible-pointer-types]
> media_pipeline_stop(&video->vdev.entity);
> ^~~~~~~~~~~~~~~~~~~
> In file included from /opt/RB02197/home/morimoto/save/WORK/linux/include/media/media-device.h:26,
> from /opt/RB02197/home/morimoto/save/WORK/linux/include/media/v4l2-device.h:24,
> from /opt/RB02197/home/morimoto/save/WORK/linux/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c:10:
> /opt/RB02197/home/morimoto/save/WORK/linux/include/media/media-entity.h:1055:44: note: expected 'struct media_pad *' but argument is of type 'struct media_entity *'
> void media_pipeline_stop(struct media_pad *pad);
> ~~~~~~~~~~~~~~~~~~^~~

Do you have the patches Niklas's v4l2/mux (or my vc) branch in your tree?
They change a few things on the way and drivers need to be converted.
Drivers that have been added since the patches were written do need to be
converted as well, and I suppose the sun6i_video driver is one of them.

Cc Niklas.

--
Kind regards,

Sakari Ailus

2019-02-06 02:13:48

by Kuninori Morimoto

[permalink] [raw]
Subject: Re: compile error at sun6i_video


Hi Sakari
Cc Niklas

Thank you for your feedback

> > /opt/RB02197/home/morimoto/save/WORK/linux/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c: In function 'sun6i_video_start_streaming':
> > /opt/RB02197/home/morimoto/save/WORK/linux/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c:141:29: error: passing argument 1 of 'media_pipeline_start' from incompatible pointer type [-Werror=incompatible-pointer-types]
> > ret = media_pipeline_start(&video->vdev.entity, &video->vdev.pipe);
> > ^~~~~~~~~~~~~~~~~~~
(snip)
> Do you have the patches Niklas's v4l2/mux (or my vc) branch in your tree?
> They change a few things on the way and drivers need to be converted.
> Drivers that have been added since the patches were written do need to be
> converted as well, and I suppose the sun6i_video driver is one of them.

I could find your branch at LinuxTV, and merged vc branch,
but unfortunately it can't solve compile issue.
I could understand its background.
It is OK for me if it will be solved on the next version.
I will skip it so far.
Thank you for your help

Best regards
---
Kuninori Morimoto