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 329EA426EA3 for ; Wed, 13 May 2026 12:49:26 +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=1778676571; cv=none; b=s9uPFJBtCCxyg0Ayf7M40W+3wlhUv48qUzxOo6bsdzscwlDwp/vsMklhe4mb0PoJwlYg38QNzJIcnauA0kllLkG0cE4Puzh0tCesKA3cFRg9HaFvlb+QlyhdyXHiB8O+T2XVlRVm4lCSGcczdDpSzbya0XaJlCAzQy53ymdkdNc= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778676571; c=relaxed/simple; bh=PZMTLxLwbvZOwA8LX8WRjQ2jAtxisx1shd7n6n36z4Y=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=hHLRlKreEEYEJ491UOtF/wyqUkGBe0b+uN8MMOytI4FETUqOPNRNqR8LLmw7gP5H9rqcIIyF7NmYiVHeBkj6FdzAbV6clMY0wc1UH9wPy1OoilldikSRb0vVk5Y6Y4V0oLd5o5HhbBdCWrUql5syJggXqN1Iy+W61A1aBVdoUiI= 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=BJVLcoDj; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=VLUEZzYq; 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="BJVLcoDj"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="VLUEZzYq" Received: from pps.filterd (m0279866.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 64DAeYrD1393072 for ; Wed, 13 May 2026 12:49:25 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= cruwuhjqGa0rMbt22zZ45ZYZ3826Tz+/AC4t/AIJui4=; b=BJVLcoDjbkZ7BvQC //hNu/ZkUIPjIMYvWSuK+RMfjekXDozwxoyXJmniYpeCD2fKIQbT7o4FUj3as+Tq m9H1ewYxvlGf/k8ZwvJgD1In67oSKj+jw/aoJua7hWVZT+u4EcNyrMPGDDHxZRIk HBDkFjzex1whHAcnScdt75+6aoiB6i5MMQ+qYaKLrPC2DERpa7oNbkdXvR9DMsdV bk0oWOgcIo+NEFJHgpD7E92tl3u6KRZoQcTGmkY1XtFihbPC1FKA7Fun2O+jQWRB XnMhm87QZUWMB9eTra7DiIpQh8FHWDRS5vU5zb24dTyraG9N6pVW+O4TqPbqP2u1 9MFj2g== Received: from mail-qt1-f197.google.com (mail-qt1-f197.google.com [209.85.160.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4e4k261nyy-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 13 May 2026 12:49:25 +0000 (GMT) Received: by mail-qt1-f197.google.com with SMTP id d75a77b69052e-50ff0bef198so136388811cf.2 for ; Wed, 13 May 2026 05:49:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1778676564; x=1779281364; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=cruwuhjqGa0rMbt22zZ45ZYZ3826Tz+/AC4t/AIJui4=; b=VLUEZzYqbIdR2Kpac/5oQidBuSOfBBpbdgdOvrJmCPX7W3OBuwnDVB9tRGax+5AIo8 MFKpAkUdNinwhjkmsqFOiXjNwvmzLvvGybHhalz/RhCyxQH0wrp7TTNm3mYxqgV/7baU PY0ucoovijehfx99IUUcv0MXf3zlhgAOouLltecXeshPsg7v5RDeylNjhBhcE2V6WzeE qpmcArVS5JziJ9q0zGcyaejRdpv2eltRQ54a2VgsslvmbdEDAt0PjBA3JvifW7wXcJBn Z7lkKrmhDQk5AZs2ZiuzopnBNApE5cGdI1Af3skix7z0YXgWrcLZWk6B9rJOWP3MswDZ SG6A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1778676564; x=1779281364; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=cruwuhjqGa0rMbt22zZ45ZYZ3826Tz+/AC4t/AIJui4=; b=arYWw6sT489zc9wbUBH9NltsUCjVedJEoRItrKxA9RS9aPj2TNTSg58Ou/KJkxmCIk LmM/8OA8aQyHJ6p3nnlDKvBIyn7AP/2i54j0Sa7DxEl6p2LiJUbeuZLZd1GIj6SsFoES xU/Rar32mW42HHoQCkP9WtzGqaSjGyoo7+I6aB0rWP0alh8jod0zqdLW3Kqxsmljs7g5 /XVGt0ocLS5gP/G9BAc3NESay3Grptr+GIFHoIB6HAD0iQ1SeNGXeYDXGN1Bfzznbbi4 KhTvP/OC0qWVddx0RTdsrXZck2t7JFfLGvHYo4zwxc/ru+srrDs4LaehuFTbE633mhZC Gs7Q== X-Forwarded-Encrypted: i=1; AFNElJ+OYn52EQU7dMapJnkUtiVP7ghQUxZmtnsq3N2smLSaTjTboUDHZLBAxS7sw8s/SGD27/6uLkr+X1Mktvk=@vger.kernel.org X-Gm-Message-State: AOJu0YwaHcFTzAZmpIETXFuNwFSKQAQTHkxY07RmagB+v11RG0Zx1d82 vtCsuvZ7iL154Zp553XhFW8u7Zd9ApGNIo0MG39fJFCENIw7HRB3CGpL9Y3Oy2qPsp06gmbo4Ws teQ3+NK1KV9VzwD4xKOo68HgSm8v2SVDxpsno34Bw+26PUnvd23yX2LWBAJoPXyMTNP0= X-Gm-Gg: Acq92OF2+rJR4nwr41fdmLk9P45ZmewCKIfe7vO1SBo6JDXKOJpZHNrd3VaBvdWFbhy YBt5rBqC79dmTcNYpeo5+1RbbsPOvP2aPSTktHFNlfeELVbPZafFh4r4tJ2spyhVhWtgczYbF/Y vL97k1S2r70Z1xNgoWH99WxW8pDg3Mbzd8oa+2OvlV5gB8lhaq+y2dZNGrdq34Z4SEkks4Q7vF9 8dFbBg7PBOEifBesGeHiufI1H2lB5rI9LsmvRHmvbaqfJB3wvxpB094aEH8VIOWc4cTTcuDj1YQ HRxD3QYyXolLnWQyWstjWhRuEAdjQgMGkdLQnhZK7OKYiOSE/05DwHy+fHnCxzA4UbrOBWz/Rmt 8ZG99KpPOd6U6iX2FIL12a87v6a5BgHSUgkvf37JR6CH8JvgpqHZehCiLvAzXlnS/mmBNPkGu1F tn9WulAKiwnm2ilChhrYiY7Dgx6j9QC9s1Wz4= X-Received: by 2002:ac8:7d4d:0:b0:50f:c109:b78 with SMTP id d75a77b69052e-5162f6978b0mr41927481cf.60.1778676564526; Wed, 13 May 2026 05:49:24 -0700 (PDT) X-Received: by 2002:ac8:7d4d:0:b0:50f:c109:b78 with SMTP id d75a77b69052e-5162f6978b0mr41927001cf.60.1778676563929; Wed, 13 May 2026 05:49:23 -0700 (PDT) Received: from umbar.lan (2001-14ba-a073-af00-264b-feff-fe8b-be8a.rev.dnainternet.fi. [2001:14ba:a073:af00:264b:feff:fe8b:be8a]) by smtp.gmail.com with ESMTPSA id 38308e7fff4ca-393f5f5f15asm41106841fa.17.2026.05.13.05.49.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 13 May 2026 05:49:22 -0700 (PDT) From: Dmitry Baryshkov Date: Wed, 13 May 2026 15:45:41 +0300 Subject: [PATCH v2 07/16] media: iris: Add platform flag for instantaneous bandwidth voting Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20260513-iris-ar50lt-v2-7-411e5f7bdc4c@oss.qualcomm.com> References: <20260513-iris-ar50lt-v2-0-411e5f7bdc4c@oss.qualcomm.com> In-Reply-To: <20260513-iris-ar50lt-v2-0-411e5f7bdc4c@oss.qualcomm.com> To: Vikash Garodia , Abhinav Kumar , Bryan O'Donoghue , Mauro Carvalho Chehab , Bjorn Andersson , Konrad Dybcio , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Vishnu Reddy Cc: linux-media@vger.kernel.org, linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Dikshita Agarwal X-Mailer: b4 0.15.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=4991; i=dmitry.baryshkov@oss.qualcomm.com; h=from:subject:message-id; bh=2AZDVaVeHjBN9ieMkt6OZ54VG8WgR2+oqvqtNSNqUsY=; b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBqBHNAgfaSs5ARk7leg1w8+Z0GaPXa9OAPL3Hxf v01WqAvQBOJATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCagRzQAAKCRCLPIo+Aiko 1cYZB/9HoHcOSYLAeyPxLkp4spzUEb9wPcH2p9KIVPAfwC93AFLD80RP7QojH74dRDfh++aZjAc 3ZNa7C0guGXOTA1pE+I9kEp8svz7Z1pmuCygQAT9xikfU3FpsOKi8S80TA3+zUjgkMICr27uBw3 sJr0YwjaYEo+KSm5fH20NnIzvTVg7y5sH8DZdSdudV1/hnC7zENtWuIxLSpjN+hmyqOltK76WuA PEj0/k6PPSTszazBYT51gV3Qobr+a21oL5RyEQ2e7Blx7EKcSfNCoXZJLn5J2GUgs5qyCauEMF0 SBOXo3sx8/j8giLHGW/qobgPbwTzh4omTZXFWUUPFtPUIW6D X-Developer-Key: i=dmitry.baryshkov@oss.qualcomm.com; a=openpgp; fpr=8F88381DD5C873E4AE487DA5199BF1243632046A X-Authority-Analysis: v=2.4 cv=M/l97Sws c=1 sm=1 tr=0 ts=6a047355 cx=c_pps a=EVbN6Ke/fEF3bsl7X48z0g==:117 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10 a=NGcC8JguVDcA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=YMgV9FUhrdKAYTUUvYB2:22 a=EUspDBNiAAAA:8 a=hZPXDZ8rEFHKWOVG6IQA:9 a=QEXdDO2ut3YA:10 a=a_PwQJl-kcHnX1M80qC6:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNTEzMDEzMiBTYWx0ZWRfXxOGyGC5brDer XQhJ53nlqgtmV8w9GJqrAdOI0Iipy0rjdJjiCkwTeBLJWWw/e/GeakEACt8s6ry92XY558xt0/V SuwJHWAIE/w3eATNHetvoPI2E/R17oeOnNRmXh8xLCWzJNExBRZzV9hkUeFxSrhXIGhVpRL0ug2 443IdLEzM4JTPhkwDW0e8boRFdT7rYKJ431vQqB6LIKBhBlvoWPvnbXBev1ZXjnpVmiqNiBxtj7 iDYd8wwm5PQzX+qtIJ8cOh4grFnsnTCeXEgEVIk5LCEw4kxTgJ1tr7aoft2msvjh+jSvE9Jblh/ DrxXkGKdfdHW4gwROa8jABoS9RBFDFNvPFdgzlXbehJbT4zncKX3zFMAO6Qd7EBhZDFyanU10bt VlVVvfjCNIvnGjrsxra6z6B4JsqwIDDuwurBXFrLyDvPChG64UAiNtZDqZw6jT0jHGN+5NqY5X2 XE7mlACux6+SBvETwUA== X-Proofpoint-ORIG-GUID: AetuCX4Izgy_78RT1ECFFcfZxsOwOBAQ X-Proofpoint-GUID: AetuCX4Izgy_78RT1ECFFcfZxsOwOBAQ 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-05-13_01,2026-05-08_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 clxscore=1015 impostorscore=0 malwarescore=0 suspectscore=0 spamscore=0 phishscore=0 lowpriorityscore=0 priorityscore=1501 adultscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2605050000 definitions=main-2605130132 From: Dikshita Agarwal AR50LT require explicit instantaneous bandwidth (IB) voting in addition to average bandwidth (AB) when configuring interconnect QoS. This requirement is due to QSB (Qualcomm System Bus) 128b to QNS ( Qualcomm Network Switch) 256b conversion at video noc in AR50LT which is not needed for other IRIS cores. In preparation of adding support for AR50LT core, introduce platform-configurable IB multiplier and enable IB voting for all SoCs. Existing platforms default to IB == AB, while AR50LT requires 2x peak bandwidth. Signed-off-by: Dikshita Agarwal Reviewed-by: Vikash Garodia Signed-off-by: Dmitry Baryshkov --- drivers/media/platform/qcom/iris/iris_platform_common.h | 1 + drivers/media/platform/qcom/iris/iris_platform_vpu2.c | 2 ++ drivers/media/platform/qcom/iris/iris_platform_vpu3x.c | 4 ++++ drivers/media/platform/qcom/iris/iris_resources.c | 2 ++ 4 files changed, 9 insertions(+) diff --git a/drivers/media/platform/qcom/iris/iris_platform_common.h b/drivers/media/platform/qcom/iris/iris_platform_common.h index 51d8faf6fd1a..e1dc226066c1 100644 --- a/drivers/media/platform/qcom/iris/iris_platform_common.h +++ b/drivers/media/platform/qcom/iris/iris_platform_common.h @@ -284,6 +284,7 @@ struct iris_platform_data { u32 num_vpp_pipe; bool no_aon; u32 wd_intr_mask; + u32 icc_ib_multiplier; u32 max_session_count; /* max number of macroblocks per frame supported */ u32 max_core_mbpf; diff --git a/drivers/media/platform/qcom/iris/iris_platform_vpu2.c b/drivers/media/platform/qcom/iris/iris_platform_vpu2.c index eeef453c583f..e2fddc29abc7 100644 --- a/drivers/media/platform/qcom/iris/iris_platform_vpu2.c +++ b/drivers/media/platform/qcom/iris/iris_platform_vpu2.c @@ -97,6 +97,7 @@ const struct iris_platform_data sc7280_data = { .num_vpp_pipe = 1, .no_aon = true, .wd_intr_mask = WRAPPER_INTR_STATUS_A2HWD_BMSK, + .icc_ib_multiplier = 1, .max_session_count = 16, .max_core_mbpf = 4096 * 2176 / 256 * 2 + 1920 * 1088 / 256, /* max spec for SC7280 is 4096x2176@60fps */ @@ -128,6 +129,7 @@ const struct iris_platform_data sm8250_data = { .tz_cp_config_data_size = ARRAY_SIZE(tz_cp_config_vpu2), .num_vpp_pipe = 4, .wd_intr_mask = WRAPPER_INTR_STATUS_A2HWD_BMSK, + .icc_ib_multiplier = 1, .max_session_count = 16, .max_core_mbpf = NUM_MBS_8K, .max_core_mbps = ((7680 * 4320) / 256) * 60, diff --git a/drivers/media/platform/qcom/iris/iris_platform_vpu3x.c b/drivers/media/platform/qcom/iris/iris_platform_vpu3x.c index 5fbaff5c01ca..8c1c8b19fa99 100644 --- a/drivers/media/platform/qcom/iris/iris_platform_vpu3x.c +++ b/drivers/media/platform/qcom/iris/iris_platform_vpu3x.c @@ -109,6 +109,7 @@ const struct iris_platform_data qcs8300_data = { .tz_cp_config_data_size = ARRAY_SIZE(tz_cp_config_vpu3), .num_vpp_pipe = 2, .wd_intr_mask = WRAPPER_INTR_STATUS_A2HWD_BMSK, + .icc_ib_multiplier = 1, .max_session_count = 16, .max_core_mbpf = ((4096 * 2176) / 256) * 4, .max_core_mbps = (((3840 * 2176) / 256) * 120), @@ -139,6 +140,7 @@ const struct iris_platform_data sm8550_data = { .tz_cp_config_data_size = ARRAY_SIZE(tz_cp_config_vpu3), .num_vpp_pipe = 4, .wd_intr_mask = WRAPPER_INTR_STATUS_A2HWD_BMSK, + .icc_ib_multiplier = 1, .max_session_count = 16, .max_core_mbpf = NUM_MBS_8K * 2, .max_core_mbps = ((7680 * 4320) / 256) * 60, @@ -177,6 +179,7 @@ const struct iris_platform_data sm8650_data = { .tz_cp_config_data_size = ARRAY_SIZE(tz_cp_config_vpu3), .num_vpp_pipe = 4, .wd_intr_mask = WRAPPER_INTR_STATUS_A2HWD_BMSK, + .icc_ib_multiplier = 1, .max_session_count = 16, .max_core_mbpf = NUM_MBS_8K * 2, .max_core_mbps = ((7680 * 4320) / 256) * 60, @@ -207,6 +210,7 @@ const struct iris_platform_data sm8750_data = { .tz_cp_config_data_size = ARRAY_SIZE(tz_cp_config_vpu3), .num_vpp_pipe = 4, .wd_intr_mask = WRAPPER_INTR_STATUS_A2HWD_BMSK, + .icc_ib_multiplier = 1, .max_session_count = 16, .max_core_mbpf = NUM_MBS_8K * 2, .max_core_mbps = ((7680 * 4320) / 256) * 60, diff --git a/drivers/media/platform/qcom/iris/iris_resources.c b/drivers/media/platform/qcom/iris/iris_resources.c index 773f6548370a..caeaf199cef7 100644 --- a/drivers/media/platform/qcom/iris/iris_resources.c +++ b/drivers/media/platform/qcom/iris/iris_resources.c @@ -18,6 +18,7 @@ int iris_set_icc_bw(struct iris_core *core, unsigned long icc_bw) { + u32 icc_ib_multiplier = core->iris_platform_data->icc_ib_multiplier; unsigned long bw_kbps = 0, bw_prev = 0; const struct icc_info *icc_tbl; int ret = 0, i; @@ -36,6 +37,7 @@ int iris_set_icc_bw(struct iris_core *core, unsigned long icc_bw) return ret; core->icc_tbl[i].avg_bw = bw_kbps; + core->icc_tbl[i].peak_bw = bw_kbps * icc_ib_multiplier; core->power.icc_bw = bw_kbps; break; -- 2.47.3