{"id":15627,"url":"https://patchwork.libcamera.org/api/1.1/covers/15627/?format=json","web_url":"https://patchwork.libcamera.org/cover/15627/","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":"<20220406094130.189862-1-chenghaoyang@chromium.org>","date":"2022-04-06T09:41:29","name":"[libcamera-devel,0/1] Add CrOS JEA implementation in src/android","submitter":{"id":117,"url":"https://patchwork.libcamera.org/api/1.1/people/117/?format=json","name":"Cheng-Hao Yang","email":"chenghaoyang@chromium.org"},"mbox":"https://patchwork.libcamera.org/cover/15627/mbox/","series":[{"id":3033,"url":"https://patchwork.libcamera.org/api/1.1/series/3033/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=3033","date":"2022-04-06T09:41:29","name":"Add CrOS JEA implementation in src/android","version":1,"mbox":"https://patchwork.libcamera.org/series/3033/mbox/"}],"comments":"https://patchwork.libcamera.org/api/covers/15627/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 CA9CEC3256\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed,  6 Apr 2022 10:34:27 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 63B7765646;\n\tWed,  6 Apr 2022 12:34:27 +0200 (CEST)","from mail-pj1-x102c.google.com (mail-pj1-x102c.google.com\n\t[IPv6:2607:f8b0:4864:20::102c])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 83A74604B8\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed,  6 Apr 2022 11:41:43 +0200 (CEST)","by mail-pj1-x102c.google.com with SMTP id kw18so2016200pjb.5\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 06 Apr 2022 02:41:43 -0700 (PDT)","from chenghaoyang-p920.tpe.corp.google.com\n\t([2401:fa00:1:17:42f3:c4c9:1892:e888])\n\tby smtp.gmail.com with ESMTPSA id\n\tmq6-20020a17090b380600b001c6357f146csm6071855pjb.12.2022.04.06.02.41.39\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tWed, 06 Apr 2022 02:41:40 -0700 (PDT)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1649241267;\n\tbh=t02CRQKKXybCu1q+cmM/fQoAbd4qEtFqRYPhQ3pW410=;\n\th=To:Date:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post:\n\tList-Help:List-Subscribe:From:Reply-To:Cc:From;\n\tb=G3jkV3bY5YsWJSVmSCE68ozXdDAJeGf5me2cWbLckssq7tQzTSAgsctPsZEWe/n0p\n\tooyikM3qvcI+wcli8ROzkAP+LBKgePMOElUyM5qEv6u8GHOE00zAmx2rMvA1f2CgHG\n\tCRoLqnRA4B/2A1thmQaq4a+kgc2coS/025VCugz0hn+lwlFlMDPZtreG10xSPrhxmp\n\tkvzpTNUSem5oVlGAZ1mVPf3nyoVMRtvumv8d7GPXUck6s8djwpzhiu394Y1BCLNyJL\n\tGQtSi8gc/RyehHXxyat9uxr+vVyNt3efn5SCT6r4XYcpfKuz81QWlr3Dc9dEggO7Pb\n\thT7SJY/ARlSGw==","v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org;\n\ts=google; h=from:to:cc:subject:date:message-id:mime-version\n\t:content-transfer-encoding;\n\tbh=Dm38nBZ6xPaF5nkckklJ7vDCcjzu5EQqbt0kz3eTwDI=;\n\tb=MLs5pjvUH08uRZstfy8hb+QpZY42G4RPAsNB3ZnlBVUqQQ6yhoBrD8S+F6LzGw08Sa\n\t4olNj6JuDIPgeGUZ+ue5IySb0XgGpiXznTPpAygXKxmHYdV1bxKEda5YZuxD/VbNEkFQ\n\t0b8h06oHCUvLMJiLNlbQi58f1RHJGpHqJIWX8="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=chromium.org\n\theader.i=@chromium.org header.b=\"MLs5pjvU\"; \n\tdkim-atps=neutral","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20210112;\n\th=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version\n\t:content-transfer-encoding;\n\tbh=Dm38nBZ6xPaF5nkckklJ7vDCcjzu5EQqbt0kz3eTwDI=;\n\tb=7kO2zSCneQgxCWz3QO2nPMrHUd6nlZsj5hsMQtHLUf73dbZGZaih6iO5H0LizITpeI\n\tnQpTNPbkzbihtLcdZQTit3yH3HPeqTc7GU2B8QSTVrIR+5ZdMk0c6k2Z1nnn59LaW3PB\n\tVJodqrSZG/QkzDFhUzhQyepwlRF/aX6EnnAF0J4mj8rsHMOAUuQwwiwcJciD6PhTBcZ9\n\tBl0rqiuYqdRBQohXwv0MmYn7dwHUhXztwtTt94nMh94NXsDX9r4mcx1672SOhqAsyArS\n\tkUxXamVXn5uZGqKkxAIguAkbM6iHl6GEQa05Iuu41OqdxjahDHJTQiAdif169gxpioTZ\n\thCqg==","X-Gm-Message-State":"AOAM532tlw087l2weRui2ZpNrGJiscPbd/KggL7FDqPT0H/QmmXxpVdg\n\tAmTK15D1JLTBpPnYo3u30xaRCysW5uWuDw==","X-Google-Smtp-Source":"ABdhPJy+dzTexns+LpR4GlAYsLLTmTeraDEjAKWdvY0nMhpa4dUPmMCbZY2V4KAO0sWZzvnBicLDRw==","X-Received":"by 2002:a17:90b:4f4b:b0:1c7:928d:1964 with SMTP id\n\tpj11-20020a17090b4f4b00b001c7928d1964mr8996499pjb.129.1649238101210; \n\tWed, 06 Apr 2022 02:41:41 -0700 (PDT)","To":"libcamera-devel@lists.libcamera.org","Date":"Wed,  6 Apr 2022 17:41:29 +0800","Message-Id":"<20220406094130.189862-1-chenghaoyang@chromium.org>","X-Mailer":"git-send-email 2.35.1.1094.g7c7d902a7c-goog","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","X-Mailman-Approved-At":"Wed, 06 Apr 2022 12:34:26 +0200","Subject":"[libcamera-devel] [PATCH 0/1] Add CrOS JEA implementation in\n\tsrc/android","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":"Harvey Yang via libcamera-devel <libcamera-devel@lists.libcamera.org>","Reply-To":"Harvey Yang <chenghaoyang@chromium.org>","Cc":"Harvey Yang <chenghaoyang@chromium.org>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"Hi everyone,\n\nThis CL is the first draft of adding CrOS JEA as the backend of the\nencoder in src/android/jpeg.\n\nIt's the first time I added a patch in libcamera, so it's very likely I\nmissed any critical things. Please help review and give suggestions.\nThanks!\n\nBR,\nHarvey\n\nHarvey Yang (1):\n  Add CrOS JEA implementation\n\n include/libcamera/framebuffer.h               |  3 +-\n src/android/android_framebuffer.cpp           | 32 ++++++++\n src/android/android_framebuffer.h             | 28 +++++++\n src/android/camera_device.cpp                 |  3 +-\n src/android/cros/camera3_hal.cpp              |  3 +\n src/android/frame_buffer_allocator.h          | 37 +++++----\n src/android/jpeg/cros_post_processor_jpeg.cpp | 14 ++++\n src/android/jpeg/encoder.h                    |  9 +-\n src/android/jpeg/encoder_jea.cpp              | 82 +++++++++++++++++++\n src/android/jpeg/encoder_jea.h                | 35 ++++++++\n src/android/jpeg/encoder_libjpeg.cpp          | 70 ++++++++++++++++\n src/android/jpeg/encoder_libjpeg.h            | 21 ++++-\n .../jpeg/generic_post_processor_jpeg.cpp      | 14 ++++\n src/android/jpeg/meson.build                  | 16 ++++\n src/android/jpeg/post_processor_jpeg.cpp      | 60 ++------------\n src/android/jpeg/post_processor_jpeg.h        | 11 +--\n src/android/meson.build                       |  6 +-\n .../mm/cros_frame_buffer_allocator.cpp        | 13 +--\n .../mm/generic_frame_buffer_allocator.cpp     | 11 +--\n 19 files changed, 367 insertions(+), 101 deletions(-)\n create mode 100644 src/android/android_framebuffer.cpp\n create mode 100644 src/android/android_framebuffer.h\n create mode 100644 src/android/jpeg/cros_post_processor_jpeg.cpp\n create mode 100644 src/android/jpeg/encoder_jea.cpp\n create mode 100644 src/android/jpeg/encoder_jea.h\n create mode 100644 src/android/jpeg/generic_post_processor_jpeg.cpp\n create mode 100644 src/android/jpeg/meson.build"}