From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5C05D39DBF6 for ; Mon, 23 Mar 2026 12:58:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.168.131 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774270712; cv=none; b=XocRqb42kYKlujBKRVn7QdnXW82ggGc+XGDFRZUmnSHxqfe8+3PHo6wjKWCXdiuzHFqiZXK0pv0q8xjCjzz9A9AoSt2nZbGPEORCrNdesAjnmZXNjHzP7Mp5ZPcM9WNmS/UoZvaS2ZI5uJ9QlvUnyXK9ZoA/OZARAgbH3X9ESD4= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774270712; c=relaxed/simple; bh=Wi6Y2BBnsOM46XGjOTLIrgWTvNj8GRhq7EiHI7Vdrwg=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version; b=mPGGL8JBIPLk4oyoIp4m8Blvt5pCuPuJ6bXI1vbCywSbzWVdbJ6L8FL9Vav5qZI15xajKw24jKPNafdBSI59KmG8Z4JP4sxMfR7a6QQmxRCVmSBJyHAh2yCSM9v4/hgjOXc1vvRk2d0lGjTkhDdhwsU3R34ZPV2S14atfa/lTPM= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=kUO+jJXM; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=OuGJ1eQj; arc=none smtp.client-ip=205.220.168.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="kUO+jJXM"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="OuGJ1eQj" Received: from pps.filterd (m0279863.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 62N7tkjR1627278 for ; Mon, 23 Mar 2026 12:58:29 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:date:from:message-id:mime-version :subject:to; s=qcppdkim1; bh=PmXbEe4RrtLmKI+wjThuaUJn4LtpM14Al6Q ZbrWnkaI=; b=kUO+jJXMEnRIHtbIQGzgHfoB62E41pPCxRaoMRIVDlI3hSyRTGD 5xMBE9efjjSUby/gFadznBeJDdNruGabFXjPDI/2QNeytPWa2xqZH7jHSM81ByXq DDsaSdy2JdKoOASIUuGZiNn59pceZrawZja0s00N6yFFuSZkw2OJmU6oSO6D05nV KtVc4mqBLUoQK0niah0z1L9kG+Wy7NM8djS7IiHW8leCnRyc7vMCE3WtGm5QYUF1 J7XDuAX0JDjzn4YfmIvwEb7yLO3Enw0t9s4QSmSB1IdSEaKT9p7jSQ16EBDoDLMp OSjQMkPrRFZRwqpX5eKpu9CZHpbAapCp1ug== Received: from mail-qt1-f198.google.com (mail-qt1-f198.google.com [209.85.160.198]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4d31jc119q-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Mon, 23 Mar 2026 12:58:29 +0000 (GMT) Received: by mail-qt1-f198.google.com with SMTP id d75a77b69052e-509070bda13so325064021cf.1 for ; Mon, 23 Mar 2026 05:58:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1774270709; x=1774875509; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=PmXbEe4RrtLmKI+wjThuaUJn4LtpM14Al6QZbrWnkaI=; b=OuGJ1eQj4BijZh/1eccPUuFgoy7ykpDLHJLH61CTYFvWBBftP7SXF/rNs7aA7V/I+7 caTRJhVxCH9rTVn5cxW1N5xiuhHaz/sa6lHYzs3sR3Q1Qkqp6aTOYhDcnGLlUfmXD2fs ogGo+PvyXDx4FwLUMbo/eN5MVHYKKeiiP0oqLjmrZfLz6J/M76xnSXfHoWnWz0S/MXAL 4bDNzXWO1qmR0AdfTpNMHFFKBFyKh5pGl6W+qYwRw/E4XShM7S/WWL8dnJiVXoD0moWY VkFmmFx4hpUpQ+OSZJHx3+qekTITfwTbLMQKlyrSvpdIsqtGgzt34tldizWbMYZXGOWR CuTA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774270709; x=1774875509; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=PmXbEe4RrtLmKI+wjThuaUJn4LtpM14Al6QZbrWnkaI=; b=M/Kds3p3IjOLH3/oBpGJnJuviH/v+dAlJf0ZNjgy5qr8fkGvpkfADt+LBbiZ8wqnV0 LRUTirbxFo+hJQIPbf5YBZUvqPJrZ1+jI6wTB/Sp9u/gEdpO3jB6fKb3MeAPEdAnlwV6 P773kr403PoX4P49hvfqoScAh+XGYvoOOObU3WpSqff/07oXRYmwSew5SG3Si7qscf7o SSvc7Dz/v3oSIwyShK1j6rjw4VCyZK7yt12mHHzkyLU5nAiQIvJdjn0s7V5oKgR/Ppbe uC1MEyC2F03Tv5DB7iGeWaAWtVQXHN4nfKfW5hfw4R6qqfDLZjAy/VLXSw24tnzJGDqk JEFg== X-Forwarded-Encrypted: i=1; AJvYcCVr8+GuDHAbWw4iiKRcApV2XWBWQ4Gym519Lfmz9qo+2u0DgYNog3VynJStIfyY8V2oZQDY2I8hnkqg8eY=@vger.kernel.org X-Gm-Message-State: AOJu0YywS8p6sTYrFiKJqAjpzSa0p3D+wgT6Dc0iNkvO+fBCPsFETDNw qr+GB5+WNwJKL1rfwUpJ9iG8GDQ+zF2iHauxxO4pcS8k40xlhTxhrfrUcy65LhOSpqTRANwrSxT YByqctw4zmwJ0olvONzd/hs5NjTjIg51jkbAwJuemOve9N7fzB2Eg+w9fo6xSvdqvLw4= X-Gm-Gg: ATEYQzyEm4L1dYVERTqwWPLprzFQR4y8FSTRY1BGHrMaqojlj2TqBy4EI3QvTaQ79PK hzSiqxpdSGfIcDNRr3ImxuhEufnQ6KRbYCdqH4bkOKTxEwkeHgRtIe95ktg+Vz8VhdJkbgDDeqS /Reyuib9EjHfYX3LPXwBgy8wj9c7J1JfolbZJhSud6M3+cwY+4eaQNRPP3gkwVMZ0KfL7esenTG +KiUWh2AOZsgDgvN9QNaXgUNN5A0GiMK4m24zwte1LcV+rXhoy2RH9s0VfxoiZNN93vdT1HXjuQ N4uEGFdmwiV9MN1DJl9e81yg76o0YtJ9XrE15xXvLafuJlixlNAQZn+b+09JTPPcBrYWnrm/Bhz ocl7BzNXw0qO6c36E55IB5RQseStKPeDgnlJxjUTh8H6Fru2R9w6txV6diS2qUIe4/6WDiAFu1b bRaU2Gmqlx9+l5 X-Received: by 2002:ac8:5989:0:b0:508:ffad:4bf4 with SMTP id d75a77b69052e-50b245b643dmr219189951cf.5.1774270708721; Mon, 23 Mar 2026 05:58:28 -0700 (PDT) X-Received: by 2002:ac8:5989:0:b0:508:ffad:4bf4 with SMTP id d75a77b69052e-50b245b643dmr219189491cf.5.1774270708236; Mon, 23 Mar 2026 05:58:28 -0700 (PDT) Received: from QCOM-eG0v1AUPpu.qualcomm.com ([2a01:e0a:830:450:d9f3:cf55:9f3d:be1c]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b98335ddfb9sm487139066b.37.2026.03.23.05.58.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 23 Mar 2026 05:58:27 -0700 (PDT) From: Loic Poulain To: bod@kernel.org, vladimir.zapolskiy@linaro.org, laurent.pinchart@ideasonboard.com, kieran.bingham@ideasonboard.com, robh@kernel.org, krzk+dt@kernel.org, andersson@kernel.org, konradybcio@kernel.org Cc: linux-media@vger.kernel.org, linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, johannes.goede@oss.qualcomm.com, mchehab@kernel.org, Loic Poulain Subject: [RFC PATCH 0/3] media: qcom: camss: CAMSS Offline Processing Engine support Date: Mon, 23 Mar 2026 13:58:21 +0100 Message-Id: <20260323125824.211615-1-loic.poulain@oss.qualcomm.com> X-Mailer: git-send-email 2.34.1 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Authority-Analysis: v=2.4 cv=fKc0HJae c=1 sm=1 tr=0 ts=69c138f5 cx=c_pps a=mPf7EqFMSY9/WdsSgAYMbA==:117 a=xqWC_Br6kY4A:10 a=Yq5XynenixoA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=yOCtJkima9RkubShWh1s:22 a=KcaBgNpwSxjJcJ_5TmQA:9 a=dawVfQjAaf238kedN5IG:22 X-Proofpoint-GUID: g7CVSSpGq1xuhf7SHqE5rsW9UlbHXqKZ X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMzIzMDEwMCBTYWx0ZWRfX6Vyi7QPWAnQl R5FPSVAy3nv9GwEzcQBhAe17M0eT/UHmQfBytiDJ7ro9H8o4xmxdQRth10I+wd67ZuMGdSXAzCo Isy1p39/tS/hyD35Ph4asU+vnPL2n7Zlwa71hjgSrO62A5JuAC/OD0GVqdYX/thyiLlRhBDx6uf IuZT33EgFFwFtuD1iy7YWSwEk7LeAd25+FrHSQ+8CrwvzLERAbqwcRTsCa4BqOMVy7I0626wpwF mFM+EjvM5pwps6/Jh9/HlN8EssaC0ZParlyFFTK5+TvqZ1qCN0ILnGMHy3HDGFbX+byDZlD8RNB SUQzhsmUobotA1fpCVgY+mMH/HxIkp8vx5hnLdG2MBgi5ZD5c+xNzA6dXscdinNTZ+0QaKnSQW0 5LUpwGPqqmY46tBM1n3e6hiDamqr71yoiC8zY37YK2MUCQnngs9VGSXHwnOuNuvp7JNFBGO2GIC a0vvVdWGa4jDz8u8b0A== X-Proofpoint-ORIG-GUID: g7CVSSpGq1xuhf7SHqE5rsW9UlbHXqKZ X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-03-23_03,2026-03-20_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 priorityscore=1501 phishscore=0 lowpriorityscore=0 adultscore=0 bulkscore=0 spamscore=0 suspectscore=0 malwarescore=0 clxscore=1015 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2603050001 definitions=main-2603230100 This RFC series introduces initial support for the Qualcomm CAMSS Offline Processing Engine (OPE), as found on Agatti-based platforms. Boards such as Arduino UNO-Q use this SoC family and will benefit from hardware-assisted image processing enabled by this work. This represents the first step toward enabling image processing beyond raw capture on Qualcomm platforms by using hardware blocks for operations such as debayering, 3A, and scaling. The OPE sits outside the live capture pipeline. It operates on frames fetched from system memory and writes processed results back to memory. Because of this design, the OPE is not tied to any specific capture interface: frames may come from CAMSS RDI or PIX paths, or from any other producer capable of providing memory-backed buffers. The hardware can sustain up to 580 megapixels per second, which is sufficient to process a 10MPix stream at 60 fps or to handle four parallel 2MPix (HD) streams at 60 fps. The initial driver implementation relies on the V4L2 m2m framework to keep the design simple while already enabling practical offline processing workflows. This model also provides time-sharing across multiple contexts through its built-in scheduling. This first version is intentionally minimalistic. It provides a working configuration using a fixed set of static processing parameters, mainly to achieve correct and good-quality debayering. Support for more advanced use-cases (dynamic parameters, statistics outputs, additional data endpoints) will require evolving the driver model beyond a pure m2m design. This may involve either moving away from m2m, as other ISP drivers do, or extending it to support auxiliary endpoints for parameters and statistics. This series includes: - dt-binding schema for CAMSS OPE - initial CAMSS OPE driver - QCM2290 device tree node describing the hardware block. Feedback on the architecture and expected uAPI direction is especially welcome. Loic Poulain (3): dt-bindings: media: qcom: Add CAMSS Offline Processing Engine (OPE) media: qcom: camss: Add CAMSS Offline Processing Engine driver arm64: dts: qcom: qcm2290: Add CAMSS OPE node .../bindings/media/qcom,camss-ope.yaml | 87 + arch/arm64/boot/dts/qcom/agatti.dtsi | 72 + drivers/media/platform/qcom/camss/Makefile | 4 + drivers/media/platform/qcom/camss/camss-ope.c | 2058 +++++++++++++++++ 4 files changed, 2221 insertions(+) create mode 100644 Documentation/devicetree/bindings/media/qcom,camss-ope.yaml create mode 100644 drivers/media/platform/qcom/camss/camss-ope.c -- 2.34.1