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

Commit ee9e2a52 authored by Niklas Söderlund's avatar Niklas Söderlund Committed by Mauro Carvalho Chehab
Browse files

[media] rcar-vin: move chip check for pixelformat support



The check for if the specific pixelformat is supported on the current
chip should happen in VIDIOC_S_FMT and VIDIOC_TRY_FMT and not when we
try to setup the hardware for streaming.

Signed-off-by: default avatarNiklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
parent 2fb5910c
Loading
Loading
Loading
Loading
+3 −5
Original line number Diff line number Diff line
@@ -225,11 +225,9 @@ static int rvin_setup(struct rvin_dev *vin)
		dmr = 0;
		break;
	case V4L2_PIX_FMT_XBGR32:
		if (vin->chip == RCAR_GEN2 || vin->chip == RCAR_H1) {
		/* Note: not supported on M1 */
		dmr = VNDMR_EXRGB;
		break;
		}
		/* fall through */
	default:
		vin_err(vin, "Invalid pixelformat (0x%x)\n",
			vin->format.pixelformat);
+5 −0
Original line number Diff line number Diff line
@@ -192,6 +192,11 @@ static int __rvin_try_format(struct rvin_dev *vin,
	pix->sizeimage = max_t(u32, pix->sizeimage,
			       rvin_format_sizeimage(pix));

	if (vin->chip == RCAR_M1 && pix->pixelformat == V4L2_PIX_FMT_XBGR32) {
		vin_err(vin, "pixel format XBGR32 not supported on M1\n");
		return -EINVAL;
	}

	vin_dbg(vin, "Requested %ux%u Got %ux%u bpl: %d size: %d\n",
		rwidth, rheight, pix->width, pix->height,
		pix->bytesperline, pix->sizeimage);