From patchwork Fri Jul 31 14:07:57 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: David Plowman X-Patchwork-Id: 9091 Return-Path: X-Original-To: parsemail@patchwork.libcamera.org Delivered-To: parsemail@patchwork.libcamera.org Received: from lancelot.ideasonboard.com (lancelot.ideasonboard.com [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id 04B97BD86F for ; Fri, 31 Jul 2020 14:08:09 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 34D1F61DE1; Fri, 31 Jul 2020 16:08:08 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=raspberrypi.com header.i=@raspberrypi.com header.b="gQjF9a8R"; dkim-atps=neutral Received: from mail-wm1-x32a.google.com (mail-wm1-x32a.google.com [IPv6:2a00:1450:4864:20::32a]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 8240B60398 for ; Fri, 31 Jul 2020 16:08:07 +0200 (CEST) Received: by mail-wm1-x32a.google.com with SMTP id q76so8148322wme.4 for ; Fri, 31 Jul 2020 07:08:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raspberrypi.com; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=yGG9x+Y9btz6JPwS+1Yl98RdWpMmRXCvL/3vsnKrvlA=; b=gQjF9a8ROlB0k4oqa6anV138UU9bbu5/spGKVtrzS1pUqjVQS7K001RwBVExpW3Cj3 xMq5wpO62mFTHyTZNoq99PVME7BN+/BH3Cub2xfTbvXh+dOiip7hsYaWrmKvDh/lF5Zx ZZL/ZQaEcKiz/CNzZ8jI9mGe6U5i0W/w5+tFo8KhQMvEPA/moevRmM4sLdCbCha9R4ZI szkffntI2mjWpfI9l5SYfoDXKSnQGvOcF4Q4okQbyTOhTwlEJRR5vMqGqcSQ5wHbcUsq /MMZRy9muoKf6kDTvf9RS8mG8X/qy1IvVa/5dPf8eS7HLTUdm1XVSk5vqjr2bh2xdmsL UJbg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=yGG9x+Y9btz6JPwS+1Yl98RdWpMmRXCvL/3vsnKrvlA=; b=jAX62HuYwJilI33ahBnnVFjD3lgdfdgI0qqZCypt8Knz61Uoj87YYR/Zs4v/Vf1gH2 yg5Rf/oUBV2DrmatAwADkkdxtJ6gazaklzZsxGQFenz2hVKXYfP29EB4iIHqymM4KuLl lIUOu/pQs8P+Z0cjm3P8L7Aqx/uqF2d3csfRvntgScm1t9OhX29Ncl82oBN0LD79bJ+d r3Sna1pH3gNP34YEWAo4pYA64Q9qD302WXQoRsxRMUnieYbGhZwnNGRsv7d56/e16Miv 3HbJ1lxi2XWcwsHcOvGTVYSj8thDJC8ROAHVfG/WP+LdjGw4w1lAzYF2gQoWuz7VycvE OoKQ== X-Gm-Message-State: AOAM5313HRH0J+i3FopTTc9YdoPRp8ZC0dGLVsnSwh2pxHjaakjjlt1U HBQ/FO72O0Ki/EYIAlqf807663J7YHWuFg== X-Google-Smtp-Source: ABdhPJxFYxVtXNcj8UtexiKKINXK59IP5XP9I+uYAqIY936RnkpHayxmzBQk9Qh/adHain6U6nwQKg== X-Received: by 2002:a1c:56d6:: with SMTP id k205mr4027251wmb.88.1596204486757; Fri, 31 Jul 2020 07:08:06 -0700 (PDT) Received: from pi4-davidp.lan (plowpeople3.plus.com. [80.229.223.72]) by smtp.gmail.com with ESMTPSA id g126sm12815084wme.16.2020.07.31.07.08.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 31 Jul 2020 07:08:06 -0700 (PDT) From: David Plowman To: libcamera-devel@lists.libcamera.org Date: Fri, 31 Jul 2020 15:07:57 +0100 Message-Id: <20200731140801.13253-1-david.plowman@raspberrypi.com> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH v2 0/4] Raspberry Pi ALSC improvements X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" Hi Same patches as previously, and indeed the first and last are unchanged. I've added a second patch which improves the locking as per our discussion. Actually - and I think we'd both failed to notice! - restartAsync was always called with the lock held, so it's simply a case of not holding the lock that long. (Looking back at the original verion of this code, Prepare and Process ran asynchronously too so more locking was necessary.) Laurent, I've applied your "Reviewed-by" to the first and last patches, I think that was the intention. Obviously we await Naush next week. Best regards David David Plowman (4): libcamera: ipa: raspberrypi: ALSC: Camera mode does not need to be atomic libcamera: ipa: raspberrypi: ALSC: Improve locking in a few places libcamera: ipa: raspberrypi: ALSC: Resample luminance table libcamera: ipa: raspberrypi: ALSC: Improve behaviour when camera mode changes src/ipa/raspberrypi/controller/rpi/alsc.cpp | 99 ++++++++++++++------- src/ipa/raspberrypi/controller/rpi/alsc.hpp | 5 +- 2 files changed, 70 insertions(+), 34 deletions(-)