[{"id":26236,"web_url":"https://patchwork.libcamera.org/comment/26236/","msgid":"<CAHW6GYL-wMofEWHP=+i9AozvvZqU7Xg8Awj20AoX2zuxCdtMVQ@mail.gmail.com>","date":"2023-01-16T14:59:34","subject":"Re: [libcamera-devel] [PATCH v2 5/5] documentation: sensor_drivers:\n\tDocument H/V flip","submitter":{"id":42,"url":"https://patchwork.libcamera.org/api/people/42/","name":"David Plowman","email":"david.plowman@raspberrypi.com"},"content":"Hi Jacopo\n\nThanks for the update!\n\nOn Sat, 14 Jan 2023 at 19:47, Jacopo Mondi\n<jacopo.mondi@ideasonboard.com> wrote:\n>\n> Briefly document the optional requirement support for H/V flip controls.\n>\n> Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>\n\nReviewed-by: David Plowman <david.plowman@raspberrypi.com>\n\nThanks!\nDavid\n\n> ---\n>  Documentation/sensor_driver_requirements.rst | 12 ++++++++++++\n>  1 file changed, 12 insertions(+)\n>\n> diff --git a/Documentation/sensor_driver_requirements.rst b/Documentation/sensor_driver_requirements.rst\n> index 3abc8f35924a..0e516b34a215 100644\n> --- a/Documentation/sensor_driver_requirements.rst\n> +++ b/Documentation/sensor_driver_requirements.rst\n> @@ -62,6 +62,18 @@ The sensor driver should support the following V4L2 controls:\n>\n>  The controls are used to register the camera location and rotation.\n>\n> +In order to support rotating the image the sensor driver should support\n> +\n> +* `V4L2_CID_HFLIP`_\n> +* `V4L2_CID_VFLIP`_\n> +\n> +.. _V4L2_CID_HFLIP: https://www.kernel.org/doc/html/latest/userspace-api/media/v4l/control.html\n> +.. _V4L2_CID_VFLIP: https://www.kernel.org/doc/html/latest/userspace-api/media/v4l/control.html\n> +\n> +The controls must be writable from userspace. In case of a RAW Bayer sensors,\n> +drivers should correctly report if vertical/horizontal flips modify the Bayer\n> +pattern ordering by reporting the `V4L2_CTRL_FLAG_MODIFY_LAYOUT` control flag.\n> +\n>  The sensor driver should implement support for the V4L2 Selection API,\n>  specifically it should implement support for the\n>  `VIDIOC_SUBDEV_G_SELECTION`_ ioctl with support for the following selection\n> --\n> 2.39.0\n>","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id ED081BD87C\n\tfor <parsemail@patchwork.libcamera.org>;\n\tMon, 16 Jan 2023 14:59:48 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 11DF7625E4;\n\tMon, 16 Jan 2023 15:59:48 +0100 (CET)","from mail-ot1-x333.google.com (mail-ot1-x333.google.com\n\t[IPv6:2607:f8b0:4864:20::333])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id D371261F01\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 16 Jan 2023 15:59:46 +0100 (CET)","by mail-ot1-x333.google.com with SMTP id\n\tp17-20020a9d6951000000b00678306ceb94so16240274oto.5\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 16 Jan 2023 06:59:46 -0800 (PST)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1673881188;\n\tbh=5nLIEn+pvNOhtpC0RatC9YbUKGI+VhtRkGl3BL+hVWY=;\n\th=References:In-Reply-To:Date:To:Subject:List-Id:List-Unsubscribe:\n\tList-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:\n\tFrom;\n\tb=u90B218uZlH+/is9iORkikEy1iGrjKjaApPhvuUQj04lZ9H/YYRNTvoZ2Z7LHrVP2\n\tXQs064j89K6X68g7J6ZssDroOkkAbO+l3TX8OBqR2oHUyRgTFU0OdOG7QEmwImL6Im\n\toCGGM6RH7B/wHl6s52QJ2N+j7pJyOQdVrLOqZ1qH6xnDD5m6P2+i1fLd6DBMfJhLnb\n\tJNe0Y0ACnZfLAjpwWrnXAT7lifQR1N442rhBQTjPYpkerVIveYbsMRs8aaNzzs9UVr\n\tQMNtFEsac2NYGgY9BiurEs9WyHbcLLpQV2qVwRMxquCbXdxG3ZSLmFqrA9ViEu5ZsI\n\txY3RKePjzGJfw==","v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=raspberrypi.com; s=google;\n\th=cc:to:subject:message-id:date:from:in-reply-to:references\n\t:mime-version:from:to:cc:subject:date:message-id:reply-to;\n\tbh=QNE3FZZv7Go/QPA9fhNwIZAg+45Pyy/fz3aEogCWowo=;\n\tb=NWq7H4GUt47iv5SvDfiNk576dGsEplY7s1I1USrceY8VoqHYg4qUSRbjy9Iex0wKnV\n\tSUW8uJIo3HNdO10nS9Mo3f4lSgYcb6GUPSnVeGMOWE9TdSR80f4A6qx2HC+6vRgZvE16\n\tt8HUyMGC8YOqsunb0GcB78m2HGjT8JCmPUGPnLurNXUrVWDDuNSnJTDxPS2cWilRfK//\n\tq8pXB9cm16DsyPNLVcY2kV4nzGZ5sBP5grudREeOP5tUfVR+CUvMaC1EQgcFojkPP5et\n\tp1xmHv9hQfNJrW6hTPxru/8D19021Ngjc3cE6VLXYBQuQID+U+Eninb8wZIu2xDnW/nY\n\thE9Q=="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (2048-bit key; \n\tunprotected) header.d=raspberrypi.com\n\theader.i=@raspberrypi.com\n\theader.b=\"NWq7H4GU\"; dkim-atps=neutral","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20210112;\n\th=cc:to:subject:message-id:date:from:in-reply-to:references\n\t:mime-version:x-gm-message-state:from:to:cc:subject:date:message-id\n\t:reply-to;\n\tbh=QNE3FZZv7Go/QPA9fhNwIZAg+45Pyy/fz3aEogCWowo=;\n\tb=2AMzYv8IC4f5vYGkyxFYqTkbFPPtsGfIsbJVuBc0V3sA4ACk80PCCgDmBj/cdj2cJM\n\tb6qZyzINerihfrRgUsYt9fr/3Pg8Bvig8CUX++DYXG5YSL0h6w+StmiVlnwQdiPy6Y/0\n\tCLpNSybaCkDfTxfKPXIo4KDwakRnO8a7aDqJxZsOuZCM54cCVQHGKcpOTnG/vcBIZIUK\n\t3NKj4SxDKYfaag9rJpzf9kG1pTIjKWrVzW2YRhTA6S7307KEvI3SRqgqLfhfJQtWdz6R\n\tmOqW2sLTm6B1Q10CFKMUlTvChbkYgbCEJex59Fk/gcg33Ifj4ZNbo6OAXGMdCFp6vx1W\n\tUf/Q==","X-Gm-Message-State":"AFqh2krokrYhP3QSjwygHyYJHwoBKL64llwkZjVE9m6OHR6fLVE/PY+P\n\tMzceoNdxiwKtE9x3Pe6RMfbci5Iicag3VLf9dNG6fw==","X-Google-Smtp-Source":"AMrXdXuz2Z7mcCh/ayqwRrJpSqbBKuFnQYunIHwY2MF7yRb2GcFWkKzyPpn653fNT7fczeq35yvG3c/yza69/j6HP08=","X-Received":"by 2002:a05:6830:3886:b0:684:16ae:20b8 with SMTP id\n\tbq6-20020a056830388600b0068416ae20b8mr3457817otb.300.1673881185590;\n\tMon, 16 Jan 2023 06:59:45 -0800 (PST)","MIME-Version":"1.0","References":"<20230114194712.23272-1-jacopo.mondi@ideasonboard.com>\n\t<20230114194712.23272-6-jacopo.mondi@ideasonboard.com>","In-Reply-To":"<20230114194712.23272-6-jacopo.mondi@ideasonboard.com>","Date":"Mon, 16 Jan 2023 14:59:34 +0000","Message-ID":"<CAHW6GYL-wMofEWHP=+i9AozvvZqU7Xg8Awj20AoX2zuxCdtMVQ@mail.gmail.com>","To":"Jacopo Mondi <jacopo.mondi@ideasonboard.com>","Content-Type":"text/plain; charset=\"UTF-8\"","Subject":"Re: [libcamera-devel] [PATCH v2 5/5] documentation: sensor_drivers:\n\tDocument H/V flip","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","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>","From":"David Plowman via libcamera-devel <libcamera-devel@lists.libcamera.org>","Reply-To":"David Plowman <david.plowman@raspberrypi.com>","Cc":"libcamera-devel@lists.libcamera.org","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}}]