Received: by 2002:a05:6a10:1287:0:0:0:0 with SMTP id d7csp5166569pxv; Wed, 28 Jul 2021 04:56:55 -0700 (PDT) X-Google-Smtp-Source: ABdhPJz6qTQtnJ5+bLUDn0uS3xog2DzEsMlQuQsTjwINB4DjMK399pB8FBM9+RA49737Kenkmh1x X-Received: by 2002:a50:cc99:: with SMTP id q25mr9318993edi.219.1627473415153; Wed, 28 Jul 2021 04:56:55 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1627473415; cv=none; d=google.com; s=arc-20160816; b=CskfMwPy6GBfH8GAgbpltqOVGkezGb+6qm2My5TIyxJ+Mf+TIv1313Zwa9NLq6z2BT koUAKpBd3lKXTTFQ+RCkKIxFyl/I7a2Wn7SJg08W9hzq0uIQ4GYRERQ3iZD7E+KcybBG /V6ECYpXNs42QWMkJVB14IWir3QaRoUIlWuwR/Wzm8RKCnL6UhutnGfwC5sSJpeOMej3 OruG1o/uBzXYSXWoecJdF92is0x56jr0g1tsJknhy1U0sa+m7H28aT+w995vdeEAYqW5 aFu81DcTX3skIHDBzJpYJkY5GTpP0n9z7LzU8pJsPyAvqLKPDWxk28Zv4i2RdWlgJwPx dOAQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:message-id:date:subject:cc:to:from:dmarc-filter :sender:dkim-signature; bh=I+6EtmTkJGuPi6NoSMeA9deQefDBI6Bli9FnlFgsfRM=; b=E8Wld79K7N9d55YxbSwjIVg87quh0wY4AXsrFzTk2cW/m3Nq8N7cS1jHqbhN9zf9JC HBkK+YMggnbPBdMkKEqgBhBocWjXG5zTaeviworOJSCc5eFzRKPFR1atUv6p8U0jlphN d1lgbkcN4IeHfP99Uhcz5hGTAETS1TgejSKAa+W0Olee0NqyKSz/0h7Uo27Uu65DhRJr WcWSovmydh93X5j8gvFB24t82pg2mnRwfdPPRVvf+NSmK+MK8helyWQFhE2bsPEkHeBa EJAdZg2yGDQv/jqeCPP2mVWJRsV2EZW5PbZNiUSM4h0k1xWaQJhMXWLBuOAxEAOMRY0P gRRQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@mg.codeaurora.org header.s=smtp header.b=hfGrX4vD; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id f19si5434814ejb.459.2021.07.28.04.56.31; Wed, 28 Jul 2021 04:56:55 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@mg.codeaurora.org header.s=smtp header.b=hfGrX4vD; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236288AbhG1Lyk (ORCPT + 99 others); Wed, 28 Jul 2021 07:54:40 -0400 Received: from so254-9.mailgun.net ([198.61.254.9]:13393 "EHLO so254-9.mailgun.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236246AbhG1Lyi (ORCPT ); Wed, 28 Jul 2021 07:54:38 -0400 DKIM-Signature: a=rsa-sha256; v=1; c=relaxed/relaxed; d=mg.codeaurora.org; q=dns/txt; s=smtp; t=1627473277; h=Message-Id: Date: Subject: Cc: To: From: Sender; bh=I+6EtmTkJGuPi6NoSMeA9deQefDBI6Bli9FnlFgsfRM=; b=hfGrX4vDqqIPGxm6epHq1gSUPZ8fPy8D/XvOFkjiA7u02ZGgh75LwKRsaQVpg5CEOYPfD9Ya j0VY5VDpaXA7rJv55KvK+OWfjxyUnWHbCO55/tCe+jfCZhCGOoLjPR2P+RZvq2UYlqvaAmAB +iLXE9TR6MU/c4UnYctuQWGO1sQ= X-Mailgun-Sending-Ip: 198.61.254.9 X-Mailgun-Sid: WyI0MWYwYSIsICJsaW51eC1rZXJuZWxAdmdlci5rZXJuZWwub3JnIiwgImJlOWU0YSJd Received: from smtp.codeaurora.org (ec2-35-166-182-171.us-west-2.compute.amazonaws.com [35.166.182.171]) by smtp-out-n01.prod.us-west-2.postgun.com with SMTP id 61014566e31d882d18f4a10e (version=TLS1.2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256); Wed, 28 Jul 2021 11:54:14 GMT Sender: akhilpo=codeaurora.org@mg.codeaurora.org Received: by smtp.codeaurora.org (Postfix, from userid 1001) id 31DC5C4360C; Wed, 28 Jul 2021 11:54:14 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-caf-mail-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.9 required=2.0 tests=ALL_TRUSTED,BAYES_00,SPF_FAIL, URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from hyd-lnxbld559.qualcomm.com (unknown [202.46.22.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: akhilpo) by smtp.codeaurora.org (Postfix) with ESMTPSA id 4E297C433D3; Wed, 28 Jul 2021 11:54:08 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org 4E297C433D3 Authentication-Results: aws-us-west-2-caf-mail-1.web.codeaurora.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: aws-us-west-2-caf-mail-1.web.codeaurora.org; spf=fail smtp.mailfrom=akhilpo@codeaurora.org From: Akhil P Oommen To: freedreno , dri-devel@lists.freedesktop.org, OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS , linux-arm-msm@vger.kernel.org, Stephen Boyd , Bjorn Andersson , Rob Herring , Manaf Meethalavalappu Pallikunhi Cc: Jordan Crouse , Douglas Anderson , Rob Clark , Matthias Kaehlcke , Jonathan Marek , Andy Gross , linux-kernel@vger.kernel.org Subject: [PATCH v3 1/2] arm64: dts: qcom: sc7280: Add gpu support Date: Wed, 28 Jul 2021 17:24:01 +0530 Message-Id: <1627473242-35926-1-git-send-email-akhilpo@codeaurora.org> X-Mailer: git-send-email 2.7.4 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Add the necessary dt nodes for gpu support in sc7280. Signed-off-by: Akhil P Oommen --- This has dependency on the below GPUCC bindings patch which is already accepted in clk-next: https://patchwork.kernel.org/project/linux-clk/list/?series=514831&state=%2A&archive=both Changes in v3: - Re-ordered the nodes based on address (Stephan) - Added the patch for gpu cooling to the stack. Changes in v2: - formatting update and removed a duplicate header (Stephan) arch/arm64/boot/dts/qcom/sc7280.dtsi | 116 +++++++++++++++++++++++++++++++++++ 1 file changed, 116 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/sc7280.dtsi b/arch/arm64/boot/dts/qcom/sc7280.dtsi index 029723a..c88f366 100644 --- a/arch/arm64/boot/dts/qcom/sc7280.dtsi +++ b/arch/arm64/boot/dts/qcom/sc7280.dtsi @@ -6,6 +6,7 @@ */ #include +#include #include #include #include @@ -592,6 +593,85 @@ qcom,bcm-voters = <&apps_bcm_voter>; }; + gpu@3d00000 { + compatible = "qcom,adreno-635.0", "qcom,adreno"; + #stream-id-cells = <16>; + reg = <0 0x03d00000 0 0x40000>, + <0 0x03d9e000 0 0x1000>, + <0 0x03d61000 0 0x800>; + reg-names = "kgsl_3d0_reg_memory", + "cx_mem", + "cx_dbgc"; + interrupts = ; + iommus = <&adreno_smmu 0 0x401>; + operating-points-v2 = <&gpu_opp_table>; + qcom,gmu = <&gmu>; + interconnects = <&gem_noc MASTER_GFX3D 0 &mc_virt SLAVE_EBI1 0>; + interconnect-names = "gfx-mem"; + + gpu_opp_table: opp-table { + compatible = "operating-points-v2"; + + opp-550000000 { + opp-hz = /bits/ 64 <550000000>; + opp-level = ; + opp-peak-kBps = <6832000>; + }; + + opp-450000000 { + opp-hz = /bits/ 64 <450000000>; + opp-level = ; + opp-peak-kBps = <4068000>; + }; + + opp-315000000 { + opp-hz = /bits/ 64 <315000000>; + opp-level = ; + opp-peak-kBps = <1804000>; + }; + }; + }; + + gmu: gmu@3d69000 { + compatible="qcom,adreno-gmu-635.0", "qcom,adreno-gmu"; + reg = <0 0x03d6a000 0 0x34000>, + <0 0x3de0000 0 0x10000>, + <0 0x0b290000 0 0x10000>; + reg-names = "gmu", "rscc", "gmu_pdc"; + interrupts = , + ; + interrupt-names = "hfi", "gmu"; + clocks = <&gpucc GPU_CC_CX_GMU_CLK>, + <&gpucc GPU_CC_CXO_CLK>, + <&gcc GCC_DDRSS_GPU_AXI_CLK>, + <&gcc GCC_GPU_MEMNOC_GFX_CLK>, + <&gpucc GPU_CC_AHB_CLK>, + <&gpucc GPU_CC_HUB_CX_INT_CLK>, + <&gpucc GPU_CC_HLOS1_VOTE_GPU_SMMU_CLK>; + clock-names = "gmu", + "cxo", + "axi", + "memnoc", + "ahb", + "hub", + "smmu_vote"; + power-domains = <&gpucc GPU_CC_CX_GDSC>, + <&gpucc GPU_CC_GX_GDSC>; + power-domain-names = "cx", + "gx"; + iommus = <&adreno_smmu 5 0x400>; + operating-points-v2 = <&gmu_opp_table>; + + gmu_opp_table: opp-table { + compatible = "operating-points-v2"; + + opp-200000000 { + opp-hz = /bits/ 64 <200000000>; + opp-level = ; + }; + }; + }; + gpucc: clock-controller@3d90000 { compatible = "qcom,sc7280-gpucc"; reg = <0 0x03d90000 0 0x9000>; @@ -606,6 +686,42 @@ #power-domain-cells = <1>; }; + adreno_smmu: iommu@3da0000 { + compatible = "qcom,sc7280-smmu-500", "qcom,adreno-smmu", "arm,mmu-500"; + reg = <0 0x03da0000 0 0x20000>; + #iommu-cells = <2>; + #global-interrupts = <2>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + ; + + clocks = <&gcc GCC_GPU_MEMNOC_GFX_CLK>, + <&gcc GCC_GPU_SNOC_DVM_GFX_CLK>, + <&gpucc GPU_CC_AHB_CLK>, + <&gpucc GPU_CC_HLOS1_VOTE_GPU_SMMU_CLK>, + <&gpucc GPU_CC_CX_GMU_CLK>, + <&gpucc GPU_CC_HUB_CX_INT_CLK>, + <&gpucc GPU_CC_HUB_AON_CLK>; + clock-names = "gcc_gpu_memnoc_gfx_clk", + "gcc_gpu_snoc_dvm_gfx_clk", + "gpu_cc_ahb_clk", + "gpu_cc_hlos1_vote_gpu_smmu_clk", + "gpu_cc_cx_gmu_clk", + "gpu_cc_hub_cx_int_clk", + "gpu_cc_hub_aon_clk"; + + power-domains = <&gpucc GPU_CC_CX_GDSC>; + }; + stm@6002000 { compatible = "arm,coresight-stm", "arm,primecell"; reg = <0 0x06002000 0 0x1000>, -- QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation.