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 6A90856472 for ; Sat, 28 Mar 2026 11:22:02 +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=1774696923; cv=none; b=gwYADnLxtjB6JwxWfhI4TZRpvkrLIZne+/XPwne0W6P+O/6vrHa2iHR2IaOxR1Nkyy2rOBpsFpc15xjY5Typ5MZzWNyay5OWSAVAKTxa8iqOpYaLjoqPiMXECfK5hFwbocECXH8lcStkzZv1QclghtZJq1hW97nxtYnOBQtcwoQ= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774696923; c=relaxed/simple; bh=RtNXBGNtRATM5jqnHVn3bv+4chif7R/yZkqXomXDMTE=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=LuNDM7R6G0hzCdYAv7lR5zUnO2vxxaehynes+XLrJMEuKiilPk6TGke7qD2zv8YZqNMfDC/4uh1oO72qgWz/FLRrS4aRVQ836vZF/uKJHAEMqjBNPNnoDPmIXs9GiD1mlOGLCD+gUhBvxQDGMhCUQYztubAZtOCzC0ik+gKN83A= 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=ZGDSk71s; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=Z2dVCuD1; 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="ZGDSk71s"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="Z2dVCuD1" Received: from pps.filterd (m0279867.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 62S0gXpF4034584 for ; Sat, 28 Mar 2026 11:22:02 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= fHSZ6caN9gdEFf4pzLfXl5hJ0qRQBkpE/9XtrzJn3VU=; b=ZGDSk71s0QHAPjHH 5u2hLCdm4aZ2avufHtVHWUeQs8reEpdPIxA5MkbUXUlzYBOilgNCxMj60VnGonMc GJKd87vyY85a3Evxf7lFdSVwUamuAs0VNZnkNowigSfjxXiCKNfAYBoZaZFln6oY XIOzERua/3OKDHHpo0pGAhKJfdiQJxn9uPUS3HaU7Hm/qjBjQgH5bMWJDho2W4kq gxfx/3+7jjH06baZxl6dbbdiyu6yFTGW3iPX/JbBD46mKiv8i7tuNQaI+4J4SYJe BozUaEO4YQYw6zmUiKGLBiu5XVissyWyHVrqRymOOwjPTJzq6Wrro1+MTsSo3iPa TiIqsg== Received: from mail-pj1-f71.google.com (mail-pj1-f71.google.com [209.85.216.71]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4d64pd8y68-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Sat, 28 Mar 2026 11:22:01 +0000 (GMT) Received: by mail-pj1-f71.google.com with SMTP id 98e67ed59e1d1-35d9010602bso863116a91.3 for ; Sat, 28 Mar 2026 04:22:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1774696921; x=1775301721; darn=vger.kernel.org; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=fHSZ6caN9gdEFf4pzLfXl5hJ0qRQBkpE/9XtrzJn3VU=; b=Z2dVCuD16q1vdoMLZZQH6UN+BrXPF1Wow24Dv81t7V/GHkquPN3mVCg674brDpOVPl 97crHKtze0Bfd96klTPdVxYclExMLAOzsCMmOYvTSRjzPL00dhBb8du2kEC7FzjA+6n0 9uvQ/8QcF2CwBci4X4PfXHppqnHGaxsWGzQjhnRlUEKm/2Dvnew0fcwqK9LRvqah9S4b NIcSllVxW1FXG0cVv3YLU0/rZ5vRbJ8VK3UvJN6CiKTW+OlVH9nGBv4CNJkMSHmfnU8K drlRO2gmOC+2AcktGWISfZISYIXABP+wYAAMif8U0xptAAknw7e24mlk35p7A/cwRR2q fK/Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774696921; x=1775301721; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=fHSZ6caN9gdEFf4pzLfXl5hJ0qRQBkpE/9XtrzJn3VU=; b=dtIHa5z0IimOZuua0jkjKB/D8d4Y148UQxuyIJVCpl0sDMPABvixr5wwd5uHSXZBfN /ncC42ANUfpkh6XZzR6+zYHFgRIbkwDR+OD6fIOv/DePX//WP+/Zj4zGG0ZBDIa+dSDW x/VzX2nGitaT6UoYy/mmG+WUzWe8NXMtZ8nfP1zW2c/lMvmyhBpDEXjTueIR0CXcyTfu z+pg+OM4IBhs+ulhIgieFNJsNn9xXcpE2Kd3TKnqurBgpmeO+dWrMT9VOB74vT0VxWl+ 0QZ86Z7DAooysQ8+GaVEpW8yKU7hx7+gq0OgxeRH+7w2MrC0BsgFimcr4rB964PhPcot lJXQ== X-Forwarded-Encrypted: i=1; AJvYcCXR1xQO04m9GFijlXrdbB4OemMpJJp3gQaM2dApMkCsvm6PfD/zr9/JrPLxQx1ja5so+eNrec5nOmUnY2c=@vger.kernel.org X-Gm-Message-State: AOJu0YzosikhOm/76OUlInU+MfKblrfvuugOrb81pCn0yb7J51ZNcP6y ZMEsJu32YEdzPzvVBCpwtBi9JrxAsaV69f0l3PzwznwltEYe1Td2x/ix0gKx6J240M5MCuU8O4d 5EjAVIwXmdN+mVMcirrDo+sqzkwtqDpfYOeIdxPVoo/PDMDAxQldvKEqaC0iSTAoYAwg= X-Gm-Gg: ATEYQzwwEUNDsUj1suzFwTesKiqP6SeVt+WFK+yRY60kVtHfWFqDWPKtNlIfW02E4IN rHQw12lHhiOJzrmPLrbRn+fZ+GBK/KtAvQPzubg/fcuquzBlUSbDL8IV9XKMN3Qkl/PO2IKfwM8 k90klmeucQtaEcQPvMSOo03BnwarL9ul7zwR4/Of5DyeRfNMs+wYe0YWQMCMmguIIwvQqD1Gttw y46fcxJ6FX6sBdgXDgYcbNd86lgLrxICAiCqxphKDiLRTEAlo77iu5O3Im3tThACJEAhLfoitSl /z9HiZgZ8/TeyhmuYJ7K3o73hf052/Wr765MTEo+7DKnpXpAwae/8EPR3/iz4VXg0Gqr4VNBaHC /lGjqQKrJGBAkDhj/QshlVAEmJUqZ8awVgiWLt+v90ggiR3+bUD7Nq8E= X-Received: by 2002:a17:90b:4a8a:b0:35a:329:73c6 with SMTP id 98e67ed59e1d1-35c2ff50d24mr5384524a91.3.1774696921039; Sat, 28 Mar 2026 04:22:01 -0700 (PDT) X-Received: by 2002:a17:90b:4a8a:b0:35a:329:73c6 with SMTP id 98e67ed59e1d1-35c2ff50d24mr5384505a91.3.1774696920519; Sat, 28 Mar 2026 04:22:00 -0700 (PDT) Received: from [192.168.0.172] ([49.205.250.68]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-35c22db1321sm7232716a91.14.2026.03.28.04.21.53 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 28 Mar 2026 04:22:00 -0700 (PDT) Message-ID: Date: Sat, 28 Mar 2026 16:51:51 +0530 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v3 7/7] media: iris: add platform data for kaanapali To: Dmitry Baryshkov Cc: Dikshita Agarwal , Abhinav Kumar , Bryan O'Donoghue , Mauro Carvalho Chehab , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Saravana Kannan , Joerg Roedel , Will Deacon , Robin Murphy , Stefan Schmidt , Hans Verkuil , Krzysztof Kozlowski , Vishnu Reddy , Hans Verkuil , linux-arm-msm@vger.kernel.org, linux-media@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, iommu@lists.linux.dev, Bryan O'Donoghue References: <20260313-kaanapali-iris-v3-0-9c0d1a67af4b@oss.qualcomm.com> <20260313-kaanapali-iris-v3-7-9c0d1a67af4b@oss.qualcomm.com> <5t3bke2sjkxahn4pjhdpyznbrdmu67u7cfgdfwqgjcgo7cbg2e@4wr2jadk6b7i> Content-Language: en-US From: Vikash Garodia In-Reply-To: <5t3bke2sjkxahn4pjhdpyznbrdmu67u7cfgdfwqgjcgo7cbg2e@4wr2jadk6b7i> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Proofpoint-ORIG-GUID: uF1rHtKLJrrC6ZvxuSOfpcKvWX_ZMcwp X-Authority-Analysis: v=2.4 cv=UZpciaSN c=1 sm=1 tr=0 ts=69c7b9d9 cx=c_pps a=UNFcQwm+pnOIJct1K4W+Mw==:117 a=yLWmkx75ThOYqhw51wEqsw==:17 a=IkcTkHD0fZMA:10 a=Yq5XynenixoA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=eoimf2acIAo5FJnRuUoq:22 a=EUspDBNiAAAA:8 a=lgd4gDGqqKjXK5urUKYA:9 a=QEXdDO2ut3YA:10 a=uKXjsCUrEbL0IQVhDsJ9:22 X-Proofpoint-GUID: uF1rHtKLJrrC6ZvxuSOfpcKvWX_ZMcwp X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMzI4MDA4MiBTYWx0ZWRfX/0dhdUqu9ods dxnI6wcH5A7TCdiak/Ai7bEvsxP32+7v/2PRJJ+5yjS4PSS91EY34iawd/9e9QJeXBVTBYUv/5W F+chIsTdnTPw8C7SYGpOwZEaZGUaACiQ4lu6+MgofzApAbYV/GR+aSBFhpizLbfxTG7MCIs/3Ag wriPWGNR9ERFIOf3kxB9cgL7csY0DyZeaGuckPG7YZ0yBQrRat/Z27qA2u6MU39sy626YLkMRTJ g4qgH+mLccTB3Gn6oxZamziZPQIehz712URBkV1q/CS9kWKnd0Ho0tOmedYcyNruyK/gJBYL0zC eCvI5WLRCy2k8trxWRbuFJuxK2s/zSauIyy46z/20y0OTlHz0zt02sAx3SdD61Pk1i9Uh6bleal JMHciNgICrk3GQzDcAeGvjvPmTMpj6bZ6PhRaqBZ2HT20bQpWjYTQXhddupvOHgFqP7dWM4UAl7 EMf45vGnz1MaD5KQeiA== 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-27_02,2026-03-26_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 phishscore=0 lowpriorityscore=0 bulkscore=0 suspectscore=0 priorityscore=1501 adultscore=0 spamscore=0 malwarescore=0 impostorscore=0 clxscore=1015 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2603050001 definitions=main-2603280082 On 3/13/2026 9:16 PM, Dmitry Baryshkov wrote: > On Fri, Mar 13, 2026 at 06:49:41PM +0530, Vikash Garodia wrote: >> Add support for the kaanapali platform by re-using the SM8550 >> definitions and using the vpu4 ops. >> Move the configurations that differs in a per-SoC platform header, that >> will contain SoC specific data. >> >> Co-developed-by: Vishnu Reddy >> Signed-off-by: Vishnu Reddy >> Signed-off-by: Vikash Garodia >> --- >> .../platform/qcom/iris/iris_platform_common.h | 1 + >> .../media/platform/qcom/iris/iris_platform_gen2.c | 90 ++++++++++++++++++++++ >> .../platform/qcom/iris/iris_platform_kaanapali.h | 83 ++++++++++++++++++++ >> drivers/media/platform/qcom/iris/iris_probe.c | 4 + >> 4 files changed, 178 insertions(+) >> > >> diff --git a/drivers/media/platform/qcom/iris/iris_platform_kaanapali.h b/drivers/media/platform/qcom/iris/iris_platform_kaanapali.h >> new file mode 100644 >> index 0000000000000000000000000000000000000000..bdca1e5bf673353862c1554fb0420f73b3f519cb >> --- /dev/null >> +++ b/drivers/media/platform/qcom/iris/iris_platform_kaanapali.h >> @@ -0,0 +1,83 @@ >> +/* SPDX-License-Identifier: GPL-2.0-only */ >> +/* >> + * Copyright (c) Qualcomm Innovation Center, Inc. All rights reserved. >> + */ >> + >> +#ifndef __IRIS_PLATFORM_KAANAPALI_H__ >> +#define __IRIS_PLATFORM_KAANAPALI_H__ >> + >> +#include > > So, you are including the bindings here, from the header, which gets > included from the C source file including headers for all the platforms. > What if Kaanapali+1 (or +3) defines different sets of regions? > thats correct, to handle this, the soc platform data can be defined in iris_platform_kaanapali.c, and iris_platform_kaanapali.h can extern the platform data struct which gets included in gen2.c. Also would have preferred naming the binding abi header "qcom,kaanapali-iris.h" to something generic so that it can be included in other platforms, but it seems like the maintainer does not like that idea. >> + >> +#define VIDEO_REGION_VM0_SECURE_NP_ID 1 >> +#define VIDEO_REGION_VM0_NONSECURE_NP_ID 5 >> + >> +static const char *const kaanapali_clk_reset_table[] = { >> + "bus0", >> + "bus1", >> + "core", >> + "vcodec0_core", >> +}; >> + >> +static const char *const kaanapali_pmdomain_table[] = { >> + "venus", >> + "vcodec0", >> + "vpp0", >> + "vpp1", >> + "apv", >> +}; >> + >> +static const struct platform_clk_data kaanapali_clk_table[] = { >> + { IRIS_AXI_CLK, "iface" }, >> + { IRIS_CTRL_CLK, "core" }, >> + { IRIS_HW_CLK, "vcodec0_core" }, >> + { IRIS_AXI1_CLK, "iface1" }, >> + { IRIS_CTRL_FREERUN_CLK, "core_freerun" }, >> + { IRIS_HW_FREERUN_CLK, "vcodec0_core_freerun" }, >> + { IRIS_BSE_HW_CLK, "vcodec_bse" }, >> + { IRIS_VPP0_HW_CLK, "vcodec_vpp0" }, >> + { IRIS_VPP1_HW_CLK, "vcodec_vpp1" }, >> + { IRIS_APV_HW_CLK, "vcodec_apv" }, >> +}; >> + >> +static const char *const kaanapali_opp_clk_table[] = { >> + "vcodec0_core", >> + "vcodec_apv", >> + "vcodec_bse", >> + "core", >> + NULL, >> +}; >> + >> +static struct tz_cp_config tz_cp_config_kaanapali[] = { >> + { >> + .cp_start = VIDEO_REGION_VM0_SECURE_NP_ID, >> + .cp_size = 0, >> + .cp_nonpixel_start = 0x01000000, >> + .cp_nonpixel_size = 0x24800000, >> + }, >> + { >> + .cp_start = VIDEO_REGION_VM0_NONSECURE_NP_ID, >> + .cp_size = 0, >> + .cp_nonpixel_start = 0x25800000, >> + .cp_nonpixel_size = 0xda400000, >> + }, >> +}; >> + >> +static struct iris_context_bank kaanapali_cb_data[] = { >> + { >> + .name = "iris_bitstream", >> + .f_id = IRIS_BITSTREAM, >> + .region_mask = BIT(IRIS_BITSTREAM_REGION), > > I'd say, it's really easy to mix IRIS_BITSTREAM and > IRIS_BITSTREAM_REGION when looking at the code, which might be bad > because they are not equal. this logic have changed now given that the handling is now 1:1, rather than multi map case. Maybe..we can revisit this in v4. Regards, Vikash > >> + }, >> + { >> + .name = "iris_non_pixel", >> + .f_id = IRIS_NON_PIXEL, >> + .region_mask = BIT(IRIS_NON_PIXEL_REGION), >> + }, >> + { >> + .name = "iris_pixel", >> + .f_id = IRIS_PIXEL, >> + .region_mask = BIT(IRIS_PIXEL_REGION), >> + }, >> +}; >> + >> +#endif /* __IRIS_PLATFORM_KAANAPALI_H__ */ >> diff --git a/drivers/media/platform/qcom/iris/iris_probe.c b/drivers/media/platform/qcom/iris/iris_probe.c >> index 439e6e0fe8adf8287f81d26257ef2a7e9f21e53d..f6d8761daf0471d3aabec21c708445ee7698487b 100644 >> --- a/drivers/media/platform/qcom/iris/iris_probe.c >> +++ b/drivers/media/platform/qcom/iris/iris_probe.c >> @@ -406,6 +406,10 @@ static const struct dev_pm_ops iris_pm_ops = { >> }; >> >> static const struct of_device_id iris_dt_match[] = { >> + { >> + .compatible = "qcom,kaanapali-iris", >> + .data = &kaanapali_data, >> + }, >> { >> .compatible = "qcom,qcs8300-iris", >> .data = &qcs8300_data, >> >> -- >> 2.34.1 >> >