{"id":29,"url":"https://patchwork.libcamera.org/api/patches/29/?format=json","web_url":"https://patchwork.libcamera.org/patch/29/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/projects/1/?format=json","name":"libcamera","link_name":"libcamera","list_id":"libcamera_core","list_email":"libcamera-devel@lists.libcamera.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20181211140028.25241-3-laurent.pinchart@ideasonboard.com>","date":"2018-12-11T14:00:28","name":"[libcamera-devel,3/3] utils: ipu3: process: Configure formats on ImgU subdev pads","commit_ref":"0763b8a80e3d2d2f44a98cd8e5c789879f72e249","pull_url":null,"state":"accepted","archived":false,"hash":"c18cf57987c1857adc9b62d398b9249a2426e085","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/?format=json","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"delegate":null,"mbox":"https://patchwork.libcamera.org/patch/29/mbox/","series":[{"id":15,"url":"https://patchwork.libcamera.org/api/series/15/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=15","date":"2018-12-11T14:00:26","name":"[libcamera-devel,1/3] utils: ipu3: Abort when sensor or media device isn't found","version":1,"mbox":"https://patchwork.libcamera.org/series/15/mbox/"}],"comments":"https://patchwork.libcamera.org/api/patches/29/comments/","check":"pending","checks":"https://patchwork.libcamera.org/api/patches/29/checks/","tags":{},"headers":{"Return-Path":"<laurent.pinchart@ideasonboard.com>","Received":["from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id A0FCA60B10\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue, 11 Dec 2018 14:59:50 +0100 (CET)","from avalon.bb.dnainternet.fi\n\t(dfj612ybrt5fhg77mgycy-3.rev.dnainternet.fi\n\t[IPv6:2001:14ba:21f5:5b00:2e86:4862:ef6a:2804])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 0559F55A\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue, 11 Dec 2018 14:59:49 +0100 (CET)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1544536790;\n\tbh=flsOWhPiOc/kRHDwa/lQr75BdpHcyJbjl9gVREHrFUU=;\n\th=From:To:Subject:Date:In-Reply-To:References:From;\n\tb=Z42YcoqJ/KAuJCYKgQ836WsObdEf7nVPXDO7F6eKcEHYNuaTdmxZ0FlPsDRS2LUsu\n\tU8PG3sMZEZ8tidVnWySVbhZFShFVc0IzZYJKjbesnijgb6YZxIma3ImugWWLTUYH2t\n\tLAQpOSGA5YVML/ymE0PW9KTWdJoZb/a3/axOvkmQ=","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"libcamera-devel@lists.libcamera.org","Date":"Tue, 11 Dec 2018 16:00:28 +0200","Message-Id":"<20181211140028.25241-3-laurent.pinchart@ideasonboard.com>","X-Mailer":"git-send-email 2.19.2","In-Reply-To":"<20181211140028.25241-1-laurent.pinchart@ideasonboard.com>","References":"<20181211140028.25241-1-laurent.pinchart@ideasonboard.com>","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","Subject":"[libcamera-devel] [PATCH 3/3] utils: ipu3: process: Configure\n\tformats on ImgU subdev pads","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.23","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","X-List-Received-Date":"Tue, 11 Dec 2018 13:59:50 -0000"},"content":"Set format and selection rectangles on the ImgU subdev as required by\nthe driver.\n\nSigned-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n---\n utils/ipu3/ipu3-process.sh | 31 +++++++++++++++++++++++--------\n 1 file changed, 23 insertions(+), 8 deletions(-)","diff":"diff --git a/utils/ipu3/ipu3-process.sh b/utils/ipu3/ipu3-process.sh\nindex 0d1df9435271..bb4abbe883a0 100755\n--- a/utils/ipu3/ipu3-process.sh\n+++ b/utils/ipu3/ipu3-process.sh\n@@ -13,6 +13,8 @@\n # - raw2pnm (from nvt https://github.com/intel/nvt.git)\n # - yavta (from git://git.ideasonboard.org/yavta.git)\n \n+imgu_entity=\"ipu3-imgu 0\"\n+\n # Locate the media device\n find_media_device() {\n \tlocal mdev\n@@ -35,12 +37,25 @@ configure_pipeline() {\n \tlocal enable_3a=1\n \tlocal enable_out=1\n \tlocal enable_vf=1\n+\tlocal mode=0\n \n+\t# Configure the links\n \t$mediactl -r\n-\t$mediactl -l \"\\\"ipu3-imgu 0 input\\\":0 -> \\\"ipu3-imgu 0\\\":0[1]\"\n-\t$mediactl -l \"\\\"ipu3-imgu 0\\\":2 -> \\\"ipu3-imgu 0 output\\\":0[$enable_out]\"\n-\t$mediactl -l \"\\\"ipu3-imgu 0\\\":3 -> \\\"ipu3-imgu 0 viewfinder\\\":0[$enable_vf]\"\n-\t$mediactl -l \"\\\"ipu3-imgu 0\\\":4 -> \\\"ipu3-imgu 0 3a stat\\\":0[$enable_3a]\"\n+\t$mediactl -l \"\\\"$imgu_entity input\\\":0 -> \\\"$imgu_entity\\\":0[1]\"\n+\t$mediactl -l \"\\\"$imgu_entity\\\":2 -> \\\"$imgu_entity output\\\":0[$enable_out]\"\n+\t$mediactl -l \"\\\"$imgu_entity\\\":3 -> \\\"$imgu_entity viewfinder\\\":0[$enable_vf]\"\n+\t$mediactl -l \"\\\"$imgu_entity\\\":4 -> \\\"$imgu_entity 3a stat\\\":0[$enable_3a]\"\n+\n+\t# Select processing mode (0 for video, 1 for still image)\n+\tyavta --no-query -w \"0x009819c1 $mode\" $($mediactl -e \"$imgu_entity\")\n+\n+\t# Set formats. The media bus code doesn't matter as it is ignored by the\n+\t# driver. We should use the FIXED format, but media-ctl doesn't support\n+\t# it.\n+\t$mediactl -V \"\\\"$imgu_entity\\\":0 [fmt:SBGGR10_1X10/$out_size crop:(0,0)/$in_size compose:(0,0)/$in_size]\"\n+\t$mediactl -V \"\\\"$imgu_entity\\\":2 [fmt:SBGGR10_1X10/$out_size]\"\n+\t$mediactl -V \"\\\"$imgu_entity\\\":3 [fmt:SBGGR10_1X10/$vf_size]\"\n+\t$mediactl -V \"\\\"$imgu_entity\\\":4 [fmt:SBGGR10_1X10/$out_size]\"\n }\n \n # Perform frame processing through the IMGU\n@@ -53,17 +68,17 @@ process_frames() {\n \t# statistics. Sleep 500ms between each execution of yavta to keep the\n \t# stdout messages readable.\n \t$yavta -f $IMGU_OUT_PIXELFORMAT -s $out_size \"-F$output_dir/frame-out-#.bin\" \\\n-\t\t$($mediactl -e \"ipu3-imgu 0 output\") &\n+\t\t$($mediactl -e \"$imgu_entity output\") &\n \tsleep 0.5\n \t$yavta -f $IMGU_VF_PIXELFORMAT -s $vf_size \"-F$output_dir/frame-vf-#.bin\" \\\n-\t\t$($mediactl -e \"ipu3-imgu 0 viewfinder\") &\n+\t\t$($mediactl -e \"$imgu_entity viewfinder\") &\n \tsleep 0.5\n-\t$yavta $($mediactl -e \"ipu3-imgu 0 3a stat\") &\n+\t$yavta $($mediactl -e \"$imgu_entity 3a stat\") &\n \tsleep 0.5\n \n \t# Feed the IMGU input.\n \t$yavta -f $IMGU_IN_PIXELFORMAT -s $in_size \"-F$in_file\" \\\n-\t\t$($mediactl -e \"ipu3-imgu 0 input\")\n+\t\t$($mediactl -e \"$imgu_entity input\")\n }\n \n # Convert captured files to ppm\n","prefixes":["libcamera-devel","3/3"]}