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 83E422F9DA1 for ; Fri, 22 May 2026 06:39:22 +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=1779431964; cv=none; b=A7J4eFPeKB7nHWa1tGnsqQfttOIZw+nzPiw0McQQqSV3EfRF+WMnH9fEkj9aUk2v1G1NMm8sdmqqRyas+TvgM6BHKhBCdLLAbOdZcMP/wkSRY2/1ixLP03yn8jE+nW7m0OQkaikP1cms3+ni3hXKKuQJiF/m+/f3GOlboaRymxg= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779431964; c=relaxed/simple; bh=enw+fPqVPWUrB9X0CbAk+u1kPpuvWToKj69Js2hLlrA=; h=From:Subject:Date:Message-Id:MIME-Version:Content-Type:To:Cc; b=tU5PCM8efDXiyAt6Uv+QgSF2fcu/lC54cXYeALVc31iuJIyskKyFTfgTRJQS8lEgFEonGOPOx/mT26nuv0opk3GsoceaeUUJclLUd9TwF9ewwiWqDseUsVfOOAiMKO1t4HnC2IC51IjZQcDBmPsj8cDV719+VyxJW6GjhNzkRqI= 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=bOwyvpG+; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=TyQtb9qN; 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="bOwyvpG+"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="TyQtb9qN" 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 64M42CUO3005817 for ; Fri, 22 May 2026 06:39:22 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:message-id :mime-version:subject:to; s=qcppdkim1; bh=SEJmmWqsuZHumhCT1gIgXW 0uUCe6FOcXl7LGeuufUV4=; b=bOwyvpG+aZYh7lQKcfwciL7gGbdh7+9f9gBasD 1+vqcR8kp9A2MJv3xZ3i+Px5xoqS1/D6r4Ogium9RfinL2L4+DScxgsdiPGMPBYu f76u1cSHjZdlND1QRbzYC1i7cvBZAe7pqzkHfSrEEE2xX3xOTl70eBXbchU4Gu6n oB9tdSlnPFx21iVqG/4s2+//cuswveaoHoBwENk1LZ8EvgOcHSY53itEzKpgEaLD RaGOBdWe1UQHcGLcHpu8rfKfUTvMwAuzg42C4VueYV4xAj695ClzKE9rA1GLZ6B0 ZdynU156kjIRV1s3XC8YRIURfe7hykbkGHoIxQHFCHRCy9rw== Received: from mail-pj1-f72.google.com (mail-pj1-f72.google.com [209.85.216.72]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4eafrt8f7u-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Fri, 22 May 2026 06:39:22 +0000 (GMT) Received: by mail-pj1-f72.google.com with SMTP id 98e67ed59e1d1-368b68a33adso10491395a91.1 for ; Thu, 21 May 2026 23:39:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1779431962; x=1780036762; darn=vger.kernel.org; h=cc:to:content-transfer-encoding:mime-version:message-id:date :subject:from:from:to:cc:subject:date:message-id:reply-to; bh=SEJmmWqsuZHumhCT1gIgXW0uUCe6FOcXl7LGeuufUV4=; b=TyQtb9qNrgNDzwnawIm0X05y6mc725Kzk5emEivVkN39UYffzzEc6EAoMszsBgtyFa pknnhvGlF+xgZwRJdAIeYdH3XzfgCsAR0i8IBOMM6f8P/4miSVyH5jvah2Vq7uXcNd5B FQBgbm8erxfaFgFXabNN9ouGDaVJ4vnb2Qk2JuLeo9giv3KWhtLfv86OTLELJ//Ze/j5 MGSOoq+/Rsys0n/FGwGy2pxg8Jn461ukjLzVERptI+S8j5he4TLiTa5mp5bzXYCo+nPC EVZqWGvtMIipXI6jskFGn6gCblZJF3lI0rC74tDrPYDmZ7wDbTVHFoiswyjOd1fzESeL zBOw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779431962; x=1780036762; h=cc:to:content-transfer-encoding:mime-version:message-id:date :subject:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=SEJmmWqsuZHumhCT1gIgXW0uUCe6FOcXl7LGeuufUV4=; b=OyUsF67YUv5vtoWFiqgtkXdydfv1qNx9BCbnBh8aX6vU/0k1BiGRu5DGZ7to2gL7KP j1DdCkMtr9yftRCRKN75dqJPmrBnDEyJw7wRWiEQEUDIcs1Of4G8iLAg5Y5qHaJZCJhp s6Qo2WXaNGf3oDyzBHwMJ/KTta4S3eAITNSRuy0yhyCC03hQ/YEZ/oB1kxRShD56pGs+ vTAp15cLqy5xFgnf1V72MS7Ba1xUdG2Cxj0aeR7lcFxXPZ+JSTECp5EX6CGgtcolSFrG /ZRCCYM6VdvZSL5yUgjmoRmZkT60PDjQnQvOsAg0g2cqaTnUCz5j6wJrOhbsIgcXHZni d1Nw== X-Forwarded-Encrypted: i=1; AFNElJ9w5wauomDIE4slbk6PnGlO3NXNRG22b8WwCU9YMzFWoNyyh9bdLebh3SxVWf3e2e9EWX43Ml6UAAFR/q0=@vger.kernel.org X-Gm-Message-State: AOJu0YwZuodyDslaGCoLRlbVY8olLhuhU6TcnqZml43TgrzQ6PtEw1LR kVbrzM9zEscwT5xMS6hxZWPW4J5DkfLE1a9hjbWlkQToNAGasb9JUnmKiTPmmAQhjOu6lKbzyLR WgxAxCX2oeMS3ve+LbyFs/u2X1YI8Cq85XFzQu49cgYGdpc0NwlEE5nMb5iYDQ2LFMQs= X-Gm-Gg: Acq92OFSAgAIOd/BGRbyQNLZd/RUw+CqTz0tQGrOiPSobACHp5I1+SnMIaj7PITn9Gl CknlAxWI+yCtdaPPjISOCIb9lQ8vbjn9Fr+josM/tRI/iaRmhG8Y1aSKwTsk3nKWnMA1/KKxkHV 20LSKBH/doOIyrGYQrsT5swo2fD267vKdRiwxN7izDjGuix3W6Q8WCsIqhydExgsUipvujwPpPe NdRqyB/GSrgN7CPoCitOkAM92FoiIylgWoT56xVFX/CQnhtCSbaLDLdXsTS6Y4GqEgOTQtY/koc ceiLgPLs4Bq7IF4kZXMsOh6dZg1h90SFq+JeDv4M6aZwhATdThZjnf06mMk1fkdT8DodYsFWJCl 7jIK/6403Eu9qWcNkw/dcelNTx5CqYZ+9ZoYTmykLQtmousH28jX/hhQVD3riteA/psGMKR95CF qzwR5hBb0ltNdbBqLQwxLx19S2ahf3vM3mPRkOws6C/1y1TkBOxdY= X-Received: by 2002:a17:90b:3ecc:b0:369:d7c6:450a with SMTP id 98e67ed59e1d1-36a671e974emr2623040a91.0.1779431961603; Thu, 21 May 2026 23:39:21 -0700 (PDT) X-Received: by 2002:a17:90b:3ecc:b0:369:d7c6:450a with SMTP id 98e67ed59e1d1-36a671e974emr2623014a91.0.1779431961074; Thu, 21 May 2026 23:39:21 -0700 (PDT) Received: from hu-yrangana-blr.qualcomm.com (blr-bdr-fw-01_GlobalNAT_AllZones-Outside.qualcomm.com. [103.229.18.19]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-36a72c4cf56sm888822a91.12.2026.05.21.23.39.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 21 May 2026 23:39:20 -0700 (PDT) From: Yuvaraj Ranganathan Subject: [PATCH v2 0/2] firmware: qcom: scm: add tracepoints for the SMC call interface Date: Fri, 22 May 2026 12:08:58 +0530 Message-Id: <20260522-scm-tracepoints-v2-0-e27cdbe0c585@oss.qualcomm.com> 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: 8bit X-B4-Tracking: v=1; b=H4sIAAP6D2oC/32NQQ6CMBBFr0K6tqSU0ogr72FYtEORGqHYKURDu LstbtXNJC/5781K0HhrkJyylXizWLRujMAPGYFejVdDbRuZcMYlq5ikCAMNXoGZnB0DUtBSVLz kCrQh0Zq86exzL16aD+OsbwZCyqRFbzE4/9pfLkXa/a4vBWW0VEXdagkV68TZIeaPWd3BDUMeT yr+14WG+lhyKVjxRW+2bXsDky6sKgYBAAA= X-Change-ID: 20260506-scm-tracepoints-cb645232acbe To: Bjorn Andersson , Konrad Dybcio Cc: kernel@oss.qualcomm.com, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, Yuvaraj Ranganathan , Konrad Dybcio X-Mailer: b4 0.16-dev-d5d98 X-Developer-Signature: v=1; a=ed25519-sha256; t=1779431958; l=2523; i=yuvaraj.ranganathan@oss.qualcomm.com; s=20260506; h=from:subject:message-id; bh=enw+fPqVPWUrB9X0CbAk+u1kPpuvWToKj69Js2hLlrA=; b=Q6WUyp/w63E+9hQHPuq+kY3GrImpJw7C/i1jyoHmP6nUFPSP/Gxv3HOtEgIW2sG9wKV8J3XY7 /ITI5p3dkhsA8W1lTnzWQMZ4OFrEhq6gNvQ9XT/kd6Kr+uBNS8dLTC5 X-Developer-Key: i=yuvaraj.ranganathan@oss.qualcomm.com; a=ed25519; pk=ln7RObom4c2W8MEnQqwZbOi6X198/6toN51al5+6rKI= X-Authority-Analysis: v=2.4 cv=JN0LdcKb c=1 sm=1 tr=0 ts=6a0ffa1a cx=c_pps a=RP+M6JBNLl+fLTcSJhASfg==:117 a=Ou0eQOY4+eZoSc0qltEV5Q==:17 a=IkcTkHD0fZMA:10 a=NGcC8JguVDcA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=_K5XuSEh1TEqbUxoQ0s3:22 a=bC-a23v3AAAA:8 a=EUspDBNiAAAA:8 a=NewMqQjGTZYH1I1-BI4A:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=iS9zxrgQBfv6-_F4QbHw:22 a=FO4_E8m0qiDe52t0p3_H:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNTIyMDA2NCBTYWx0ZWRfX1cuifgLAiyXa PdF15unqaMACmri/5ZM7iHa3NDNt6b2TChYNZe3pGQScjVE5r8ZwpmxxR+bOC4lrfh0SXGf0GF1 KTrlwL5ln88yTF3/LF7+ICMwpFswEGafbrOw68vnVf8XYEgDZyYeranUQNPZQWtrevYnh4jDvLY dDooGLjh2WYG1Cj6K4/dAyfY0SHv3z1IOqSHcdrqlZKLEiufdU7QcftJ9KxbKEf7TMiGhY/VLBs zH9QaOvy8bBRZn/iyhgD4ry9wWMOJxEDnSHGSJeJHzlY7qGT/RrSCA+TKfD9xn/GzEhzlPuL1WU DdeDh9JuVW/YF23HwQJ5F9Y+Nh0l99GjI0mE+FW4hacECS2d4fVfUH8xZMV67fYy4ufE0gCbB2+ f8WB3XPTSF5c+tLG+a26m4Fa5+8Yy1mDvWiTnb/akiymfWzhKbS8r8o7p++wA1GO4IX+UV+f8Jk HQ1Lv6OYwupQbYb5HAg== X-Proofpoint-GUID: XSmIooGbet1lN7LHjp8wv_sXE3AeXKhm X-Proofpoint-ORIG-GUID: XSmIooGbet1lN7LHjp8wv_sXE3AeXKhm 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-22_01,2026-05-18_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 lowpriorityscore=0 suspectscore=0 malwarescore=0 impostorscore=0 phishscore=0 bulkscore=0 clxscore=1015 spamscore=0 priorityscore=1501 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2605130000 definitions=main-2605220064 The Qualcomm SCM driver is the sole gateway between the kernel and TrustZone firmware. When firmware issues manifest — unexpected error codes, calls that never return, or WAITQ sleep/resume cycles that stall — there is currently no low-overhead way to observe what the driver is doing without inserting temporary printk statements and rebuilding the kernel. This series adds tracepoint coverage for the full SMC call lifecycle. Once enabled, ftrace or perf can reconstruct the complete sequence of firmware interactions, correlate service and command identifiers with firmware return codes, measure per-call latency, and pinpoint the exact call site responsible for a waitqueue stall — all without modifying driver source or rebooting. To capture a trace on a running system: echo 1 > /sys/kernel/debug/tracing/events/qcom_scm/enable cat /sys/kernel/debug/tracing/trace Example output: kworker/0:1-42 [000] .... 120.614235: scm_smc_request: smc_id:0x42000601 svc_id:0x06 cmd_id:0x01 args_cnt:1 args:{0x2000c1c} kworker/0:1-42 [000] .... 120.614289: scm_smc_done: smc_id:0x42000601 ret:0 res_to_callee:0 res0:1 res1:0 res2:0 kworker/2:1-87 [002] .... 120.821011: scm_smc_request: smc_id:0x42000603 svc_id:0x01 cmd_id:0x05 args_cnt:1 args:{0xa} kworker/2:1-87 [002] .... 120.821379: scm_waitq_sleep: wq_ctx:0, smc_call_ctx:1 kworker/2:1-87 [002] .... 120.823104: scm_waitq_resume: smc_call_ctx:1 kworker/2:1-87 [002] .... 120.823551: scm_smc_done: smc_id:0x42000603 ret:0 res_to_callee:0 res0:0 res1:0 res2:0 Tested on sa8797 with CONFIG_QCOM_SCM=y and CONFIG_FTRACE=y. Compilation verified on arm32 and arm64. Signed-off-by: Yuvaraj Ranganathan --- Changes in v2: - Remove tabs before assignments as suggested in review. - Link to v1: https://patch.msgid.link/20260506-scm-tracepoints-v1-0-4bc983264014@oss.qualcomm.com --- Yuvaraj Ranganathan (2): firmware: qcom: scm: add trace events for the SMC call interface firmware: qcom: scm: instrument SMC call path with tracepoints drivers/firmware/qcom/Makefile | 1 + drivers/firmware/qcom/qcom_scm-smc.c | 10 +++ drivers/firmware/qcom/qcom_scm_trace.h | 143 +++++++++++++++++++++++++++++++++ 3 files changed, 154 insertions(+) --- base-commit: 90c7629ccf1277799b025501e5491429ebf7b6cf change-id: 20260506-scm-tracepoints-cb645232acbe Best regards, -- Yuvaraj Ranganathan