From nobody Thu Dec 18 09:47:09 2025 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 195FF304982 for ; Tue, 28 Oct 2025 10:12:11 +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=1761646333; cv=none; b=JW6H7yEJ+LyH+tz5IU02I6lXTTfACcsNfakceZYbBZrpIq3EaqPJnl2zQKGul07a00zdxn+mm8+bdr9Z/IJM0QPY5yk1Xmw7lHI6z6D8N3v1dzAVxE2HV6xLZ9kOTl2TfJewRcz6qYFgRGdOPS2fZ8GaYuxdBXOhydWei49xyFU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761646333; c=relaxed/simple; bh=ril99Wt36AaQWNv+PDjT8BlLjpjvdFqefjO73sSkLmU=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=C0eVzD8HCbqcldt8rj9MUCXSTJKSnT6BheA3G86hB85KCw9Tyw9L3TBoYbOOlDxXXh0rCwXMKPq/9ewOgdtUT+di42lcUjVEGEWrwuC6vRIKs5Sp48X6mk/lEpPd7QWY/+cDtTBrCoKyhaKfz7bnUdhpcan2tU5BtuVnS87Jqkk= 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=Vvc9m+mf; 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="Vvc9m+mf" Received: from pps.filterd (m0279862.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 59S4AR0a553425 for ; Tue, 28 Oct 2025 10:12:11 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= iYDtPrC3G6SjHluGEZkqxO1EAHQjQdzxEg9eUYrW+6M=; b=Vvc9m+mfS8OT9S8t 5RaG6Y4QXH0PSMcW6M8yaHZfd2mhdkovxcLjjOiL6ul42Re4WpoylwkUgCy2TKvj Gg5twFbuk2b1SdsD4umkFQoEb9EcjTIcbimYGW+gHkvUpzWsfh4cI2CckKOnFk++ k4gq0awmMIa37G1WSiuIQuMPDPkjMvBQTljzxRJ40kjzQCFpCOBJXL9QoRE20OwG /7B5A9brzZ2CgcPFkQbZlAKXAxt1TSSZHKy9wWu1I99U4SyA/akBS6XCpBMqst2r IeRGRj5GlsfTTT0EUUhm0r0KFvsaECh+ZZfHgl5dHcgCPjZNpZgcQ8jLpI42/hCs P6CEFA== Received: from mail-pl1-f199.google.com (mail-pl1-f199.google.com [209.85.214.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4a2pjf90q3-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Tue, 28 Oct 2025 10:12:11 +0000 (GMT) Received: by mail-pl1-f199.google.com with SMTP id d9443c01a7336-27ee41e062cso65629675ad.1 for ; Tue, 28 Oct 2025 03:12:11 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1761646330; x=1762251130; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=iYDtPrC3G6SjHluGEZkqxO1EAHQjQdzxEg9eUYrW+6M=; b=KAKD3xeZlGeS0A6o9KclpAATu4QZw2dFI8pUog4m1X6ZAj8d+O6bfcQ4aEAJigfgXr h05SKVsCiZpof6EtlHARw+5iIpuWHWGQCge2/rRmcwOWSBQKYiCFUzAhv/nYLTqBbrjD Ce/17MNEEPXrNI2P9gx3budjk41x4Q5JT+b5eBVuSz8CWzXs5bxIm22+ERh6bVn4fxjJ hVPeEjmAga4ncs1hFnZsTnsciZqQI1kCBGU0ycph6GYReebcmasGBbWELjhO3U7T1pGx z32yFjVUskPGD0GjN1zLE2q7Dg7fu1n4LBKlw9U8hXE+jB/H/c4ngGpqTKE/ZCB3Gx7v wfyg== X-Forwarded-Encrypted: i=1; AJvYcCXQufeX7Vbg4efdURlYYucGrv7SiYc5kTeElJG0M+RQeSvcP2jHW95wEJasq3ZHGarnaWDQcJLcG8FRt9c=@vger.kernel.org X-Gm-Message-State: AOJu0Yyhmqxg4zxPe7bBleC803HpZgeFWCN8nJ6ULVsVDXXmPf5/CLUs yatE5l9iKXn61yvxn7gskXGnsmciDfNitaFvmGLhTHVWNmb3qe5g8KddhZjI9G8P+7iqy0lgQJ0 OgnLp+0IXJ8hpRjisCZW/JSGsA+daSKNYCE7iUKUJoPy1yppI5IftMdg+KDZFFLb7gco= X-Gm-Gg: ASbGnctk+tfXpD+d5NghC2PtOQIAuaY4sPz4YnSlGYoyhpg9xdgDzI6zGv57GOTakAN IT/j456S7UALib7RB9sJSJ7PyJ8GSQLv7GAxxclfLqF4GpfFs8iPRCxF1W+dovgLbvXs37UbwRa Esu0YguM4qnQ1KUJLEyLu9puH97Wy6o6BdXOMiBHV9KIKUFUDGge0p1RITh/5SjgaeNqWL0DLys 6gUho7LANm3nUE1+hcfXcss6/Gm+N49K1/+w2o62Js6u2BSCEDlWWMDwG46pcMCpAS/ikR7kU0U 0QMmJQtXcPNj1PCKpq2+xM6q61+OUyktMixueJcleBP9aRmoWybj2beOGBTaKqDcUIssSQdE932 tGzWN5hPXOk9jwxEzvgjYuQtKiklV3xzeDUihOmI9tYwrQ+V/e6ScuwG35Lg+UQ== X-Received: by 2002:a17:902:e5c6:b0:293:e5f:85d7 with SMTP id d9443c01a7336-294cb5186efmr37248055ad.55.1761646330535; Tue, 28 Oct 2025 03:12:10 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFb29YgEWk2tLkfhGz57DmwvdMAhUJDCMmBCcvIBnASLKQ2A1aNC//pQlo+JzoyOuG/gwC8nA== X-Received: by 2002:a17:902:e5c6:b0:293:e5f:85d7 with SMTP id d9443c01a7336-294cb5186efmr37247615ad.55.1761646329885; Tue, 28 Oct 2025 03:12:09 -0700 (PDT) Received: from jiegan-gv.ap.qualcomm.com (tpe-colo-wan-fw-bordernet.qualcomm.com. [103.229.16.4]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-29498cf423esm110408755ad.19.2025.10.28.03.12.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Oct 2025 03:12:09 -0700 (PDT) From: Jie Gan Date: Tue, 28 Oct 2025 18:11:40 +0800 Subject: [PATCH v4 1/3] dt-bindings: arm: document the static TPDM compatible 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: quoted-printable Message-Id: <20251028-add_static_tpdm_support-v4-1-84e21b98e727@oss.qualcomm.com> References: <20251028-add_static_tpdm_support-v4-0-84e21b98e727@oss.qualcomm.com> In-Reply-To: <20251028-add_static_tpdm_support-v4-0-84e21b98e727@oss.qualcomm.com> To: Suzuki K Poulose , Mike Leach , James Clark , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Tingwei Zhang , Mao Jinlong , Tao Zhang , Alexander Shishkin , Bjorn Andersson , Konrad Dybcio Cc: linux-arm-msm@vger.kernel.org, coresight@lists.linaro.org, linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Jie Gan X-Mailer: b4 0.14.0 X-Developer-Signature: v=1; a=ed25519-sha256; t=1761646319; l=1550; i=jie.gan@oss.qualcomm.com; s=20250909; h=from:subject:message-id; bh=ril99Wt36AaQWNv+PDjT8BlLjpjvdFqefjO73sSkLmU=; b=mC9O91ScEQM7m0k2xJ3977SHUKVvtGlMU4RgMcCTUIhDtXcp4RUl8RyAH0i257VDDl+paWKOZ Ud/cYhe0oszCVKf4JALO09nYTVsuzQS/TGrgVZkmPzzzxnohyEVD1zM X-Developer-Key: i=jie.gan@oss.qualcomm.com; a=ed25519; pk=3LxxUZRPCNkvPDlWOvXfJNqNO4SfGdy3eghMb8puHuk= X-Authority-Analysis: v=2.4 cv=Ut9u9uwB c=1 sm=1 tr=0 ts=690096fb cx=c_pps a=JL+w9abYAAE89/QcEU+0QA==:117 a=nuhDOHQX5FNHPW3J6Bj6AA==:17 a=IkcTkHD0fZMA:10 a=x6icFKpwvdMA:10 a=VkNPw1HP01LnGYTKEx00:22 a=VwQbUJbxAAAA:8 a=EUspDBNiAAAA:8 a=5Z_N_GBq0btHVWfAyk4A:9 a=QEXdDO2ut3YA:10 a=324X-CrmTo6CU4MGRt3R:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMDI4MDA4NSBTYWx0ZWRfXzmA5HgoBQv3z qURvs3wLPXbJzvaUQ6akZaFumZ12CsJiunhHWgfqhRw5LPJMAHa+RD+MhUI/6Up44qrl5BYYiHZ FViJiK1vmYXVMoPSphqXi1l5yAJYN00QOfNlla+JNaGcq6VwEOktGqHx2i0wD4LoL+EBlAl+6el 31i/T4MDAVJp05+AzDjRovk3gH6e1gkp6yH0al4BQkQlcM41BjTyAGS35UxXqDOUrq0guZR/x91 mped/LJuTXoiNZrAjm2qtZUqvpJ14D6i+0NInG71YaKB5Geyft+nKiThKfyJqm+YQs9c7tA8egn pm3lfOctC65anqGBgiF+kYBqGHZxC+PhgXDWb8Musgd7PbRroFKvGrzR6zF7Ru/K0B22P0ksFez u8Odm1J9uRs9DeTIvf3hLRxiP1dgZA== X-Proofpoint-GUID: 41CyZZamrTb21hv0PiNmyfzb9lbe66cw X-Proofpoint-ORIG-GUID: 41CyZZamrTb21hv0PiNmyfzb9lbe66cw X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-10-28_04,2025-10-22_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 lowpriorityscore=0 priorityscore=1501 spamscore=0 adultscore=0 bulkscore=0 clxscore=1015 impostorscore=0 suspectscore=0 phishscore=0 malwarescore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510020000 definitions=main-2510280085 The static TPDM device is intended for sources that do not require MMIO mapping. Its compatible string should be documented clearly, along with an example illustrating how to define a static TPDM node in the DT. Reviewed-by: Rob Herring (Arm) Signed-off-by: Jie Gan --- .../bindings/arm/qcom,coresight-tpdm.yaml | 23 ++++++++++++++++++= +--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/Documentation/devicetree/bindings/arm/qcom,coresight-tpdm.yaml= b/Documentation/devicetree/bindings/arm/qcom,coresight-tpdm.yaml index 4edc47483851..c349306f0d52 100644 --- a/Documentation/devicetree/bindings/arm/qcom,coresight-tpdm.yaml +++ b/Documentation/devicetree/bindings/arm/qcom,coresight-tpdm.yaml @@ -36,9 +36,12 @@ properties: $nodename: pattern: "^tpdm(@[0-9a-f]+)$" compatible: - items: - - const: qcom,coresight-tpdm - - const: arm,primecell + oneOf: + - items: + - const: qcom,coresight-static-tpdm + - items: + - const: qcom,coresight-tpdm + - const: arm,primecell =20 reg: maxItems: 1 @@ -147,4 +150,18 @@ examples: }; }; }; + + turing-llm-tpdm { + compatible =3D "qcom,coresight-static-tpdm"; + + qcom,cmb-element-bits =3D <32>; + + out-ports { + port { + turing_llm_tpdm_out: endpoint { + remote-endpoint =3D <&turing0_funnel_in1>; + }; + }; + }; + }; ... --=20 2.34.1 From nobody Thu Dec 18 09:47:09 2025 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 CD839304982 for ; Tue, 28 Oct 2025 10:12:17 +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=1761646339; cv=none; b=Rm2bJ4U1diayczJm562tsrgR/p445w7n/42JhHNWvkiQeifhsnfCcErPHd8ivtKN2Q2pOFI5nEgaRJ0CRdi6mTk+H3LifgGd4ab4SUykmJ2h8kwT48BHLfwgcg3H0nFtGtcGJRgxTg/y/vkuntadqNV0SlgHxhVJJ/fgm8Jc9oY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761646339; c=relaxed/simple; bh=d+wut6PeZQyP4Xb5PTssNu4tUmWnBmuxgzqkWyLc/Hg=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ZjrA30sbFNfRNkVXZNTSZCQAEozMX0SyLKr2OlyZAp/wVvoJa/g42zgsk/oZ6EIS6WUcn8YDvIaHbk52jPMQWN973irgoB6tMhroE48wtLstyfJz2+AiufN9gZaqqwrv+YBw13LD2VuFxCs5C0jPYcArfZy95sEeSXY6mquQUno= 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=LmOQuYM8; 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="LmOQuYM8" 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 59S45JiY573603 for ; Tue, 28 Oct 2025 10:12:17 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= 7vsKdCIMSvSASYDlfsgGuMsHssqt5eihbBU78IN6eNQ=; b=LmOQuYM8CHkI7Sla /IYBUPd/E+1k+rG6zAEjt+hUOp/LTsWIweERHac2QczzdJ+ubsK+bIuvmpl2M8Yz MInu/dWDSpUVccD7NTzcX8s22X1cK+4wF2L1wk4c6HPLqxy/Vb/5T3GX6Qvqfwuy 04Q/3P7rKb2hzZCmpHCXTwzTnR7HsuroR34gdVBd6vz/s2Zx9MIHFqPR1BxX/QHF D860Lt9EN6DbPCxfjZg2QHqJzgl7eZNojaYnTV63QOe+gVLCy3yf5m7AoseGnJm6 XdXR9X9UAb1C40Ur6HPKYodWAfAIJWOpV+XmBlRvGvez+MOHRqCzzOpxcNmK4zoa wtjtnA== 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 4a2pge918h-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Tue, 28 Oct 2025 10:12:17 +0000 (GMT) Received: by mail-pl1-f197.google.com with SMTP id d9443c01a7336-27c62320f16so57076315ad.1 for ; Tue, 28 Oct 2025 03:12:17 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1761646336; x=1762251136; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=7vsKdCIMSvSASYDlfsgGuMsHssqt5eihbBU78IN6eNQ=; b=Gc4mmUWz007R69ae93xcmunaNcB/CfLiLTd/B+HbL8duIj9Iv1mjH0SLl6kQNlhyD+ 3fxzFBHNCqvUwiIRUsDIW9pFRbGGMSAbBWyP6z6qnVM2FcMyHe3d6FqJcJ87kLG5VNcd P4Xpslg8mlh9zZyDB8bKAwIFr2AFWWJumbLHATI1X4OdHgcxcrQcn9+lg3tSBunwHWvu /zBo/HV+bfPpUi3GGjCRY8PwOaLG9BIb7pUk0rw6FRmSQ/56W6chh7USej4GNEyrEbf7 opBdi2rPzg9PHsmh+c6ziQDHI7At8c2mqwBIbLl5PKKeryEpHOof/ftY3WOZTzsrK3wo t5pw== X-Forwarded-Encrypted: i=1; AJvYcCV8tS2brGZq9HNuJqBpWwK7X2ZMExpKJ7p6NvbcJa7JhTEeBkqN8CwxIH14fR2BqWMm1ewpJif/BfjquwM=@vger.kernel.org X-Gm-Message-State: AOJu0Yww9c2PjBlOOFS2Knt7SrpE1jV53c3DD+eb9OoRPM1rBZFtfsGe WsOqllLo/FW2vElwD+DqvS5NzLxkHR6U2hi62p9yuBiTXtEajMslwHzHNkF4M4WMyoYowcMPURb moIQrKDzsAiDuN6X9EKZaGLV1hdFjwsx8y/GkKBfyVjGnl6cODOgiNLwxlhdpQulRGP0= X-Gm-Gg: ASbGnctqS0Q5aFsinKIlwyC15/x759i02++WQ6uHkT9LjjmwUhZWGK6fB9XqNrzwpW6 daxUC/kbV1ce3ij/W5YK+W7ILlAR+hjl4ZKI8Hkh1gxni5MvmmWeGSYP4ovaOnEkKfAqhLET8fH fMYWkfiYuaEkFCpQ/Blrx5hIxdmKF6H9SIea5HBOH6TxLeFv4KU+MexZYtj/OhWSCZTpKfZB8vn C/SlPRGzHWffYEJWOfqJDjWdZmKSZrBgbOpXpqNGe813FbDGUD4oZmX8y5cv4eA+oHJ/aNbCbG9 wKcczTp9THHdj7BU84eEuG5LIwKyEuRrOjxaVDPlDeB9935Fksp5l+/HzBipSvN6CCUU87jtoaZ xVLRSD6O/6yZnbH9UkUusSp7+rP15fcG1n+BWbQPZAE8NIOMM7liPeGtcO6JL7A== X-Received: by 2002:a17:902:c943:b0:293:623:3241 with SMTP id d9443c01a7336-294cb67555cmr36725235ad.58.1761646335749; Tue, 28 Oct 2025 03:12:15 -0700 (PDT) X-Google-Smtp-Source: AGHT+IET+G1GfBh6CkXZDTYNyw4YCgQx2Uee56q9DVneQ5cq6QXlimc4Ow0VbC7Lp0VS2Zg/MoZqYQ== X-Received: by 2002:a17:902:c943:b0:293:623:3241 with SMTP id d9443c01a7336-294cb67555cmr36724585ad.58.1761646334820; Tue, 28 Oct 2025 03:12:14 -0700 (PDT) Received: from jiegan-gv.ap.qualcomm.com (tpe-colo-wan-fw-bordernet.qualcomm.com. [103.229.16.4]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-29498cf423esm110408755ad.19.2025.10.28.03.12.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Oct 2025 03:12:14 -0700 (PDT) From: Jie Gan Date: Tue, 28 Oct 2025 18:11:41 +0800 Subject: [PATCH v4 2/3] coresight: tpdm: add static tpdm support 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: quoted-printable Message-Id: <20251028-add_static_tpdm_support-v4-2-84e21b98e727@oss.qualcomm.com> References: <20251028-add_static_tpdm_support-v4-0-84e21b98e727@oss.qualcomm.com> In-Reply-To: <20251028-add_static_tpdm_support-v4-0-84e21b98e727@oss.qualcomm.com> To: Suzuki K Poulose , Mike Leach , James Clark , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Tingwei Zhang , Mao Jinlong , Tao Zhang , Alexander Shishkin , Bjorn Andersson , Konrad Dybcio Cc: linux-arm-msm@vger.kernel.org, coresight@lists.linaro.org, linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Jie Gan X-Mailer: b4 0.14.0 X-Developer-Signature: v=1; a=ed25519-sha256; t=1761646319; l=9643; i=jie.gan@oss.qualcomm.com; s=20250909; h=from:subject:message-id; bh=d+wut6PeZQyP4Xb5PTssNu4tUmWnBmuxgzqkWyLc/Hg=; b=4Uf/kdbo3Zkq6teckwE9ghcUj3/WynJQ0si39kQbA2u6lI9uGm3xmV4N1NIybwXr5vCxtw0vg CzCv2qdPlH6ANJjJsXAEijnVXzA2+K8THleM/rqmjO12uHh1mCfj3CQ X-Developer-Key: i=jie.gan@oss.qualcomm.com; a=ed25519; pk=3LxxUZRPCNkvPDlWOvXfJNqNO4SfGdy3eghMb8puHuk= X-Proofpoint-ORIG-GUID: IBbcSSldeMSF6CQGMymYeIAt09DpHZiG X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMDI4MDA4NSBTYWx0ZWRfXy2dgpleQWoDh Rsv0KHAbl42Yrb6pcpwoQaoSIOrfEweABJ8+Zuu4qJksqHvAZ0dcGjloOgdI/yMiOqIAnMWY4Fl nbyUSzUUZprkxfGkQ4YW+tOkCYQac1TYjm+iTQsvxvhwgJ8ZG2YUs9wqfLKS/xxJNDhyOzuicf1 JrtlrRoy3/PKt1JG+ssrYFVcU+EAcPd23X2+gRhn3/5t4s4GnKnMxQizbm3/lQ1Y4t2WeWOQE3Y JzR9fMnlckY8dpHJNYT9+FMTOOm6RVOX2UiVdd0GiiDEFLo0R/eWytq1Xj7qAyWW0kFxnX8Dp0r XYj0w2Htm4Bnf20bEcRG6uiz5khlxEMbNzRQGCQ1Gh+uwMJvVpPztVblqgG8LaPt78miHJYfE59 ZqwmKgB4VUpTKbaR2j9MWi92uTVKPA== X-Proofpoint-GUID: IBbcSSldeMSF6CQGMymYeIAt09DpHZiG X-Authority-Analysis: v=2.4 cv=fLU0HJae c=1 sm=1 tr=0 ts=69009701 cx=c_pps a=cmESyDAEBpBGqyK7t0alAg==:117 a=nuhDOHQX5FNHPW3J6Bj6AA==:17 a=IkcTkHD0fZMA:10 a=x6icFKpwvdMA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=0reUtR2WQOxYMfigi4QA:9 a=QEXdDO2ut3YA:10 a=1OuFwYUASf3TG4hYMiVC:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-10-28_04,2025-10-22_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 suspectscore=0 spamscore=0 phishscore=0 malwarescore=0 lowpriorityscore=0 priorityscore=1501 impostorscore=0 adultscore=0 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510020000 definitions=main-2510280085 The static TPDM function as a dummy source, however, it is essential to enable the port connected to the TPDA and configure the element size. Without this, the TPDA cannot correctly receive trace data from the static TPDM. Since the static TPDM does not require MMIO mapping to access its registers, a clock controller is not mandatory for its operation. Signed-off-by: Jie Gan --- drivers/hwtracing/coresight/coresight-tpda.c | 7 -- drivers/hwtracing/coresight/coresight-tpdm.c | 174 ++++++++++++++++++++++-= ---- drivers/hwtracing/coresight/coresight-tpdm.h | 12 ++ 3 files changed, 154 insertions(+), 39 deletions(-) diff --git a/drivers/hwtracing/coresight/coresight-tpda.c b/drivers/hwtraci= ng/coresight/coresight-tpda.c index 333b3cb23685..3a3825d27f86 100644 --- a/drivers/hwtracing/coresight/coresight-tpda.c +++ b/drivers/hwtracing/coresight/coresight-tpda.c @@ -22,13 +22,6 @@ =20 DEFINE_CORESIGHT_DEVLIST(tpda_devs, "tpda"); =20 -static bool coresight_device_is_tpdm(struct coresight_device *csdev) -{ - return (coresight_is_device_source(csdev)) && - (csdev->subtype.source_subtype =3D=3D - CORESIGHT_DEV_SUBTYPE_SOURCE_TPDM); -} - static void tpda_clear_element_size(struct coresight_device *csdev) { struct tpda_drvdata *drvdata =3D dev_get_drvdata(csdev->dev.parent); diff --git a/drivers/hwtracing/coresight/coresight-tpdm.c b/drivers/hwtraci= ng/coresight/coresight-tpdm.c index 7214e65097ec..0e3896c12f07 100644 --- a/drivers/hwtracing/coresight/coresight-tpdm.c +++ b/drivers/hwtracing/coresight/coresight-tpdm.c @@ -470,6 +470,9 @@ static void tpdm_enable_cmb(struct tpdm_drvdata *drvdat= a) */ static void __tpdm_enable(struct tpdm_drvdata *drvdata) { + if (coresight_is_static_tpdm(drvdata->csdev)) + return; + CS_UNLOCK(drvdata->base); =20 tpdm_enable_dsb(drvdata); @@ -532,6 +535,9 @@ static void tpdm_disable_cmb(struct tpdm_drvdata *drvda= ta) /* TPDM disable operations */ static void __tpdm_disable(struct tpdm_drvdata *drvdata) { + if (coresight_is_static_tpdm(drvdata->csdev)) + return; + CS_UNLOCK(drvdata->base); =20 tpdm_disable_dsb(drvdata); @@ -595,6 +601,30 @@ static int tpdm_datasets_setup(struct tpdm_drvdata *dr= vdata) return 0; } =20 +static int static_tpdm_datasets_setup(struct tpdm_drvdata *drvdata, struct= device *dev) +{ + /* setup datasets for static TPDM */ + if (fwnode_property_present(dev->fwnode, "qcom,dsb-element-bits") && + (!drvdata->dsb)) { + drvdata->dsb =3D devm_kzalloc(drvdata->dev, + sizeof(*drvdata->dsb), GFP_KERNEL); + + if (!drvdata->dsb) + return -ENOMEM; + } + + if (fwnode_property_present(dev->fwnode, "qcom,cmb-element-bits") && + (!drvdata->cmb)) { + drvdata->cmb =3D devm_kzalloc(drvdata->dev, + sizeof(*drvdata->cmb), GFP_KERNEL); + + if (!drvdata->cmb) + return -ENOMEM; + } + + return 0; +} + static ssize_t reset_dataset_store(struct device *dev, struct device_attribute *attr, const char *buf, @@ -1342,10 +1372,9 @@ static const struct attribute_group *tpdm_attr_grps[= ] =3D { NULL, }; =20 -static int tpdm_probe(struct amba_device *adev, const struct amba_id *id) +static int tpdm_probe(struct device *dev, struct resource *res) { void __iomem *base; - struct device *dev =3D &adev->dev; struct coresight_platform_data *pdata; struct tpdm_drvdata *drvdata; struct coresight_desc desc =3D { 0 }; @@ -1354,32 +1383,37 @@ static int tpdm_probe(struct amba_device *adev, con= st struct amba_id *id) pdata =3D coresight_get_platform_data(dev); if (IS_ERR(pdata)) return PTR_ERR(pdata); - adev->dev.platform_data =3D pdata; + dev->platform_data =3D pdata; =20 /* driver data*/ drvdata =3D devm_kzalloc(dev, sizeof(*drvdata), GFP_KERNEL); if (!drvdata) return -ENOMEM; - drvdata->dev =3D &adev->dev; + drvdata->dev =3D dev; dev_set_drvdata(dev, drvdata); =20 - base =3D devm_ioremap_resource(dev, &adev->res); - if (IS_ERR(base)) - return PTR_ERR(base); + if (res) { + base =3D devm_ioremap_resource(dev, res); + if (IS_ERR(base)) + return PTR_ERR(base); =20 - drvdata->base =3D base; + drvdata->base =3D base; + ret =3D tpdm_datasets_setup(drvdata); + if (ret) + return ret; =20 - ret =3D tpdm_datasets_setup(drvdata); - if (ret) - return ret; - - if (drvdata && tpdm_has_dsb_dataset(drvdata)) - of_property_read_u32(drvdata->dev->of_node, - "qcom,dsb-msrs-num", &drvdata->dsb_msr_num); + if (drvdata && tpdm_has_dsb_dataset(drvdata)) + of_property_read_u32(drvdata->dev->of_node, + "qcom,dsb-msrs-num", &drvdata->dsb_msr_num); =20 - if (drvdata && tpdm_has_cmb_dataset(drvdata)) - of_property_read_u32(drvdata->dev->of_node, - "qcom,cmb-msrs-num", &drvdata->cmb_msr_num); + if (drvdata && tpdm_has_cmb_dataset(drvdata)) + of_property_read_u32(drvdata->dev->of_node, + "qcom,cmb-msrs-num", &drvdata->cmb_msr_num); + } else { + ret =3D static_tpdm_datasets_setup(drvdata, dev); + if (ret) + return ret; + } =20 /* Set up coresight component description */ desc.name =3D coresight_alloc_device_name(&tpdm_devs, dev); @@ -1388,34 +1422,51 @@ static int tpdm_probe(struct amba_device *adev, con= st struct amba_id *id) desc.type =3D CORESIGHT_DEV_TYPE_SOURCE; desc.subtype.source_subtype =3D CORESIGHT_DEV_SUBTYPE_SOURCE_TPDM; desc.ops =3D &tpdm_cs_ops; - desc.pdata =3D adev->dev.platform_data; - desc.dev =3D &adev->dev; + desc.pdata =3D dev->platform_data; + desc.dev =3D dev; desc.access =3D CSDEV_ACCESS_IOMEM(base); - desc.groups =3D tpdm_attr_grps; + if (res) + desc.groups =3D tpdm_attr_grps; drvdata->csdev =3D coresight_register(&desc); if (IS_ERR(drvdata->csdev)) return PTR_ERR(drvdata->csdev); =20 spin_lock_init(&drvdata->spinlock); =20 - /* Decrease pm refcount when probe is done.*/ - pm_runtime_put(&adev->dev); - return 0; } =20 -static void tpdm_remove(struct amba_device *adev) +static int tpdm_remove(struct device *dev) { - struct tpdm_drvdata *drvdata =3D dev_get_drvdata(&adev->dev); + struct tpdm_drvdata *drvdata =3D dev_get_drvdata(dev); =20 coresight_unregister(drvdata->csdev); + + return 0; +} + +static int dynamic_tpdm_probe(struct amba_device *adev, + const struct amba_id *id) +{ + int ret; + + ret =3D tpdm_probe(&adev->dev, &adev->res); + if (!ret) + pm_runtime_put(&adev->dev); + + return ret; +} + +static void dynamic_tpdm_remove(struct amba_device *adev) +{ + tpdm_remove(&adev->dev); } =20 /* * Different TPDM has different periph id. * The difference is 0-7 bits' value. So ignore 0-7 bits. */ -static const struct amba_id tpdm_ids[] =3D { +static const struct amba_id dynamic_tpdm_ids[] =3D { { .id =3D 0x001f0e00, .mask =3D 0x00ffff00, @@ -1423,17 +1474,76 @@ static const struct amba_id tpdm_ids[] =3D { { 0, 0, NULL }, }; =20 -static struct amba_driver tpdm_driver =3D { +MODULE_DEVICE_TABLE(amba, dynamic_tpdm_ids); + +static struct amba_driver dynamic_tpdm_driver =3D { .drv =3D { .name =3D "coresight-tpdm", .suppress_bind_attrs =3D true, }, - .probe =3D tpdm_probe, - .id_table =3D tpdm_ids, - .remove =3D tpdm_remove, + .probe =3D dynamic_tpdm_probe, + .id_table =3D dynamic_tpdm_ids, + .remove =3D dynamic_tpdm_remove, }; =20 -module_amba_driver(tpdm_driver); +static int tpdm_platform_probe(struct platform_device *pdev) +{ + struct resource *res =3D platform_get_resource(pdev, IORESOURCE_MEM, 0); + int ret; + + pm_runtime_get_noresume(&pdev->dev); + pm_runtime_set_active(&pdev->dev); + pm_runtime_enable(&pdev->dev); + + ret =3D tpdm_probe(&pdev->dev, res); + pm_runtime_put(&pdev->dev); + if (ret) + pm_runtime_disable(&pdev->dev); + + return ret; +} + +static void tpdm_platform_remove(struct platform_device *pdev) +{ + struct tpdm_drvdata *drvdata =3D dev_get_drvdata(&pdev->dev); + + if (WARN_ON(!drvdata)) + return; + + tpdm_remove(&pdev->dev); + pm_runtime_disable(&pdev->dev); +} + +static const struct of_device_id static_tpdm_match[] =3D { + {.compatible =3D "qcom,coresight-static-tpdm"}, + {} +}; + +MODULE_DEVICE_TABLE(of, static_tpdm_match); + +static struct platform_driver static_tpdm_driver =3D { + .probe =3D tpdm_platform_probe, + .remove =3D tpdm_platform_remove, + .driver =3D { + .name =3D "coresight-static-tpdm", + .of_match_table =3D static_tpdm_match, + .suppress_bind_attrs =3D true, + }, +}; + +static int __init tpdm_init(void) +{ + return coresight_init_driver("tpdm", &dynamic_tpdm_driver, &static_tpdm_d= river, + THIS_MODULE); +} + +static void __exit tpdm_exit(void) +{ + coresight_remove_driver(&dynamic_tpdm_driver, &static_tpdm_driver); +} + +module_init(tpdm_init); +module_exit(tpdm_exit); =20 MODULE_LICENSE("GPL"); MODULE_DESCRIPTION("Trace, Profiling & Diagnostic Monitor driver"); diff --git a/drivers/hwtracing/coresight/coresight-tpdm.h b/drivers/hwtraci= ng/coresight/coresight-tpdm.h index b11754389734..2867f3ab8186 100644 --- a/drivers/hwtracing/coresight/coresight-tpdm.h +++ b/drivers/hwtracing/coresight/coresight-tpdm.h @@ -343,4 +343,16 @@ struct tpdm_dataset_attribute { enum dataset_mem mem; u32 idx; }; + +static inline bool coresight_device_is_tpdm(struct coresight_device *csdev) +{ + return (coresight_is_device_source(csdev)) && + (csdev->subtype.source_subtype =3D=3D + CORESIGHT_DEV_SUBTYPE_SOURCE_TPDM); +} + +static inline bool coresight_is_static_tpdm(struct coresight_device *csdev) +{ + return (coresight_device_is_tpdm(csdev) && !csdev->access.base); +} #endif /* _CORESIGHT_CORESIGHT_TPDM_H */ --=20 2.34.1 From nobody Thu Dec 18 09:47:09 2025 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 E4FF82C3769 for ; Tue, 28 Oct 2025 10:12:21 +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=1761646343; cv=none; b=oEb1fzBdArmqh2o0Sn1OpNe7ymzHCbyNlMWrHRa1+NkeFkxWoaIyB62xGYFNmOvQCn8rforvc+uxX4Ngb6ZlyILBRCMPt/rApmSHUrlevLyt7iWim7jLCaXuAcpQP79TlWLq8cnawvUztaEdCPWhB9Ou4hGKTZHH5R9uuJycCmE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761646343; c=relaxed/simple; bh=/rV8b02lFbRn8hnY0VJDTTwq6M9xJWBmQ2RE2hCI1Ho=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=W9xgdR+NRJtRRXHgXjb8sZtoCcU8L7b6dU5roFbQqRSE7nauNI9YXt/zPGnxSf91ynn2wfkcv9KIcShztNX9lpPfAjPOq9Tb1xfnKUIQJk4pR2TDxEFjvetk/Jkjguf8XHK4azvsOQc04ZgwXmErxu0hiR9R4lV17ga37t5fggY= 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=e/RUqVnX; 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="e/RUqVnX" Received: from pps.filterd (m0279862.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 59S4A14N552508 for ; Tue, 28 Oct 2025 10:12:21 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= 6AOYj+NGGeRZ7Yqf6v29L00+UqblIskONx8KDUVHi1Q=; b=e/RUqVnX6twUu1R4 1SL5Y5v3qcICnszJ+UT0irCp/VoYOI/uNdB77jwr1x8hk/C4xNMnXfajzfuQWigr GR/Puw7ZXSjPVmMCYY0LWRjNN/s4REYi1Z9gBalYzlbtMkEABjCFWpalDhuenWJX SqTm2vS3LaPUv/2Un9ugR0IpIoxG6pWrkTizgHpXSO0DvvKTqnjXBTwI6zMHpQUj 1OsDxRZZ5P5wTwwUqDU8yD+rq35+NU9I82sHItgLJPMB3KhynBWSNyb9Th5RfN0s jjm+8du6e7Jfy5iGZJCVK8TQIhhAkGkpNAkvxpSho0JtLVXGNMwJhx7XQ30WKjDV FmDAnw== 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 4a2pjf90qv-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Tue, 28 Oct 2025 10:12:21 +0000 (GMT) Received: by mail-pl1-f197.google.com with SMTP id d9443c01a7336-2909daa65f2so77169545ad.0 for ; Tue, 28 Oct 2025 03:12:21 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1761646341; x=1762251141; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=6AOYj+NGGeRZ7Yqf6v29L00+UqblIskONx8KDUVHi1Q=; b=rlRwoaZLgHZFYXxGSX3tBdixS1SyrfH4sziO1qIr4Ed7gbHdt9+XceduNFeQl/FpQ+ wllf2/U2FR/S5lagKu3QP6gU7Qm0OrnKZlKeQprjkxsAPHjewlHH2r14we01afFS1Q5h h+Wt9FKILJvFiOAZ0UpCqvpKbMRmHKVdCDkBXVkViQnF4tXk8eTOcFIJl/91eb3TBjqd EEzlH45OCMPHv/XW7jXv47q2VZyGh10TmWvwdU3Yno2eYjMcZpzecB/jQeUpmWbcvdvm RiD+34XBOxZwGJag/s72dJ66LaiqHHQB1zF4XvZTP0IPDq860HNmr0KwROy+cu5CjR3b Ob+A== X-Forwarded-Encrypted: i=1; AJvYcCXduzcZTBoqFF5jTNeUe+xxobsf5BczeLGNnVXuzFyUyAYdYPmv2S5E9XSxgz3lkZlN12ZQ0f9hlh1mUdg=@vger.kernel.org X-Gm-Message-State: AOJu0YweZJi8hLINUA5njRHGABNAdrKvWTIvy91psGZELhPbtJ9Y12aY SseF34+lW/i7/joxFa3+LhZfTNyBBEz6hkisCYFeFaO0yTkwBF8DOzHMn2R4skV1rlRZ9f8ubDg rwA62Xcpqf91ltJfa4Oaruc/jyH9YeA83FDsZfc3a1Q/H+nveyEUcy0asqBcGNrCtzig= X-Gm-Gg: ASbGncsAKnPzUyIKAgoAwsG6IKCcwQF3+Vd+kq609QTJ91N2it++wfa2Ek8vBBJM6Lt G2Mg/Ejl3IJbbH+2J0kC9cW9Qr9xeaaVfxbfcQYB+k+/bkD7aLc/JKI5hN/XFmdAivMF0A5k9WU fSjehUAUKIyr4c91GMJXmM/yk0q+Zv1zmlBXMsx3l2esSRwz+TzyPzYGjxLdQtCNts1GftgP29F 3qE025eLrgHyiIHFa7yFnzV+p7LhZP7QxG28SocsUq0DrBZEdnPzDvSY96Xu9gzLLQMQstw4GpZ b+xWSCYRg6AKubNcyjWDvsw/BRVT/ycescR9FdLA+M+G/kYGkojOdX9H8F+KxaDNwt3o4IgpBCV sCV8tjRiZwUppZ95mQMj09hKvfFudiIDWvURCSAP45mWI1HRCClM0tKbiPw9Lfw== X-Received: by 2002:a17:903:15cc:b0:292:b0d0:2ef1 with SMTP id d9443c01a7336-294cc722b29mr32133095ad.18.1761646340551; Tue, 28 Oct 2025 03:12:20 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEQcK2UoPhoEuKHRrlWuWBy8+oO5uc8TBTCYd9RSa/HN7HmGG2vRuqfaewpomWa5UmuaODLLg== X-Received: by 2002:a17:903:15cc:b0:292:b0d0:2ef1 with SMTP id d9443c01a7336-294cc722b29mr32132545ad.18.1761646339772; Tue, 28 Oct 2025 03:12:19 -0700 (PDT) Received: from jiegan-gv.ap.qualcomm.com (tpe-colo-wan-fw-bordernet.qualcomm.com. [103.229.16.4]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-29498cf423esm110408755ad.19.2025.10.28.03.12.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Oct 2025 03:12:19 -0700 (PDT) From: Jie Gan Date: Tue, 28 Oct 2025 18:11:42 +0800 Subject: [PATCH v4 3/3] arm64: dts: qcom: lemans: enable static TPDM 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: quoted-printable Message-Id: <20251028-add_static_tpdm_support-v4-3-84e21b98e727@oss.qualcomm.com> References: <20251028-add_static_tpdm_support-v4-0-84e21b98e727@oss.qualcomm.com> In-Reply-To: <20251028-add_static_tpdm_support-v4-0-84e21b98e727@oss.qualcomm.com> To: Suzuki K Poulose , Mike Leach , James Clark , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Tingwei Zhang , Mao Jinlong , Tao Zhang , Alexander Shishkin , Bjorn Andersson , Konrad Dybcio Cc: linux-arm-msm@vger.kernel.org, coresight@lists.linaro.org, linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Jie Gan , Konrad Dybcio X-Mailer: b4 0.14.0 X-Developer-Signature: v=1; a=ed25519-sha256; t=1761646319; l=3216; i=jie.gan@oss.qualcomm.com; s=20250909; h=from:subject:message-id; bh=/rV8b02lFbRn8hnY0VJDTTwq6M9xJWBmQ2RE2hCI1Ho=; b=NW8JrTq58ErqSr16wGg0PZvUE6ItBGloVWbTHohKLxaFebf5hWosb78ZE7f0jF4wGUAcuYMie pZa9rUTi8emBz2PUihhD7npvKKnpvnBjjSlHcaLEb4CU6TqJMr1/yvC X-Developer-Key: i=jie.gan@oss.qualcomm.com; a=ed25519; pk=3LxxUZRPCNkvPDlWOvXfJNqNO4SfGdy3eghMb8puHuk= X-Authority-Analysis: v=2.4 cv=Ut9u9uwB c=1 sm=1 tr=0 ts=69009705 cx=c_pps a=cmESyDAEBpBGqyK7t0alAg==:117 a=nuhDOHQX5FNHPW3J6Bj6AA==:17 a=IkcTkHD0fZMA:10 a=x6icFKpwvdMA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=_1kJojZ1I3LL_-Zbm_IA:9 a=QEXdDO2ut3YA:10 a=1OuFwYUASf3TG4hYMiVC:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMDI4MDA4NSBTYWx0ZWRfX65o2f0Fr/MD7 FploZe6RHTxh1WpWxIvRyNhRGrWqEmLTO/i8Jx5OIT7zRguypB5DYEPAL6TUJOR8sVfchMi4xcv 8lH6pT4E4ySpMbG/iNtGD1kPtpI1eYRUjl0em2pkpNQ7OcKXDQsmtFtZoEIU0B5GpcxhxN0fqnZ TUexo1Ax88qUfD5PHytYwYb9ds8HwL4ybSFeBfxZpSZI+6S8FLsoh33pFokEc6+aHSI4AuYi0rT K/cK+xLszESynVASAUQ4uQ2rS+FezLfLyCMV0zfqCnn7hY41WDeM+z/MildOuUpHSqqrhOYQrIE dN2fCFsMkh2N1GhxazQf7R17rUt6hrDrvviqZXKDvUvMwQAstU67sBfyB34sbLzLNiPyr3QmYO/ GZlvKhRwAkZWpfQmMBinjEIXxHseTQ== X-Proofpoint-GUID: fXJoCUxptjbAd5LIFfjEjcmnVF82Dya0 X-Proofpoint-ORIG-GUID: fXJoCUxptjbAd5LIFfjEjcmnVF82Dya0 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-10-28_04,2025-10-22_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 lowpriorityscore=0 priorityscore=1501 spamscore=0 adultscore=0 bulkscore=0 clxscore=1015 impostorscore=0 suspectscore=0 phishscore=0 malwarescore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510020000 definitions=main-2510280085 Enable static TPDM device for lemans. Reviewed-by: Konrad Dybcio Signed-off-by: Jie Gan Acked-by: Suzuki K Poulose --- arch/arm64/boot/dts/qcom/lemans.dtsi | 105 +++++++++++++++++++++++++++++++= ++++ 1 file changed, 105 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/lemans.dtsi b/arch/arm64/boot/dts/qco= m/lemans.dtsi index 0b154d57ba24..8a93b353d11c 100644 --- a/arch/arm64/boot/dts/qcom/lemans.dtsi +++ b/arch/arm64/boot/dts/qcom/lemans.dtsi @@ -2961,6 +2961,14 @@ funnel1_in4: endpoint { <&apss_funnel1_out>; }; }; + + port@5 { + reg =3D <5>; + + funnel1_in5: endpoint { + remote-endpoint =3D <&dlct0_funnel_out>; + }; + }; }; }; =20 @@ -3118,6 +3126,60 @@ etr1_out: endpoint { }; }; =20 + tpda@4ad3000 { + compatible =3D "qcom,coresight-tpda", "arm,primecell"; + reg =3D <0x0 0x4ad3000 0x0 0x1000>; + + clocks =3D <&aoss_qmp>; + clock-names =3D "apb_pclk"; + + in-ports { + #address-cells =3D <1>; + #size-cells =3D <0>; + + port@10 { + reg =3D <16>; + dlct0_tpda_in16: endpoint { + remote-endpoint =3D <&turing0_funnel_out>; + }; + }; + }; + + out-ports { + port { + dlct0_tpda_out: endpoint { + remote-endpoint =3D + <&dlct0_funnel_in0>; + }; + }; + }; + + }; + + funnel@4ad4000 { + compatible =3D "arm,coresight-dynamic-funnel", "arm,primecell"; + reg =3D <0x0 0x4ad4000 0x0 0x1000>; + + clocks =3D <&aoss_qmp>; + clock-names =3D "apb_pclk"; + + in-ports { + port { + dlct0_funnel_in0: endpoint { + remote-endpoint =3D <&dlct0_tpda_out>; + }; + }; + }; + + out-ports { + port { + dlct0_funnel_out: endpoint { + remote-endpoint =3D <&funnel1_in5>; + }; + }; + }; + }; + funnel@4b04000 { compatible =3D "arm,coresight-dynamic-funnel", "arm,primecell"; reg =3D <0x0 0x4b04000 0x0 0x1000>; @@ -3390,6 +3452,35 @@ aoss_cti: cti@4b13000 { clock-names =3D "apb_pclk"; }; =20 + funnel@4b83000 { + compatible =3D "arm,coresight-dynamic-funnel", "arm,primecell"; + reg =3D <0x0 0x4b83000 0x0 0x1000>; + + clocks =3D <&aoss_qmp>; + clock-names =3D "apb_pclk"; + + in-ports { + #address-cells =3D <1>; + #size-cells =3D <0>; + + port@1 { + reg =3D <1>; + + turing0_funnel_in1: endpoint { + remote-endpoint =3D <&turing_llm_tpdm_out>; + }; + }; + }; + + out-ports { + port { + turing0_funnel_out: endpoint { + remote-endpoint =3D <&dlct0_tpda_in16>; + }; + }; + }; + }; + etm@6040000 { compatible =3D "arm,primecell"; reg =3D <0x0 0x6040000 0x0 0x1000>; @@ -8269,6 +8360,20 @@ arch_timer: timer { ; }; =20 + turing-llm-tpdm { + compatible =3D "qcom,coresight-static-tpdm"; + + qcom,cmb-element-bits =3D <32>; + + out-ports { + port { + turing_llm_tpdm_out: endpoint { + remote-endpoint =3D <&turing0_funnel_in1>; + }; + }; + }; + }; + pcie0: pcie@1c00000 { compatible =3D "qcom,pcie-sa8775p"; reg =3D <0x0 0x01c00000 0x0 0x3000>, --=20 2.34.1