From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.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 18B8939890A for ; Wed, 3 Jun 2026 14:20:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780496440; cv=none; b=bUArby3CzxizZvwJDg0WQF5iy+QLffvoHrJ09cxYG7L+Jg7hd+E+9jR3oWlXJiKJaLBYAGzObTK9y0iGANMDqvaO1gCBAAItdXAX+Ltb+xCWsDyc6hEE3/Au118NdQ5ys6/OWxwKznq+2C8FnfR78cy/jsmBL5CUf05tGSmigdU= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780496440; c=relaxed/simple; bh=7v80iys2y5h8NVocyNFzsPoJBWek2lbLTcxLamMtxWs=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=gjugEWfwSMGZMtlhrssvGrE94r4jbk9JoGZ+JTv3ir+hQgUYoQRAOxFwarP4fFnBsjWPM4cQ9xq4K3ga+0xMF20JdJJFSpkf5eV9Tte7HF5A6oPGIZr0aBWxQOUF0lV9tPqMXWTy4ggTNIOxhJjqlkFt5+jcQ0JyCYM4H+hmif0= 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=eCqT/cit; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=D+kinf9S; arc=none smtp.client-ip=205.220.180.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="eCqT/cit"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="D+kinf9S" Received: from pps.filterd (m0279871.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 653CBMit1200262 for ; Wed, 3 Jun 2026 14:20:38 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= 1mVnZa/wkDPRTu+I/PBz2v9E4SBWbwuBh4uYP+UgSe0=; b=eCqT/citJ9OtyHT5 gh2vrZ3Hs+/MnZWy/VGEL1J0BEUDZBhtHMuA79TBF3kXqEDWA/KITh14Yqr4X96i YguJaq6X7+wQZ4vlD6k0wqlUS0+8DEiWSAmN0wTFSq+5v6bEQke1XFLFT2GSCv3W xVZzaFW1cwk3EGiBmCFkHqG7SSyShGH3KWFq4Fs3ZDOcUDj8m99rbbghF9BBfhWQ 82Oi/xotiCw8kFR2jvUzK0pqWCLxB5PL4Eyp8PY7/I64ulzv98hBr9OO1bzlGti0 0n5dFcHIZQhmQocQs03rJV9h/ybWVCeGVapq33jS1tVmDkLaevR+Bg9KNGG4Y6Fj +OsxPA== Received: from mail-pl1-f197.google.com (mail-pl1-f197.google.com [209.85.214.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4ejckw2dsw-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 03 Jun 2026 14:20:37 +0000 (GMT) Received: by mail-pl1-f197.google.com with SMTP id d9443c01a7336-2c0c272e532so41735055ad.1 for ; Wed, 03 Jun 2026 07:20:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1780496437; x=1781101237; 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=1mVnZa/wkDPRTu+I/PBz2v9E4SBWbwuBh4uYP+UgSe0=; b=D+kinf9SimUfgUU4UJwp++7fyfHAEGXP59+Ku1uuRl9n7l57NT2dZFmrjgqvIz73rx h38uSYqdjhHTvCtWTPJYcbq5WWaqlvQ6uB8+RmthT/4zFb4mp/4lvaJ1venuSqySfYOV cshLRhDGlqMdi0BxSur/JLisJHFgbYAnvhcpmzHVr8iu6Q/MAkMjlhZMyKpgWCqyJboy VPFUfOSLclNY9pQZS+suZkXywmRrdD6OW0qX7GRlsi3D02lFbxsJCeglO8gdGSlotsji vBagCcDY9l9cV8BZ8uvXU4DYrP2MpUEZb/aaAQq0ZyaZ/T5rKPJVa2ZEkz8GsgjH0k2e 8X6A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1780496437; x=1781101237; 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=1mVnZa/wkDPRTu+I/PBz2v9E4SBWbwuBh4uYP+UgSe0=; b=ftd+u0uG8jTSaDSloWuWgt0XJUOiwMLJgkihK8Stux5rpUy+GaiFge7Hc+K+3PXdg/ IUK9ByaGL7ZnBgdjX6/DE0avuWhw2Zj8CSvCWt0IwCFi9j21lfw+poxywKlafVyQMZsR AxWoyJqa0LSrTxJTIrNWP2TD3kajSF6+rL63B5wfBzr55FhLIysMSICYQNFnSDnniwxv vAFXVKuWMXD1dYez9h/yFqionC7VOBkR8pqd4kVxZZuEE/D0QCKGDVRA6zglDqHhNyPN qU+vW9LaSS/9F8T5B1+8EfpBUdKA/lePnsywc5MBzUYdSTwO/PItbOqUKrLcvMEY9RAT tYlQ== X-Gm-Message-State: AOJu0YzzTlYL4bCHuDuBUhByki+pDvH3zowyo+zH3SRwYHFvuknjOM/c xbE5jlnBF2uQ2wSAVIzPSmIZyn48kHlSZaS7krnWuLyZ7+XveZ/Rs8flqamC5LWTnFsNX1hBiQm YoDZicneHUYoF9bOlUfGUhTzH7pPUkxSndIX1rjkaIV0SzYTs8rv380NIqezJZ+4JpO8= X-Gm-Gg: Acq92OHQS/FWBayG9nbCrASVYneqIqDgzbez8Up4kRjIdERiyELcKdgDtKBlDZqlugh ++6jPsM7nzNs2GhJIThzRu6PJb7etqgYco8v+K+IndPWLLBnSRZ9ewaeEOLaXntqCJ/SvX2VV2p cij5jcdKcp/hrC/llaal48am2L6XbMARtsy9XiFr48PkwzaItIr3Q4xQAn+VoLOjPazmb6bS3ma ltrQBLmiiGerJO51LvVJsuOXGbMiuW2ftw2N0gAsRL0DrAbmB+fTdMMajEDBsjp5tUYpwnWIbhl erkqV4HiHkrggmLMyq1DXP0AF2JkGTliqrzg9nvFZRRPcjtEr54/cftI/sSDsOXec4/Fq71oPEi jn9pY0pFiSuDSvNfLkK54f79G8poItG9dQE2jOIwhYTc7aVqz7fa1fHO+8OtEwkemtg== X-Received: by 2002:a17:902:e851:b0:2c0:d99a:2fc with SMTP id d9443c01a7336-2c1639eddffmr38928265ad.2.1780496436755; Wed, 03 Jun 2026 07:20:36 -0700 (PDT) X-Received: by 2002:a17:902:e851:b0:2c0:d99a:2fc with SMTP id d9443c01a7336-2c1639eddffmr38927825ad.2.1780496436187; Wed, 03 Jun 2026 07:20:36 -0700 (PDT) Received: from hu-bvisredd-hyd.qualcomm.com ([202.46.22.19]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2c164f6d37esm41514955ad.9.2026.06.03.07.20.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 03 Jun 2026 07:20:35 -0700 (PDT) From: Vishnu Reddy Date: Wed, 03 Jun 2026 19:48:41 +0530 Subject: [PATCH v7 03/12] dt-bindings: media: qcom,glymur-iris: Add glymur video codec 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: <20260603-glymur-v7-3-afaa55d11fe0@oss.qualcomm.com> References: <20260603-glymur-v7-0-afaa55d11fe0@oss.qualcomm.com> In-Reply-To: <20260603-glymur-v7-0-afaa55d11fe0@oss.qualcomm.com> To: Vikash Garodia , Dikshita Agarwal , Abhinav Kumar , Bryan O'Donoghue , Mauro Carvalho Chehab , "Joerg Roedel (AMD)" , Will Deacon , Robin Murphy , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Stanimir Varbanov , Bjorn Andersson , Konrad Dybcio Cc: linux-kernel@vger.kernel.org, linux-media@vger.kernel.org, linux-arm-msm@vger.kernel.org, iommu@lists.linux.dev, devicetree@vger.kernel.org, Vishnu Reddy , Krzysztof Kozlowski X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1780496410; l=8936; i=busanna.reddy@oss.qualcomm.com; s=20260216; h=from:subject:message-id; bh=7v80iys2y5h8NVocyNFzsPoJBWek2lbLTcxLamMtxWs=; b=At8fxvkKcyX0Z46+kYKOef2Mz9nHPpb2hQrCJklli6zw+A3oP1vztYwlSC33QgKxXTAvnWRuq Lotd1vLyiSEBWwdZ9vn/idWoznXlCJn+tBlqoLBSGmYLA9cJzjXp/Sh X-Developer-Key: i=busanna.reddy@oss.qualcomm.com; a=ed25519; pk=9vmy9HahBKVAa+GBFj1yHVbz0ey/ucIs1hrlfx+qtok= X-Proofpoint-ORIG-GUID: rd9g_n3WHU3aDdb1FIGnprBKslL1bH-n X-Authority-Analysis: v=2.4 cv=edUNubEH c=1 sm=1 tr=0 ts=6a203836 cx=c_pps a=cmESyDAEBpBGqyK7t0alAg==:117 a=fChuTYTh2wq5r3m49p7fHw==:17 a=IkcTkHD0fZMA:10 a=FelO9ux0wxsA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=3WHJM1ZQz_JShphwDgj5:22 a=gEfo2CItAAAA:8 a=EUspDBNiAAAA:8 a=OF-BzGz0GBlUsAOtOPIA:9 a=QEXdDO2ut3YA:10 a=1OuFwYUASf3TG4hYMiVC:22 a=sptkURWiP4Gy88Gu7hUp:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNjAzMDEzNyBTYWx0ZWRfX00zVrnhrsy9q gG8Sz19AakF25kMh3VfFW2yV8neAHkPjUjZ62enoNL/aQQdSBhmXYX0j15s+iVpesWcZYGx8iyz O+2yj/zRVRjYlyNk4IFrivWoyAOjGcShRZQ3wShsOOgVKtZfuNGFNZQxg//FB94eiaLV+E7Ms4A VQukaJahkUr7MFNmXxKDFG5Jz09M7i+NoufTSfpu7rCOgKnt9u2BYU1Am7JEXG2arUwWlHS7hK/ R5+2HyiKl+IebG0fQY40qUHygL+TI7lqT0cUxsxGvkwQXSzv9lfFN0M6vrQjWgDNo1q6vlpzUET L6hHG0EbXSV6eRojyf2hr79GIPWqaZBY5LY7UgXv5MixAWAO/fokMO2hA0c7iNruy6wED0USIMv HS7m9g+D356XxJkVe6iksr3BEHaqAowzk9tG28ELuRlAk0O+VQ6pFA+fjHjI8OOiDl4LkWf6vx1 O1vAlCYS/F5pvVi0gpw== X-Proofpoint-GUID: rd9g_n3WHU3aDdb1FIGnprBKslL1bH-n X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.125,FMLib:17.12.100.49 definitions=2026-06-03_05,2026-05-28_03,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 adultscore=0 malwarescore=0 suspectscore=0 impostorscore=0 spamscore=0 lowpriorityscore=0 bulkscore=0 phishscore=0 clxscore=1015 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2605210000 definitions=main-2606030137 Add device tree binding for the Qualcomm Glymur Iris video codec. Glymur is a new generation of video IP that introduces a dual-core architecture. The second core brings its own power domain, clocks, and reset lines, requiring additional power domains and clocks in the power sequence. The current maxItems constraints for clocks and power-domains in the common venus schema were sized for platforms available at the time of authoring. The glymur platform introduces a dual core architecture that requires more clocks and power domains, exceeding these limits. Raise maxItems for clocks, clock-names, power-domains and power-domain-names to accommodate the glymur platform. The glymur platform-specific schema have fixed constraints for these properties, so the common schema only acts as an upper bound. Reviewed-by: Krzysztof Kozlowski Signed-off-by: Vishnu Reddy --- .../bindings/media/qcom,glymur-iris.yaml | 208 +++++++++++++++++++++ .../bindings/media/qcom,venus-common.yaml | 8 +- include/dt-bindings/media/qcom,glymur-iris.h | 11 ++ 3 files changed, 223 insertions(+), 4 deletions(-) diff --git a/Documentation/devicetree/bindings/media/qcom,glymur-iris.yaml b/Documentation/devicetree/bindings/media/qcom,glymur-iris.yaml new file mode 100644 index 000000000000..a1c4a045291d --- /dev/null +++ b/Documentation/devicetree/bindings/media/qcom,glymur-iris.yaml @@ -0,0 +1,208 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/media/qcom,glymur-iris.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Qualcomm Glymur SoC Iris video encoder and decoder + +maintainers: + - Vishnu Reddy + +description: + The Iris video processing unit on Qualcomm Glymur SoC is a video encode and + decode accelerator. + +properties: + compatible: + const: qcom,glymur-iris + + clocks: + maxItems: 9 + + clock-names: + items: + - const: core_iface + - const: core + - const: vcodec0_core + - const: vcodec0_iface + - const: core_freerun + - const: vcodec0_core_freerun + - const: vcodec1_iface + - const: vcodec1_core + - const: vcodec1_core_freerun + + dma-coherent: true + + interconnects: + maxItems: 2 + + interconnect-names: + items: + - const: cpu-cfg + - const: video-mem + + iommus: + maxItems: 4 + + iommu-map: + maxItems: 1 + + operating-points-v2: true + opp-table: + type: object + + power-domains: + maxItems: 5 + + power-domain-names: + items: + - const: venus + - const: vcodec0 + - const: mxc + - const: mmcx + - const: vcodec1 + + resets: + maxItems: 6 + + reset-names: + items: + - const: core_bus + - const: vcodec0_bus + - const: core + - const: vcodec0_core + - const: vcodec1_bus + - const: vcodec1_core + +required: + - clocks + - clock-names + - compatible + - dma-coherent + - interconnects + - interconnect-names + - iommus + - power-domains + - power-domain-names + - resets + - reset-names + +allOf: + - $ref: qcom,venus-common.yaml# + +unevaluatedProperties: false + +examples: + - | + #include + #include + #include + + video-codec@aa00000 { + compatible = "qcom,glymur-iris"; + reg = <0x0aa00000 0xf0000>; + + clocks = <&gcc_video_axi0c_clk>, + <&videocc_mvs0c_clk>, + <&videocc_mvs0_clk>, + <&gcc_video_axi0_clk>, + <&videocc_mvs0c_freerun_clk>, + <&videocc_mvs0_freerun_clk>, + <&gcc_video_axi1_clk>, + <&videocc_mvs1_clk>, + <&videocc_mvs1_freerun_clk>; + clock-names = "core_iface", + "core", + "vcodec0_core", + "vcodec0_iface", + "core_freerun", + "vcodec0_core_freerun", + "vcodec1_iface", + "vcodec1_core", + "vcodec1_core_freerun"; + + dma-coherent; + + interconnects = <&hsc_noc_master_appss_proc &config_noc_slave_venus_cfg>, + <&mmss_noc_master_video &mc_virt_slave_ebi1>; + interconnect-names = "cpu-cfg", + "video-mem"; + + interrupts = ; + + iommus = <&apps_smmu 0x1940 0x0>, + <&apps_smmu 0x1943 0x0>, + <&apps_smmu 0x1944 0x0>, + <&apps_smmu 0x19e0 0x0>; + + iommu-map = ; + + memory-region = <&video_mem>; + + operating-points-v2 = <&iris_opp_table>; + + power-domains = <&videocc_mvs0c_gdsc>, + <&videocc_mvs0_gdsc>, + <&rpmhpd RPMHPD_MXC>, + <&rpmhpd RPMHPD_MMCX>, + <&videocc_mvs1_gdsc>; + power-domain-names = "venus", + "vcodec0", + "mxc", + "mmcx", + "vcodec1"; + + resets = <&gcc_video_axi0c_clk_ares>, + <&gcc_video_axi0_clk_ares>, + <&videocc_mvs0c_freerun_clk_ares>, + <&videocc_mvs0_freerun_clk_ares>, + <&gcc_video_axi1_clk_ares>, + <&videocc_mvs1_freerun_clk_ares>; + reset-names = "core_bus", + "vcodec0_bus", + "core", + "vcodec0_core", + "vcodec1_bus", + "vcodec1_core"; + + iris_opp_table: opp-table { + compatible = "operating-points-v2"; + + opp-240000000 { + opp-hz = /bits/ 64 <240000000 240000000 360000000>; + required-opps = <&rpmhpd_opp_svs>, + <&rpmhpd_opp_low_svs>; + }; + + opp-338000000 { + opp-hz = /bits/ 64 <338000000 338000000 507000000>; + required-opps = <&rpmhpd_opp_svs>, + <&rpmhpd_opp_svs>; + }; + + opp-366000000 { + opp-hz = /bits/ 64 <366000000 366000000 549000000>; + required-opps = <&rpmhpd_opp_svs_l1>, + <&rpmhpd_opp_svs_l1>; + }; + + opp-444000000 { + opp-hz = /bits/ 64 <444000000 444000000 666000000>; + required-opps = <&rpmhpd_opp_svs_l1>, + <&rpmhpd_opp_nom>; + }; + + opp-533333334 { + opp-hz = /bits/ 64 <533333334 533333334 800000000>; + required-opps = <&rpmhpd_opp_svs_l1>, + <&rpmhpd_opp_turbo>; + }; + + opp-655000000 { + opp-hz = /bits/ 64 <655000000 655000000 982000000>; + required-opps = <&rpmhpd_opp_nom>, + <&rpmhpd_opp_turbo_l1>; + }; + }; + }; diff --git a/Documentation/devicetree/bindings/media/qcom,venus-common.yaml b/Documentation/devicetree/bindings/media/qcom,venus-common.yaml index 59a3fde846d2..10716a93dd35 100644 --- a/Documentation/devicetree/bindings/media/qcom,venus-common.yaml +++ b/Documentation/devicetree/bindings/media/qcom,venus-common.yaml @@ -20,11 +20,11 @@ properties: clocks: minItems: 3 - maxItems: 7 + maxItems: 9 clock-names: minItems: 3 - maxItems: 7 + maxItems: 9 firmware-name: maxItems: 1 @@ -41,11 +41,11 @@ properties: power-domains: minItems: 1 - maxItems: 4 + maxItems: 5 power-domain-names: minItems: 1 - maxItems: 4 + maxItems: 5 required: - reg diff --git a/include/dt-bindings/media/qcom,glymur-iris.h b/include/dt-bindings/media/qcom,glymur-iris.h new file mode 100644 index 000000000000..dcaa2bc21db5 --- /dev/null +++ b/include/dt-bindings/media/qcom,glymur-iris.h @@ -0,0 +1,11 @@ +/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */ +/* + * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries. + */ + +#ifndef _DT_BINDINGS_MEDIA_QCOM_GLYMUR_IRIS_H_ +#define _DT_BINDINGS_MEDIA_QCOM_GLYMUR_IRIS_H_ + +#define IOMMU_FID_IRIS_FIRMWARE 0 + +#endif -- 2.34.1