Received: by 10.223.176.46 with SMTP id f43csp873988wra; Fri, 19 Jan 2018 03:27:07 -0800 (PST) X-Google-Smtp-Source: ACJfBouKH9+eWd5UWCJp1qTW/wGjHez/wbXY4MuzwpL2SAeulTt+VV3UR5bfjQO/CBaSK+zo/ukn X-Received: by 10.101.81.7 with SMTP id f7mr40962220pgq.425.1516361227587; Fri, 19 Jan 2018 03:27:07 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1516361227; cv=none; d=google.com; s=arc-20160816; b=qcIPcwcxA2ePupJwgJlvDHI619CvCpbfp0NjvFm0TSE3w5J5czCJ7B5exyJF/0MuWG JzYAG8iYAZTAPEq1DQY3j8bCCCyhSzK4tuBNfZznf/WzUJYVK6/9TflChzeaGm/4AOKx 90egWaa0KBNX1SbM6qsV5+joPRE4cUzEg0YtVcFWnlsnx2OIz0Yh+BZEF9HQEVTue0ts mAKIJucJYee0Ign4o3cfSdezEA7iqvHB153OUtAbDAp5nq2y7D73TiELLj58w40hPwNL nh/VXLKBYx5HHDI9YsBOYiS3IEKcwGzpuSrWgboJ1x57LEu2G/wSnPJy//BBG6oDvj23 Og7w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject:arc-authentication-results; bh=o42kIpNYjEVEHrb3vp7xdsID4ZSFzIjUttCFXklWgDw=; b=ZhxxDKLyLQGmJBA5jJczTy/SuIvNexAGEyY2Q17dPOn0Ekj2zpCsapTRFEMkDxdIfv l/PNbgtpDOguPcfzx8LfnFPRn48VkfO399mpqxsgXuQJN/s29GzyTudAEqQfr2O0juQ9 Cpz8HcKF0FjUeuQQTPulSX7vhV3SZBaSvPMOHsX1n1NrBZZ33uj7iWkukjmAF/RGH8/M f4Pp2aZ6wJG+ZQr+FdN8njh1Bjjcj5TKMdQjFzL3NzopvkYXG+dFNbcH+YjerpiuSoyz 87KUvlyoz4A8Sj6VqSWSXPy7v7RNdEn+wCntUxEE7JrGC3nDtF8KSwNiovAgiLqm7iKq yu7g== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id y11-v6si749292plg.242.2018.01.19.03.26.53; Fri, 19 Jan 2018 03:27:07 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755411AbeASL0X (ORCPT + 99 others); Fri, 19 Jan 2018 06:26:23 -0500 Received: from lb1-smtp-cloud9.xs4all.net ([194.109.24.22]:38038 "EHLO lb1-smtp-cloud9.xs4all.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754562AbeASL0P (ORCPT ); Fri, 19 Jan 2018 06:26:15 -0500 Received: from [IPv6:2001:420:44c1:2579:7a24:afff:fed9:e375] ([IPv6:2001:420:44c1:2579:7a24:afff:fed9:e375]) by smtp-cloud9.xs4all.net with ESMTPA id cUoDeJ3TX6VzTcUoGeb2jY; Fri, 19 Jan 2018 12:26:13 +0100 Subject: Re: [PATCH v6 0/9] Renesas Capture Engine Unit (CEU) V4L2 driver To: Jacopo Mondi , laurent.pinchart@ideasonboard.com, magnus.damm@gmail.com, geert@glider.be, mchehab@kernel.org, festevam@gmail.com, sakari.ailus@iki.fi, robh+dt@kernel.org, mark.rutland@arm.com, pombredanne@nexb.com Cc: linux-renesas-soc@vger.kernel.org, linux-media@vger.kernel.org, linux-sh@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org References: <1516139101-7835-1-git-send-email-jacopo+renesas@jmondi.org> From: Hans Verkuil Message-ID: <6fcd22c1-19a5-e0b7-2b00-961e1cd1ebaa@xs4all.nl> Date: Fri, 19 Jan 2018 12:26:09 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: <1516139101-7835-1-git-send-email-jacopo+renesas@jmondi.org> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-CMAE-Envelope: MS4wfCY4dodQcslDjpY6gnFdwCh3B8ahKTeTL00z2Nm1j+8rb4kc84ZcUhwCamh422PFjCJgO24OoPe2w8iR/7zvizOytWt+v9L7dVlzEWrm05rpv/ziUHOk 6F4svaV0DfSLIueLjkUbXnnXrbG/H24gnei0V5UxbczIpirymrjDKqUxYvwtF5SaMKIuZWKpVfIukSFpiSqo7jvciShVgcBUOTu5ZSMK82WJ/ZlE/mmIOt2Y wBcBi4XuvZVc2NjWcBNA+LwffM9mX7AqszVkedngFQNW5kBu19j0UQQ8xgk9Q3KmT0p1owLSz9ThsSGXzX5W59fPnZeDHETglyWW4w5PlQXzUXmZv2xsr34q 3Q7vwIl/8MSUZoTSStkj6MYVKpvhJ/qa/hJ2gozj7p4h+ItqAR6SQynNNbXpGZOk9OMXyNLUdrF8BcvbxTRFSG0qVx2stXGyoIqmXVstFbkdS3CEmcYbfj30 5luZJDxmrEKw0zwy21lHjZsHIW6KNR9w4Gs+vgaMeBbG9ZIf0XCcP0HV8hIvmqoNmnTyZm+RaQRG/VSlb1eLg1VD5+99z9fh9gRi1aqu+gN/A/j3ZkLbKc42 Ong6zB5kPF3DYvDyfARZiD1Op/LCaghZy0DEVLw0THZyGzQT2aGSPnzfA9jbRtOTdiRlQMV2zZkxq7OLL71GJwaj+kzn+xet38slQl50QUTUa6AO54ADrh8E e2vxplrCVDgN41K67BIn5oiil65rPXUDm7sP8bLBrntpQU3w1Tjz8FQLvenwfz40huQ+k7MinTgkEDvHQBCG18gK4XbUuScea8n7HF+qStfh+1vpYzKAvA== Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Jacopo, On 01/16/18 22:44, Jacopo Mondi wrote: > Hello, > new version of CEU after Hans' review. > > Added his Acked-by to most patches and closed review comments. > Running v4l2-compliance, I noticed a new failure introduced by the way I now > calculate the plane sizes in set/try_fmt. > > This is the function used to update per-plane bytesperline and sizeimage: > > static void ceu_update_plane_sizes(struct v4l2_plane_pix_format *plane, > unsigned int bpl, unsigned int szimage) > { > if (plane->bytesperline < bpl) > plane->bytesperline = bpl; > if (plane->sizeimage < szimage) > plane->sizeimage = szimage; > } > > I'm seeing a failure as v4l2-compliance requires buffers with both bytesperline > and sizeimage set to MAX_INT . Hans, is this expected from v4l2-compliance? > How should I handle this, if that has to be handled by the single drivers? I commented on this in my review of patch 3/9. > > Apart from that, here it is the output of v4l2-compliance, with the last tests > failing due to the above stated reason, and two errors in try/set format due to > the fact the driver is not setting ycbcr encoding after it receives an invalid Which driver? The CEU driver or the sensor driver? I don't actually see where it fails. > format. I would set those, but I'm not sure what it the correct value and not > all mainline drivers do that. In any case, the default for ycbcr_enc, xfer_func and quantization is 0. > > ------------------------------------------------------------------------------- > v4l2-compliance SHA : 1d3c611dee82090d9456730e24af368b51dcb4a9 I can't find this SHA in the v4l-utils repo. You should always compile v4l2-compliance from the master branch. Also test with 'v4l2-compliance -f': this tests streaming in all formats. > > Driver Info: > Driver name : renesas-ceu > Card type : Renesas CEU e8210000.ceu > Bus info : platform:renesas-ceu-e8210000.c > Driver version: 4.14.0 > Capabilities : 0x84201000 > Video Capture Multiplanar > Streaming > Extended Pix Format > Device Capabilities > Device Caps : 0x04201000 > Video Capture Multiplanar > Streaming > Extended Pix Format > > Compliance test for device /dev/video0 (not using libv4l2): > > Required ioctls: > test VIDIOC_QUERYCAP: OK > > Allow for multiple opens: > test second video open: OK > test VIDIOC_QUERYCAP: OK > test VIDIOC_G/S_PRIORITY: OK > test for unlimited opens: OK > > Debug ioctls: > test VIDIOC_DBG_G/S_REGISTER: OK > test VIDIOC_LOG_STATUS: OK (Not Supported) > > Input ioctls: > test VIDIOC_G/S_TUNER/ENUM_FREQ_BANDS: OK (Not Supported) > test VIDIOC_G/S_FREQUENCY: OK (Not Supported) > test VIDIOC_S_HW_FREQ_SEEK: OK (Not Supported) > test VIDIOC_ENUMAUDIO: OK (Not Supported) > test VIDIOC_G/S/ENUMINPUT: OK > test VIDIOC_G/S_AUDIO: OK (Not Supported) > Inputs: 1 Audio Inputs: 0 Tuners: 0 > > Output ioctls: > test VIDIOC_G/S_MODULATOR: OK (Not Supported) > test VIDIOC_G/S_FREQUENCY: OK (Not Supported) > test VIDIOC_ENUMAUDOUT: OK (Not Supported) > test VIDIOC_G/S/ENUMOUTPUT: OK (Not Supported) > test VIDIOC_G/S_AUDOUT: OK (Not Supported) > Outputs: 0 Audio Outputs: 0 Modulators: 0 > > Input/Output configuration ioctls: > test VIDIOC_ENUM/G/S/QUERY_STD: OK (Not Supported) > test VIDIOC_ENUM/G/S/QUERY_DV_TIMINGS: OK (Not Supported) > test VIDIOC_DV_TIMINGS_CAP: OK (Not Supported) > test VIDIOC_G/S_EDID: OK (Not Supported) > > Test input 0: > > Control ioctls: > test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK > test VIDIOC_QUERYCTRL: OK > test VIDIOC_G/S_CTRL: OK > test VIDIOC_G/S/TRY_EXT_CTRLS: OK > fail: v4l2-test-controls.cpp(782): subscribe event for control 'User Controls' failed > test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: FAIL > test VIDIOC_G/S_JPEGCOMP: OK (Not Supported) > Standard Controls: 12 Private Controls: 0 > > Format ioctls: > test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK > fail: v4l2-test-formats.cpp(1162): ret && node->has_frmintervals > test VIDIOC_G/S_PARM: FAIL > test VIDIOC_G_FBUF: OK (Not Supported) > test VIDIOC_G_FMT: OK > fail: v4l2-test-formats.cpp(335): ycbcr_enc >= 0xff > fail: v4l2-test-formats.cpp(451): testColorspace(pix_mp.pixelformat, pix_mp.colorspace, pix_mp.ycbcr_enc, pix_mp.quantization) > fail: v4l2-test-formats.cpp(736): Video Capture Multiplanar is valid, but TRY_FMT failed to return a format > test VIDIOC_TRY_FMT: FAIL > fail: v4l2-test-formats.cpp(335): ycbcr_enc >= 0xff > fail: v4l2-test-formats.cpp(451): testColorspace(pix_mp.pixelformat, pix_mp.colorspace, pix_mp.ycbcr_enc, pix_mp.quantization) > fail: v4l2-test-formats.cpp(996): Video Capture Multiplanar is valid, but no S_FMT was implemented > test VIDIOC_S_FMT: FAIL > test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported) > test Cropping: OK (Not Supported) > test Composing: OK (Not Supported) > test Scaling: OK (Not Supported) > > Codec ioctls: > test VIDIOC_(TRY_)ENCODER_CMD: OK (Not Supported) > test VIDIOC_G_ENC_INDEX: OK (Not Supported) > test VIDIOC_(TRY_)DECODER_CMD: OK (Not Supported) > > Buffer ioctls: > test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK > test VIDIOC_EXPBUF: OK > > Test input 0: > > > Total: 43, Succeeded: 39, Failed: 4, Warnings: 0 'Failed' must be 0, otherwise I won't Ack this driver. Regards, Hans