Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit aed6abd6 authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab
Browse files

V4L-DVB(7789a): cx18: fix symbol conflict with ivtv driver



LD      drivers/media/video/built-in.o
drivers/media/video/cx18/built-in.o: In function `get_service_set':
/home/v4l/tokernel/git/drivers/media/video/cx18/cx18-ioctl.c:118: multiple definition of `get_service_set'
drivers/media/video/ivtv/built-in.o:/home/v4l/tokernel/git/drivers/media/video/ivtv/ivtv-ioctl.c:119: first defined here
drivers/media/video/cx18/built-in.o: In function `expand_service_set':
/home/v4l/tokernel/git/drivers/media/video/cx18/cx18-ioctl.c:92: multiple definition of `expand_service_set'
drivers/media/video/ivtv/built-in.o:/home/v4l/tokernel/git/drivers/media/video/ivtv/ivtv-ioctl.c:92: first defined here
drivers/media/video/cx18/built-in.o: In function `service2vbi':
/home/v4l/tokernel/git/drivers/media/video/cx18/cx18-ioctl.c:44: multiple definition of `service2vbi'
drivers/media/video/ivtv/built-in.o:/home/v4l/tokernel/git/drivers/media/video/ivtv/ivtv-ioctl.c:42: first defined here
make[2]: ** [drivers/media/video/built-in.o] Erro 1
make[1]: ** [drivers/media/video] Erro 2
make: ** [drivers/media/] Erro 2

Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@infradead.org>
parent a07c8779
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -184,12 +184,12 @@ static int cx18_setup_vbi_fmt(struct cx18 *cx, enum v4l2_mpeg_stream_vbi_fmt fmt
	if (cx->vbi.insert_mpeg == 0)
	if (cx->vbi.insert_mpeg == 0)
		return 0;
		return 0;
	/* Need sliced data for mpeg insertion */
	/* Need sliced data for mpeg insertion */
	if (get_service_set(cx->vbi.sliced_in) == 0) {
	if (cx18_get_service_set(cx->vbi.sliced_in) == 0) {
		if (cx->is_60hz)
		if (cx->is_60hz)
			cx->vbi.sliced_in->service_set = V4L2_SLICED_CAPTION_525;
			cx->vbi.sliced_in->service_set = V4L2_SLICED_CAPTION_525;
		else
		else
			cx->vbi.sliced_in->service_set = V4L2_SLICED_WSS_625;
			cx->vbi.sliced_in->service_set = V4L2_SLICED_WSS_625;
		expand_service_set(cx->vbi.sliced_in, cx->is_50hz);
		cx18_expand_service_set(cx->vbi.sliced_in, cx->is_50hz);
	}
	}
	return 0;
	return 0;
}
}
+6 −6
Original line number Original line Diff line number Diff line
@@ -40,7 +40,7 @@
#include <media/v4l2-chip-ident.h>
#include <media/v4l2-chip-ident.h>
#include <linux/i2c-id.h>
#include <linux/i2c-id.h>


u16 service2vbi(int type)
u16 cx18_service2vbi(int type)
{
{
	switch (type) {
	switch (type) {
	case V4L2_SLICED_TELETEXT_B:
	case V4L2_SLICED_TELETEXT_B:
@@ -88,7 +88,7 @@ static u16 select_service_from_set(int field, int line, u16 set, int is_pal)
	return 0;
	return 0;
}
}


void expand_service_set(struct v4l2_sliced_vbi_format *fmt, int is_pal)
void cx18_expand_service_set(struct v4l2_sliced_vbi_format *fmt, int is_pal)
{
{
	u16 set = fmt->service_set;
	u16 set = fmt->service_set;
	int f, l;
	int f, l;
@@ -114,7 +114,7 @@ static int check_service_set(struct v4l2_sliced_vbi_format *fmt, int is_pal)
	return set != 0;
	return set != 0;
}
}


u16 get_service_set(struct v4l2_sliced_vbi_format *fmt)
u16 cx18_get_service_set(struct v4l2_sliced_vbi_format *fmt)
{
{
	int f, l;
	int f, l;
	u16 set = 0;
	u16 set = 0;
@@ -213,7 +213,7 @@ static int cx18_get_fmt(struct cx18 *cx, int streamtype, struct v4l2_format *fmt
		memset(vbifmt->service_lines, 0, sizeof(vbifmt->service_lines));
		memset(vbifmt->service_lines, 0, sizeof(vbifmt->service_lines));


		cx18_av_cmd(cx, VIDIOC_G_FMT, fmt);
		cx18_av_cmd(cx, VIDIOC_G_FMT, fmt);
		vbifmt->service_set = get_service_set(vbifmt);
		vbifmt->service_set = cx18_get_service_set(vbifmt);
		break;
		break;
	}
	}
	default:
	default:
@@ -285,9 +285,9 @@ static int cx18_try_or_set_fmt(struct cx18 *cx, int streamtype,
	memset(vbifmt->reserved, 0, sizeof(vbifmt->reserved));
	memset(vbifmt->reserved, 0, sizeof(vbifmt->reserved));


	if (vbifmt->service_set)
	if (vbifmt->service_set)
		expand_service_set(vbifmt, cx->is_50hz);
		cx18_expand_service_set(vbifmt, cx->is_50hz);
	set = check_service_set(vbifmt, cx->is_50hz);
	set = check_service_set(vbifmt, cx->is_50hz);
	vbifmt->service_set = get_service_set(vbifmt);
	vbifmt->service_set = cx18_get_service_set(vbifmt);


	if (!set_fmt)
	if (!set_fmt)
		return 0;
		return 0;
+3 −3
Original line number Original line Diff line number Diff line
@@ -21,9 +21,9 @@
 *  02111-1307  USA
 *  02111-1307  USA
 */
 */


u16 service2vbi(int type);
u16 cx18_service2vbi(int type);
void expand_service_set(struct v4l2_sliced_vbi_format *fmt, int is_pal);
void cx18_expand_service_set(struct v4l2_sliced_vbi_format *fmt, int is_pal);
u16 get_service_set(struct v4l2_sliced_vbi_format *fmt);
u16 cx18_get_service_set(struct v4l2_sliced_vbi_format *fmt);
int cx18_v4l2_ioctl(struct inode *inode, struct file *filp, unsigned int cmd,
int cx18_v4l2_ioctl(struct inode *inode, struct file *filp, unsigned int cmd,
		    unsigned long arg);
		    unsigned long arg);
int cx18_v4l2_ioctls(struct cx18 *cx, struct file *filp, unsigned cmd,
int cx18_v4l2_ioctls(struct cx18 *cx, struct file *filp, unsigned cmd,
+1 −1
Original line number Original line Diff line number Diff line
@@ -58,7 +58,7 @@ static void copy_vbi_data(struct cx18 *cx, int lines, u32 pts_stamp)
			linemask[0] |= (1 << l);
			linemask[0] |= (1 << l);
		else
		else
			linemask[1] |= (1 << (l - 32));
			linemask[1] |= (1 << (l - 32));
		dst[sd + 12 + line * 43] = service2vbi(sdata->id);
		dst[sd + 12 + line * 43] = cx18_service2vbi(sdata->id);
		memcpy(dst + sd + 12 + line * 43 + 1, sdata->data, 42);
		memcpy(dst + sd + 12 + line * 43 + 1, sdata->data, 42);
		line++;
		line++;
	}
	}