{"id":17155,"url":"https://patchwork.libcamera.org/api/1.1/covers/17155/?format=json","web_url":"https://patchwork.libcamera.org/cover/17155/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/1.1/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":"<20220818094410.1671-1-jacopo@jmondi.org>","date":"2022-08-18T09:43:53","name":"[libcamera-devel,v3,00/17] libcamera: Align IPU3 and RKISP1 interfaces","submitter":{"id":3,"url":"https://patchwork.libcamera.org/api/1.1/people/3/?format=json","name":"Jacopo Mondi","email":"jacopo@jmondi.org"},"mbox":"https://patchwork.libcamera.org/cover/17155/mbox/","series":[{"id":3426,"url":"https://patchwork.libcamera.org/api/1.1/series/3426/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=3426","date":"2022-08-18T09:43:53","name":"libcamera: Align IPU3 and RKISP1 interfaces","version":3,"mbox":"https://patchwork.libcamera.org/series/3426/mbox/"}],"comments":"https://patchwork.libcamera.org/api/covers/17155/comments/","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 D0607C3272\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 18 Aug 2022 09:44:21 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 364F861FC0;\n\tThu, 18 Aug 2022 11:44:20 +0200 (CEST)","from relay9-d.mail.gandi.net (relay9-d.mail.gandi.net\n\t[217.70.183.199])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id CAE0A61FA5\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 18 Aug 2022 11:44:18 +0200 (CEST)","(Authenticated sender: jacopo@jmondi.org)\n\tby mail.gandi.net (Postfix) with ESMTPSA id C6680FF80E;\n\tThu, 18 Aug 2022 09:44:17 +0000 (UTC)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1660815860;\n\tbh=N4xaFq0/0nTDRzSSGn3+EEaH4XRSu2UDnZXqZsQ5eFo=;\n\th=To:Date:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post:\n\tList-Help:List-Subscribe:From:Reply-To:From;\n\tb=2k7Q3WTRJQPTZ2V3TITHRYft9H8drtw4A7yTXRYLx4gnSIAyLpKoF8kpmCSh9WE3w\n\ty/sWy28JXy37S9N/Ct7TR6/lbHYRSdWr992h8c2GFI06OP8r6QEwPIRc0v3VG2v3bP\n\tK3lFyvTIufRflsqvHrfv/PQfgtCnNQg9Ak0EL7SP/sdcsP46C4gwNXuWOK1yiYe0Np\n\t8L9NyCdjRm+IKhUBRIQYBPjLI8eaeVTH6lMOhslYBPlmn0DsIkAfZ6ry2Z7xgucTbx\n\tq1FfxPViRjl6yzXMRDuyB+iH1xW+tL8Rmchi0w1vlav4z0Xm5Qyia3AE/QLO3cmcTC\n\tG2/Anhtd+IszA==","To":"libcamera-devel@lists.libcamera.org","Date":"Thu, 18 Aug 2022 11:43:53 +0200","Message-Id":"<20220818094410.1671-1-jacopo@jmondi.org>","X-Mailer":"git-send-email 2.37.2","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","Subject":"[libcamera-devel] [PATCH v3 00/17] libcamera: Align IPU3 and RKISP1\n\tinterfaces","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":"Jacopo Mondi via libcamera-devel <libcamera-devel@lists.libcamera.org>","Reply-To":"Jacopo Mondi <jacopo@jmondi.org>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"Quite some re-shuffling in this series, based on Laurent's and Umang's\ncomments and Kieran's testing of the previous version.\n\nThe most important changes are:\n\n- Dropped the first 3 patches of the series that introduced ErrorFlags\n- Drop error flags handling in the FCQ\n- Remove context_ zeroing at IPA::stop() time which caused a CTS error on\n  start/stop/start sequences\n- Include patches from Daniel that plumb lens support in the RkISP1\n- Pile on top more IPA cleanups to align the two IPA implementations\n\nTested on IPU3 with CTS and ChomeOS CCA\n\nTested on RkISP1 RockPi4 + imx519 by running cam with SDL backend and verifying\nthe image quality is comparable to the current master branch version\n\nThanks\n   j\n\nDaniel Semkowicz (1):\n  libcamera: rkisp1: ipa: Rename ctrls_ to sensorCtrls_\n\nDaniel Semkowicz via libcamera-devel (1):\n  rkisp1: Add camera lens to PH and expose it to the IPA\n\nJacopo Mondi (8):\n  ipa: rkisp1: Align configure() with IPU3\n  ipa: rkisp1: Make cameraSensorInfo mandatory\n  ipa: ipu3: Compute line duration at configure() time\n  ipa: ipu3: Re-sort methods implementation\n  ipa: rkisp: Remove unused class member\n  ipa: ipu3: Validate controls before assigning them\n  ipa: ipu3: Store configuration data in context\n  ipa: rkisp1: Store configuration data in context\n\nKieran Bingham via libcamera-devel (6):\n  ipa: rkisp1: Rename frameContext to activeState\n  ipa: libipa: Provide a common base for FrameContexts\n  ipa: rkisp1: Convert to use the FCQueue\n  ipa: libipa: algorithm: prepare(): Pass frame and frame Context\n  ipa: libipa: algorithm: process(): Pass frame number\n  ipa: libipa: algorithm: queueRequest(): Pass frame context\n\nUmang Jain (1):\n  ipa: libipa: Introduce FrameContextQueue\n\n include/libcamera/ipa/rkisp1.mojom       |  10 +-\n src/ipa/ipu3/algorithms/af.cpp           |  10 +-\n src/ipa/ipu3/algorithms/af.h             |   7 +-\n src/ipa/ipu3/algorithms/agc.cpp          |  11 +-\n src/ipa/ipu3/algorithms/agc.h            |   5 +-\n src/ipa/ipu3/algorithms/awb.cpp          |   9 +-\n src/ipa/ipu3/algorithms/awb.h            |   8 +-\n src/ipa/ipu3/algorithms/blc.cpp          |   6 +-\n src/ipa/ipu3/algorithms/blc.h            |   4 +-\n src/ipa/ipu3/algorithms/tone_mapping.cpp |   9 +-\n src/ipa/ipu3/algorithms/tone_mapping.h   |   6 +-\n src/ipa/ipu3/ipa_context.cpp             |  58 ++---\n src/ipa/ipu3/ipa_context.h               |  22 +-\n src/ipa/ipu3/ipu3.cpp                    | 306 +++++++++++------------\n src/ipa/ipu3/module.h                    |   2 +-\n src/ipa/libipa/algorithm.cpp             |   4 +\n src/ipa/libipa/algorithm.h               |   6 +-\n src/ipa/libipa/fc_queue.cpp              | 129 ++++++++++\n src/ipa/libipa/fc_queue.h                | 111 ++++++++\n src/ipa/libipa/meson.build               |   2 +\n src/ipa/rkisp1/algorithms/agc.cpp        |  28 ++-\n src/ipa/rkisp1/algorithms/agc.h          |   7 +-\n src/ipa/rkisp1/algorithms/awb.cpp        |  42 ++--\n src/ipa/rkisp1/algorithms/awb.h          |   7 +-\n src/ipa/rkisp1/algorithms/blc.cpp        |   4 +-\n src/ipa/rkisp1/algorithms/blc.h          |   4 +-\n src/ipa/rkisp1/algorithms/cproc.cpp      |   7 +-\n src/ipa/rkisp1/algorithms/cproc.h        |   5 +-\n src/ipa/rkisp1/algorithms/dpcc.cpp       |   4 +-\n src/ipa/rkisp1/algorithms/dpcc.h         |   4 +-\n src/ipa/rkisp1/algorithms/filter.cpp     |  10 +-\n src/ipa/rkisp1/algorithms/filter.h       |   5 +-\n src/ipa/rkisp1/algorithms/gsl.cpp        |   4 +-\n src/ipa/rkisp1/algorithms/gsl.h          |   4 +-\n src/ipa/rkisp1/algorithms/lsc.cpp        |   4 +-\n src/ipa/rkisp1/algorithms/lsc.h          |   4 +-\n src/ipa/rkisp1/ipa_context.cpp           |  15 ++\n src/ipa/rkisp1/ipa_context.h             |  17 +-\n src/ipa/rkisp1/module.h                  |   2 +-\n src/ipa/rkisp1/rkisp1.cpp                | 127 ++++++----\n src/libcamera/pipeline/rkisp1/rkisp1.cpp |  34 ++-\n 41 files changed, 707 insertions(+), 356 deletions(-)\n create mode 100644 src/ipa/libipa/fc_queue.cpp\n create mode 100644 src/ipa/libipa/fc_queue.h\n\n--\n2.37.2"}