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

Commit 115f418b authored by Hans de Goede's avatar Hans de Goede Committed by Mauro Carvalho Chehab
Browse files

[media] pwc: Remove driver specific use of pixfmt.priv in the pwc driver



The .priv field never was intended for this, setting a framerate is
support using the standardized S_PARM ioctl.

Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent 1516524f
Loading
Loading
Loading
Loading
+0 −8
Original line number Original line Diff line number Diff line
@@ -469,14 +469,6 @@ Who: Hans de Goede <hdegoede@redhat.com>


----------------------------
----------------------------


What:	Driver specific use of pixfmt.priv in the pwc driver
When:	3.3
Why:	The .priv field never was intended for this, setting a framerate is
	support using the standardized S_PARM ioctl
Who:	Hans de Goede <hdegoede@redhat.com>

----------------------------

What:	Software emulation of arbritary resolutions in the pwc driver
What:	Software emulation of arbritary resolutions in the pwc driver
When:	3.3
When:	3.3
Why:	The pwc driver claims to support any resolution between 160x120
Why:	The pwc driver claims to support any resolution between 160x120
+6 −17
Original line number Original line Diff line number Diff line
@@ -473,7 +473,7 @@ static int pwc_vidioc_try_fmt(struct pwc_device *pdev, struct v4l2_format *f)
static int pwc_s_fmt_vid_cap(struct file *file, void *fh, struct v4l2_format *f)
static int pwc_s_fmt_vid_cap(struct file *file, void *fh, struct v4l2_format *f)
{
{
	struct pwc_device *pdev = video_drvdata(file);
	struct pwc_device *pdev = video_drvdata(file);
	int ret, fps, snapshot, compression, pixelformat;
	int ret, pixelformat;


	if (pwc_test_n_set_capt_file(pdev, file))
	if (pwc_test_n_set_capt_file(pdev, file))
		return -EBUSY;
		return -EBUSY;
@@ -483,16 +483,6 @@ static int pwc_s_fmt_vid_cap(struct file *file, void *fh, struct v4l2_format *f)
		return ret;
		return ret;


	pixelformat = f->fmt.pix.pixelformat;
	pixelformat = f->fmt.pix.pixelformat;
	compression = pdev->vcompression;
	snapshot = 0;
	fps = pdev->vframes;
	if (f->fmt.pix.priv) {
		compression = (f->fmt.pix.priv & PWC_QLT_MASK) >> PWC_QLT_SHIFT;
		snapshot = !!(f->fmt.pix.priv & PWC_FPS_SNAPSHOT);
		fps = (f->fmt.pix.priv & PWC_FPS_FRMASK) >> PWC_FPS_SHIFT;
		if (fps == 0)
			fps = pdev->vframes;
	}


	if (pixelformat != V4L2_PIX_FMT_YUV420 &&
	if (pixelformat != V4L2_PIX_FMT_YUV420 &&
	    pixelformat != V4L2_PIX_FMT_PWC1 &&
	    pixelformat != V4L2_PIX_FMT_PWC1 &&
@@ -511,9 +501,9 @@ static int pwc_s_fmt_vid_cap(struct file *file, void *fh, struct v4l2_format *f)
	}
	}


	PWC_DEBUG_IOCTL("Trying to set format to: width=%d height=%d fps=%d "
	PWC_DEBUG_IOCTL("Trying to set format to: width=%d height=%d fps=%d "
			"compression=%d snapshot=%d format=%c%c%c%c\n",
			"compression=%d format=%c%c%c%c\n",
			f->fmt.pix.width, f->fmt.pix.height, fps,
			f->fmt.pix.width, f->fmt.pix.height, pdev->vframes,
			compression, snapshot,
			pdev->vcompression,
			(pixelformat)&255,
			(pixelformat)&255,
			(pixelformat>>8)&255,
			(pixelformat>>8)&255,
			(pixelformat>>16)&255,
			(pixelformat>>16)&255,
@@ -522,9 +512,8 @@ static int pwc_s_fmt_vid_cap(struct file *file, void *fh, struct v4l2_format *f)
	ret = pwc_set_video_mode(pdev,
	ret = pwc_set_video_mode(pdev,
				 f->fmt.pix.width,
				 f->fmt.pix.width,
				 f->fmt.pix.height,
				 f->fmt.pix.height,
				 fps,
				 pdev->vframes,
				 compression,
				 pdev->vcompression, 0);
				 snapshot);


	PWC_DEBUG_IOCTL("pwc_set_video_mode(), return=%d\n", ret);
	PWC_DEBUG_IOCTL("pwc_set_video_mode(), return=%d\n", ret);