From nobody Mon Feb 9 01:18:49 2026 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 37334276057 for ; Wed, 28 May 2025 09:21:44 +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=1748424106; cv=none; b=jIMS7Sg6MeyjXfrHU8BPAo+88qE2tuQw/BtwTs82umFSZQMx9nudY5Wleu+TKanb7Sv1SFgrEqDduY6YST5g5im2s1++Gq3CwNKaaUz6rk5L1vUiRe+pv9r5UiBX3a5otzqi5QnwNRdRnF3EuNVHpT3Bp4aS1k0CV79LTU6+RoE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1748424106; c=relaxed/simple; bh=vRR6szynldY94FYUj5qNjs3DmteWmQfiTljj3mxMF78=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=L3WsJpBmicaJoiiKWUyIXwWD4gSyLyCMt7jf3yjURVFBh8w7Cgg8UXJ0BNIdd79RsFjmx78uuGSo+ZmFMXoEPMEnPQ8XZQRfgn+8e4KP9ZIll+p6weteB6vfh8cdDAW3+W3WYisO0p2klkeG4tZuQLVgKOj2j8a/5AjNRdfe58U= 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=QBzGFsb8; 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="QBzGFsb8" Received: from pps.filterd (m0279868.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 54S1wtIo006866 for ; Wed, 28 May 2025 09:21:44 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= LdmcYDeR3oxl4uFyKw3pkSyRmu08N2XqrqgvurqEKN0=; b=QBzGFsb8QvT/YLEc 14HhK5zHN3mSsKt3rfJJh/6un/CYR2/tCrSl2Zelpjpe0mx5j0jEs4jekWRAzkHR SKmZWkQe4crnS08r4iMPGKyJnW7be2fkegf62UbW4WZTZ/sqds7qerC0h2i1YCdt lXrP+DKGYkRZBsmZ6jIDVxYPiZfA23tFDClsVw7uHmlP/mhvhEXT9tA2Fvyyh85V e1IJdZ6Ib9CJDgUR36wSPdYsjwbnyIj0EIhBA3zAo6mHklCHVhm7HGUGrtQBWH9V 5Rz60u7+OCpnkCZHMdkUmrX7bhzsi1p9a0Q+OXuxdzsPX4AO78XeDzJE05wiHqFZ nsF6QQ== Received: from mail-pf1-f197.google.com (mail-pf1-f197.google.com [209.85.210.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 46u5ek1n9a-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT) for ; Wed, 28 May 2025 09:21:43 +0000 (GMT) Received: by mail-pf1-f197.google.com with SMTP id d2e1a72fcca58-742d077bdfaso5205222b3a.2 for ; Wed, 28 May 2025 02:21:43 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1748424103; x=1749028903; 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=LdmcYDeR3oxl4uFyKw3pkSyRmu08N2XqrqgvurqEKN0=; b=tHtwg4d7X0yyVR321h4daHuTBL0MtxBD5V3dM6uJeBZTS2yb8temDelFevYxJ9aGrQ mU33uP7cNKkHnhjD95ueLTARHt9/81uJiu+0xfevHMkV8M1+NRP/ZM4zwPpp5m+RYrwA OXpfbgPxKXHb1nmh1gRANRHFR44GzeKsImkuX6TAVwtyi86fr6O+fN3ZOsg86iY7kwjK 0fOB6DoHx/3WKQ5g/lEIJdpNeLK8XEH+C9VeH+dlYSDmYhEcLz4IilSA3UM8WQvHzPfr BmIlKkrtTXOaDe0xSjJjREEb+jUxYYh7tfwszDRPfZc8/nNrO1XFOQURnT+Vmzm0QcEL qjQQ== X-Forwarded-Encrypted: i=1; AJvYcCW9fXl8LTkS2JofN6l13WWuqmsJfuCiMCSfBVn5xVeWcT31CplnMwIw5jYzW5jHlFC9WaCWiibMICZ8C/s=@vger.kernel.org X-Gm-Message-State: AOJu0YznXEklJeJEKRc3d8Z9yzezvvcasLtA7Iaez1lCqVt7cbuQMq2T wnNKgAPwoKktv7Rgc+COiVssfR+2aPUw9c3PTYgc6m8ICaYlvhTG2CpNkn/h/JKn2YrOOnDRgSo WJHKSBvMfhiQXDG+E4mBlUzW6zs3gKA1Lvlxne+pxSFFkxR1Zo2UoWpaBd36Vq6vcpy8= X-Gm-Gg: ASbGncvYSL8lAboagb88EeoQQhMUiu+v5qdwmFOw1UvqhRN1uoKBR/XJwbloLYwUlEw +obHl1tUxz5IcQnJ6rdEUOGrgexb+J0G5l/gZCVCQPsPvR+QsDEWVy+5v0WkJlTwpi/r0UnqjR+ dEHvBP8gJuQSSkLxcapzoFA6TNrcWfxPUhwR6+NwWF56kZbBbR3KiaVwdNygu6RsvkAIZ6LdqYB rbQc1DLNktdKoXTM8jrneNActaIltO/6kH5NpqZcmEq84vpFydJRHPS+KDXa6mxcysB5/1W073h 9fZWqxn5wP+dvqdRZ2/wGC+4zw== X-Received: by 2002:a05:6a00:2e84:b0:730:95a6:3761 with SMTP id d2e1a72fcca58-745fde797f3mr24323795b3a.3.1748424102588; Wed, 28 May 2025 02:21:42 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHOHf36e4dkNlG6DMsyRTtIAf5lz2596DKm1iPCMiu2jr/91WaEtWmAHAW/0U0SViuukeLjeA== X-Received: by 2002:a05:6a00:2e84:b0:730:95a6:3761 with SMTP id d2e1a72fcca58-745fde797f3mr24323768b3a.3.1748424102157; Wed, 28 May 2025 02:21:42 -0700 (PDT) Received: from [10.213.103.17] ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-746e343c2c6sm833456b3a.134.2025.05.28.02.21.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 28 May 2025 02:21:41 -0700 (PDT) From: Maulik Shah Date: Wed, 28 May 2025 14:51:31 +0530 Subject: [PATCH v4 1/3] soc: qcom: qcom_stats: Add support to read DDR statistic 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: <20250528-ddr_stats_-v4-1-b4b7dae072dc@oss.qualcomm.com> References: <20250528-ddr_stats_-v4-0-b4b7dae072dc@oss.qualcomm.com> In-Reply-To: <20250528-ddr_stats_-v4-0-b4b7dae072dc@oss.qualcomm.com> To: Bjorn Andersson , Konrad Dybcio , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Marijn Suijten , Doug Anderson , Maulik Shah X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1748424095; l=5260; i=maulik.shah@oss.qualcomm.com; s=20240109; h=from:subject:message-id; bh=vRR6szynldY94FYUj5qNjs3DmteWmQfiTljj3mxMF78=; b=wyg0HxlBt9+CHjpyV/krOmIWGoJbdWC5A52CQmU5BRZ9BOYY6tmJnIQEUtum6PX7YjgxleFAJ Owu/bpw0QjuBhM/JrDxCEq0uXp0YllZUeVLkZO7lC5jIAP/YeYltPbe X-Developer-Key: i=maulik.shah@oss.qualcomm.com; a=ed25519; pk=bd9h5FIIliUddIk8p3BlQWBlzKEQ/YW5V+fe759hTWQ= X-Authority-Analysis: v=2.4 cv=GIgIEvNK c=1 sm=1 tr=0 ts=6836d5a7 cx=c_pps a=rEQLjTOiSrHUhVqRoksmgQ==:117 a=ZePRamnt/+rB5gQjfz0u9A==:17 a=IkcTkHD0fZMA:10 a=dt9VzEwgFbYA:10 a=EUspDBNiAAAA:8 a=4QwxTSDsR6DxlQvKCcYA:9 a=QEXdDO2ut3YA:10 a=2VI0MkxyNR6bbpdq8BZq:22 X-Proofpoint-ORIG-GUID: vqweQfGI0MVPwoigCQeDguiw4Ge-kQX6 X-Proofpoint-GUID: vqweQfGI0MVPwoigCQeDguiw4Ge-kQX6 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNTI4MDA3OSBTYWx0ZWRfX7ntniwONoP6/ bW7k0WlRIE9HBVmdQsjj3Yho7W2mnZAdkRrkHLuBeQRkyuatnh6/q0bTj8kH5wgZFGfIy0AxNEK /+SJe9PGhIcHchIEzlsnGnHtIx/4MoS0+rS8eK/HlpBmgGW0nmfiQmHu1vbn20zv6F2MnusX4x+ 7zqieQl3jizrqPsou1w49RdsyykvPHnJq10Ny3lp2NQzsoVzxrEoI/AYZLuHBmI5+NWMpcQRbsg uuy3F5TVzo1y7okgC0bi4sUdQZoSXGjCH8IkMKzE+5rVa6hnL2i+Q7/96SKQKxT8gLPIhyaRW9N pOt7Hlq3jfyabPk2K0UZjM5tICKsThDsrmLg1QfT0Bsxy+9xOawhge7WXoqtf0VJZIImif6arUV w4/MTIyPtpaaM/mDojgiLQm2PhlzgWpUZCN5+h/jp7OdP2lygVzsNnAcn0x21vWZYsA4nLyM X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.0.736,FMLib:17.12.80.40 definitions=2025-05-28_04,2025-05-27_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 malwarescore=0 bulkscore=0 clxscore=1015 lowpriorityscore=0 adultscore=0 priorityscore=1501 mlxscore=0 phishscore=0 spamscore=0 suspectscore=0 mlxlogscore=999 classifier=spam authscore=0 authtc=n/a authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2505160000 definitions=main-2505280079 DDR statistic provide different DDR LPM and DDR frequency statistic. Add support to read from MSGRAM and display via debugfs. Signed-off-by: Maulik Shah Reviewed-by: Dmitry Baryshkov Reviewed-by: Konrad Dybcio --- drivers/soc/qcom/qcom_stats.c | 99 +++++++++++++++++++++++++++++++++++++++= ++++ 1 file changed, 99 insertions(+) diff --git a/drivers/soc/qcom/qcom_stats.c b/drivers/soc/qcom/qcom_stats.c index 5de99cf59b9fbe32c0580e371c3cc362dfabb895..33fd2a1574464768bd07289e743= fbb79ba415e84 100644 --- a/drivers/soc/qcom/qcom_stats.c +++ b/drivers/soc/qcom/qcom_stats.c @@ -1,8 +1,10 @@ // SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2011-2021, The Linux Foundation. All rights reserved. + * Copyright (c) 2022-2025, Qualcomm Innovation Center, Inc. All rights re= served. */ =20 +#include #include #include #include @@ -24,6 +26,17 @@ #define ACCUMULATED_OFFSET 0x18 #define CLIENT_VOTES_OFFSET 0x20 =20 +#define DDR_STATS_MAGIC_KEY 0xA1157A75 +#define DDR_STATS_MAX_NUM_MODES 20 +#define DDR_STATS_MAGIC_KEY_ADDR 0x0 +#define DDR_STATS_NUM_MODES_ADDR 0x4 +#define DDR_STATS_ENTRY_START_ADDR 0x8 + +#define DDR_STATS_CP_IDX(data) FIELD_GET(GENMASK(4, 0), data) +#define DDR_STATS_LPM_NAME(data) FIELD_GET(GENMASK(7, 0), data) +#define DDR_STATS_TYPE(data) FIELD_GET(GENMASK(15, 8), data) +#define DDR_STATS_FREQ(data) FIELD_GET(GENMASK(31, 16), data) + struct subsystem_data { const char *name; u32 smem_item; @@ -48,12 +61,19 @@ static const struct subsystem_data subsystems[] =3D { =20 struct stats_config { size_t stats_offset; + size_t ddr_stats_offset; size_t num_records; bool appended_stats_avail; bool dynamic_offset; bool subsystem_stats_in_smem; }; =20 +struct ddr_stats_entry { + u32 name; + u32 count; + u64 duration; +}; + struct stats_data { bool appended_stats_avail; void __iomem *base; @@ -122,8 +142,85 @@ static int qcom_soc_sleep_stats_show(struct seq_file *= s, void *unused) return 0; } =20 +static void qcom_ddr_stats_print(struct seq_file *s, struct ddr_stats_entr= y *data) +{ + u32 cp_idx; + + /* + * DDR statistic have two different types of details encoded. + * (1) DDR LPM Stats + * (2) DDR Frequency Stats + * + * The name field have details like which type of DDR stat (bits 8:15) + * along with other details as explained below + * + * In case of DDR LPM stat, name field will be encoded as, + * Bits - Meaning + * 0:7 - DDR LPM name, can be of 0xd4, 0xd3, 0x11 and 0xd0. + * 8:15 - 0x0 (indicates its a LPM stat) + * 16:31 - Unused + * + * In case of DDR FREQ stats, name field will be encoded as, + * Bits - Meaning + * 0:4 - DDR Clock plan index (CP IDX) + * 5:7 - Unused + * 8:15 - 0x1 (indicates its Freq stat) + * 16:31 - Frequency value in Mhz + */ + switch (DDR_STATS_TYPE(data->name)) { + case 0: + seq_printf(s, "DDR LPM Stat Name:0x%lx\tcount:%u\tDuration (ticks):%llu\= n", + DDR_STATS_LPM_NAME(data->name), data->count, data->duration); + break; + case 1: + if (!data->count || !DDR_STATS_FREQ(data->name)) + return; + + cp_idx =3D DDR_STATS_CP_IDX(data->name); + seq_printf(s, "DDR Freq %luMhz:\tCP IDX:%u\tcount:%u\tDuration (ticks):%= llu\n", + DDR_STATS_FREQ(data->name), cp_idx, data->count, data->duration); + break; + } +} + +static int qcom_ddr_stats_show(struct seq_file *s, void *d) +{ + struct ddr_stats_entry data[DDR_STATS_MAX_NUM_MODES]; + void __iomem *reg =3D (void __iomem *)s->private; + u32 entry_count; + int i; + + entry_count =3D readl_relaxed(reg + DDR_STATS_NUM_MODES_ADDR); + if (entry_count > DDR_STATS_MAX_NUM_MODES) + return -EINVAL; + + reg +=3D DDR_STATS_ENTRY_START_ADDR; + memcpy_fromio(data, reg, sizeof(struct ddr_stats_entry) * entry_count); + + for (i =3D 0; i < entry_count; i++) + qcom_ddr_stats_print(s, &data[i]); + + return 0; +} + DEFINE_SHOW_ATTRIBUTE(qcom_soc_sleep_stats); DEFINE_SHOW_ATTRIBUTE(qcom_subsystem_sleep_stats); +DEFINE_SHOW_ATTRIBUTE(qcom_ddr_stats); + +static void qcom_create_ddr_stat_files(struct dentry *root, void __iomem *= reg, + const struct stats_config *config) +{ + u32 key; + + if (!config->ddr_stats_offset) + return; + + key =3D readl_relaxed(reg + config->ddr_stats_offset + DDR_STATS_MAGIC_KE= Y_ADDR); + if (key =3D=3D DDR_STATS_MAGIC_KEY) + debugfs_create_file("ddr_stats", 0400, root, + (__force void *)reg + config->ddr_stats_offset, + &qcom_ddr_stats_fops); +} =20 static void qcom_create_soc_sleep_stat_files(struct dentry *root, void __i= omem *reg, struct stats_data *d, @@ -212,6 +309,7 @@ static int qcom_stats_probe(struct platform_device *pde= v) =20 qcom_create_subsystem_stat_files(root, config); qcom_create_soc_sleep_stat_files(root, reg, d, config); + qcom_create_ddr_stat_files(root, reg, config); =20 platform_set_drvdata(pdev, root); =20 @@ -254,6 +352,7 @@ static const struct stats_config rpmh_data_sdm845 =3D { =20 static const struct stats_config rpmh_data =3D { .stats_offset =3D 0x48, + .ddr_stats_offset =3D 0xb8, .num_records =3D 3, .appended_stats_avail =3D false, .dynamic_offset =3D false, --=20 2.34.1 From nobody Mon Feb 9 01:18:49 2026 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 822CD277808 for ; Wed, 28 May 2025 09:21:47 +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=1748424108; cv=none; b=U2iFrUI+/xtFdxDj1oJM/EpZx/azi2p3fJjdCubH1UDv1qfK0dwFrpgLT6inrYROmdX5h6xJQ5FMg9cri8Bw/470qyNlaN3uH1gHrntnbMUPcra1D9URmq/avQqHOldvdazbeAnfkfLS7FZvK/OYM/1pjX/+Hl2aBazaY5loLQU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1748424108; c=relaxed/simple; bh=T0qYIbqFmqXVvM8maSPUINWxr6ffxALcDRq37QKDpUE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ub7OBXGM+8qKGP0gU7ZveMMQFe/agI5yhQ1rwUiSXO1DTa4NPzX8yMMNjWlimMWLibduaiXykdrjLfhdqZ6dmTV29AyI/XRtFFX3GU3nhlhix4EEFbNCU9+rc2UCPztDe8/5iHxL2Maq9U3/h8aqb0nNuCH/FDwSnHauno/z5+0= 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=ppHM1wiz; 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="ppHM1wiz" Received: from pps.filterd (m0279864.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 54S0GWhT025125 for ; Wed, 28 May 2025 09:21:47 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= B3e5gD1TIG3daxgo7uyZ1bho3H0+oAlBxtTqaML4VOk=; b=ppHM1wiz35/e14BJ rg3mpo6uNPruYpkZuXVhQaJBJnCYjDujdXVcdwnkVNTlrxIZhV+khD4nW2C0GC+U XNcZq3a4Yp5sa6YMDHBMZ5sYRiDWwTaHNlNn80TerMqxJV6VOE11X27cjJmUa+tu puBCLJ55CesNIHXt51wDVD7ptmfYefM4U8Un3RUrWwKEGDIxbCBz0udzIlNEuRyt VtQn//uo0hn+88IVnuzwrGa158NNxY1LPiymPGvV6T2fkFt0YVogblK0ezeHkqIv GYpE4kqooAve0ufqdsUpKtphzGi56kYZyogZG40qhZ9Pb2KLD4WxUGthNK6GbH95 v6L/Gg== Received: from mail-pf1-f198.google.com (mail-pf1-f198.google.com [209.85.210.198]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 46u79p9ry9-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT) for ; Wed, 28 May 2025 09:21:46 +0000 (GMT) Received: by mail-pf1-f198.google.com with SMTP id d2e1a72fcca58-742c7227d7dso3213288b3a.2 for ; Wed, 28 May 2025 02:21:46 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1748424106; x=1749028906; 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=B3e5gD1TIG3daxgo7uyZ1bho3H0+oAlBxtTqaML4VOk=; b=izYK71Uz+jW0M0j6mu9QAAGQAcjx2Enp3B7+HqspJk4pWsi06+GmebwnqKd/858qET R6Qpfv7JmCABFnqif+gQpA42ninPa1x2hrB/58voGZpYvVfJOPL1zgcApRoUXTaSws/0 r8ZxpycEAe0hZnn2DdKUvCPwS9Y19H8gY+ci2cyi5BmMojsnThcngMPEMxu1wVWL2aho LxVQIknhvcXDzlKY/zk0JrsVhYwZxflcVSWCbcFJ9ZJR4J3Eq9IRjPGxyG6m21oXQdqG CnBfNhgUG5rZ0wMhC9JOFrqJWhfXlOrddKbTd2GKP/Oc7a9wu5ctd8SX0jNx1W61MMg1 qOZQ== X-Forwarded-Encrypted: i=1; AJvYcCVnB8MFPIgg8xTSmiwmVLMRRrDNZgbiEvV8bVNFKWHAXNSS03Dvyxlp8kY7mUZmG3WlOmc/hQ7bxBtnx50=@vger.kernel.org X-Gm-Message-State: AOJu0YzLh002SD0LGank9/x6mJAVeYW5gW4HGCzP9rN6J1UE5L1QD4RB lTmNbINX3Wc6Sx4+a1WZB2BPGUayBSWATqh0G01w/HB7VIBB7php7CnZsBXdu7JrRAlg0Xd5B/E T2ktONvh+1GElPkWDoKVEX0yHEf1PzorJ/MoZ4ie9IFcNy6sWV6wRMwnNZHJj25cw2dk= X-Gm-Gg: ASbGncs8eKY8uKGoB5+Yi/QNrioSaOcbMNJIdOkId8e8sMiqK2KgfL/622cbI8pd+Uw K7Miuuaq47TX4Mw52sIqiHu/kNjM0/cCf8MecTXAQA1FzzJ92A7GvoSHY4dEdz96rTdwEEXj4Ju bn4pXbJqKiTuT3W4oW3AvMp4tAYrtjeKKgmyyQdYo6x561HCNcfxRnb9r7V525qfY9PpT4cBj1u tPfh4ZH73gHZua8wPvhPscgl/3O8NJpJcsT9pyMU6W+YhCTDvQeBJHsND4HWlREVfXvGh75kVCV 621qg8aVLs10NDQn59CNQlWH9A== X-Received: by 2002:a05:6a00:6f1b:b0:746:2706:a7fc with SMTP id d2e1a72fcca58-7462706a9a7mr8987448b3a.12.1748424105955; Wed, 28 May 2025 02:21:45 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHEXmimPDwaXlupcBQXflbX55k4GLlXfzZNdxsktITY1gbSKn/j9w2AKmwk2GPM1FYEG7Z2Mg== X-Received: by 2002:a05:6a00:6f1b:b0:746:2706:a7fc with SMTP id d2e1a72fcca58-7462706a9a7mr8987413b3a.12.1748424105590; Wed, 28 May 2025 02:21:45 -0700 (PDT) Received: from [10.213.103.17] ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-746e343c2c6sm833456b3a.134.2025.05.28.02.21.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 28 May 2025 02:21:45 -0700 (PDT) From: Maulik Shah Date: Wed, 28 May 2025 14:51:32 +0530 Subject: [PATCH v4 2/3] soc: qcom: qcom_stats: Add QMP support for syncing ddr stats 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: <20250528-ddr_stats_-v4-2-b4b7dae072dc@oss.qualcomm.com> References: <20250528-ddr_stats_-v4-0-b4b7dae072dc@oss.qualcomm.com> In-Reply-To: <20250528-ddr_stats_-v4-0-b4b7dae072dc@oss.qualcomm.com> To: Bjorn Andersson , Konrad Dybcio , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Marijn Suijten , Doug Anderson , Maulik Shah X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1748424095; l=2841; i=maulik.shah@oss.qualcomm.com; s=20240109; h=from:subject:message-id; bh=T0qYIbqFmqXVvM8maSPUINWxr6ffxALcDRq37QKDpUE=; b=wVOZUEvKvoGhedr3yzrqmQMTShbymVV7iWXl2rRbQJHFFPz/HBRxb11xzEHex1TYPINp7IN3M v/DY+hZM1ukCSok/O7Tjx+XdERUg2Ap7re/x4rspVYkVCCnQffJH+Oh X-Developer-Key: i=maulik.shah@oss.qualcomm.com; a=ed25519; pk=bd9h5FIIliUddIk8p3BlQWBlzKEQ/YW5V+fe759hTWQ= X-Proofpoint-GUID: uZA3T4dIudFTtEbm1fGYouyEyk-1wyUc X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNTI4MDA4MCBTYWx0ZWRfX/mPLt/WJUul0 4mpOa9Q5/ys26IUCV3V53s54fcI/xyUfGQewHsHMfQTQdTOQfTFv87FIbRcqHLBRgP6u0fO0YEQ B5KAYnG/PtYiGqbgvkx40G8Z7krKtbZtceryp4pdMIrSLBzHLG1rQ+JFaIODlEalm8y7O+0GuI4 ySIFyTYK9O9ye3V9nkiOvZq4twmitW5NBFD9glg4nqjdSt/YAyAnaM6uhmI+Cgzw/nk3JTGDCAA 3HId5w6J0JARFKqh2ow6NByY7eosoSjGOT7sZC3dGRnDCNO3ynXQRH+yyNdM5IJFetzB/yC243f cVWe9drp9fLZ4xFNSMjM1oA8eJfeuXHFA6m++fd1Oanm2nakAVsrmtSMvRCkoUer+Zcyn3U6sn5 CWTqR+Nf0d57yoqJiJ48qLUng2q0hvZawNzCIRTOeio6Q17tR89S1MR21S+sMo6GLly8JIWx X-Authority-Analysis: v=2.4 cv=HNnDFptv c=1 sm=1 tr=0 ts=6836d5aa cx=c_pps a=m5Vt/hrsBiPMCU0y4gIsQw==:117 a=ZePRamnt/+rB5gQjfz0u9A==:17 a=IkcTkHD0fZMA:10 a=dt9VzEwgFbYA:10 a=EUspDBNiAAAA:8 a=BT90xxDHZu-g9S-RVkkA:9 a=QEXdDO2ut3YA:10 a=IoOABgeZipijB_acs4fv:22 X-Proofpoint-ORIG-GUID: uZA3T4dIudFTtEbm1fGYouyEyk-1wyUc X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.0.736,FMLib:17.12.80.40 definitions=2025-05-28_04,2025-05-27_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 suspectscore=0 malwarescore=0 lowpriorityscore=0 adultscore=0 priorityscore=1501 mlxlogscore=999 phishscore=0 mlxscore=0 spamscore=0 bulkscore=0 impostorscore=0 classifier=spam authscore=0 authtc=n/a authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2505160000 definitions=main-2505280080 Recent SoCs (SM8450 onwards) require QMP command to be sent before reading ddr stats. The duration field of ddr stats will get populated only if QMP command is sent. Add support to send ddr stats freqsync QMP command. Signed-off-by: Maulik Shah --- drivers/soc/qcom/qcom_stats.c | 34 +++++++++++++++++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) diff --git a/drivers/soc/qcom/qcom_stats.c b/drivers/soc/qcom/qcom_stats.c index 33fd2a1574464768bd07289e743fbb79ba415e84..0545c8cbefb8f18758d4eb51638= e4ecb94e05422 100644 --- a/drivers/soc/qcom/qcom_stats.c +++ b/drivers/soc/qcom/qcom_stats.c @@ -13,6 +13,7 @@ #include #include =20 +#include #include #include =20 @@ -37,6 +38,8 @@ #define DDR_STATS_TYPE(data) FIELD_GET(GENMASK(15, 8), data) #define DDR_STATS_FREQ(data) FIELD_GET(GENMASK(31, 16), data) =20 +static struct qmp *qcom_stats_qmp; + struct subsystem_data { const char *name; u32 smem_item; @@ -188,12 +191,28 @@ static int qcom_ddr_stats_show(struct seq_file *s, vo= id *d) struct ddr_stats_entry data[DDR_STATS_MAX_NUM_MODES]; void __iomem *reg =3D (void __iomem *)s->private; u32 entry_count; - int i; + int i, ret; =20 entry_count =3D readl_relaxed(reg + DDR_STATS_NUM_MODES_ADDR); if (entry_count > DDR_STATS_MAX_NUM_MODES) return -EINVAL; =20 + if (qcom_stats_qmp) { + /* + * Recent SoCs (SM8450 onwards) do not have duration field + * populated from boot up onwards for both DDR LPM Stats + * and DDR Frequency Stats. + * + * Send QMP message to Always on processor which will + * populate duration field into MSG RAM area. + * + * Sent every time to read latest data. + */ + ret =3D qmp_send(qcom_stats_qmp, "{class: ddr, action: freqsync}"); + if (ret) + return ret; + } + reg +=3D DDR_STATS_ENTRY_START_ADDR; memcpy_fromio(data, reg, sizeof(struct ddr_stats_entry) * entry_count); =20 @@ -304,6 +323,19 @@ static int qcom_stats_probe(struct platform_device *pd= ev) =20 for (i =3D 0; i < config->num_records; i++) d[i].appended_stats_avail =3D config->appended_stats_avail; + /* + * QMP is used for DDR stats syncing to MSG RAM for recent SoCs (SM8450 o= nwards). + * The prior SoCs do not need QMP handle as the required stats are alread= y present + * in MSG RAM, provided the DDR_STATS_MAGIC_KEY matches. + */ + qcom_stats_qmp =3D qmp_get(&pdev->dev); + if (IS_ERR(qcom_stats_qmp)) { + if (PTR_ERR(qcom_stats_qmp) =3D=3D -EPROBE_DEFER) + return -EPROBE_DEFER; + + /* We assume any other error means it's not defined/needed */ + qcom_stats_qmp =3D NULL; + } =20 root =3D debugfs_create_dir("qcom_stats", NULL); =20 --=20 2.34.1 From nobody Mon Feb 9 01:18:49 2026 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 E89BF278771 for ; Wed, 28 May 2025 09:21:52 +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=1748424114; cv=none; b=EzKRxRDI0sVIFqPx51BaOjFKE5C8osyM1doxduFneZolxCPaWGj7D8P3QL5UJme9WWoUTNpjF6BH98r8aQjLt7YnfSnioFVrtEz5k4lCyUNo6nxvN2pLLSZTMKph9JN9gQNb3qM7rwJhngRcBLrIM+btK87fuiwKKFtxSa7mWes= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1748424114; c=relaxed/simple; bh=vNy7Hg/TiGtEZictJW89jX/dHyDjn42M2TrCGJb8CAM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=tB2iMcy8j53y6OBjATwrvlORy9Z95P4zPmkmCU0dxvPALcWBtX1C5bnVeqiv5DHCz9GQ7J4GU6oLyCX77jvKM5WnpW9Ya1LV5sQ/hJgX+RGK81Y0nkdqDICUymFyl5TR21E6FnjPh/g5mZo2+XaCMfa13fi/4y9XoCoSrU54NNE= 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=SLawmlCP; 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="SLawmlCP" Received: from pps.filterd (m0279868.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 54S93rt4023955 for ; Wed, 28 May 2025 09:21:51 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= 5YbBsH4zeCrmK/Ek4rH6YPASrY2/sAhfKu9QU9dC1zs=; b=SLawmlCPUdvWI+tZ o6QRN/0BbsAv6qG8FrX7W881ZHZqUgVvqGH42PiKfYe80K8uOKwW1x8aM6+GdKEx lUOyrzR+47CLTc7PIIPKOGIBa8ut5IACGuvMJ5ZJB6+1QTIkXXTwJB16qb70tw0Q KyqJHvbBfTEXL4uyGaTztlvftb2kZdCrLG2hGax1ezUP0N69JmR04XP9wVrmMeYO R8xtHq6RmLS6PblTJswR59AofWbKM8qtasYsVgZOXikUbuCzYBYmOiPIe/U8UYA0 po9WPfhtHDvfIKVrz2xIH7JXU3dV0J7u8TQ/VsNMLsWXIJxl8mSLmfw0ZQyXLeAK kcXPtQ== Received: from mail-pf1-f199.google.com (mail-pf1-f199.google.com [209.85.210.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 46u5ek1n9y-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT) for ; Wed, 28 May 2025 09:21:50 +0000 (GMT) Received: by mail-pf1-f199.google.com with SMTP id d2e1a72fcca58-73c09e99069so5034278b3a.0 for ; Wed, 28 May 2025 02:21:50 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1748424109; x=1749028909; 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=5YbBsH4zeCrmK/Ek4rH6YPASrY2/sAhfKu9QU9dC1zs=; b=asjVUdu6IU6XPBQEfKbEy7vmadcXk5p7G5Y7X0Lk0Bu/BS95eDzrktgh9UFFD+X3HS H/QH44IwMRoHAdv8OKh7p01HDpwYxH3XvxFC1g5/cScKN50cCq04idVFF+oz1yoOUd4R CxtSMmAGMh6aJVgdgDkQXpV62fDmW0GNiRVE2XxJ7sEyB4Md2GGPFlUbu3E17tVKl/Ah mycXiHSR8gYYuaCVieb5Ir4ZtspQSVkByGYBlIrgpuRcKHHeT/Pq2tLs8+JDQ9bjGb9l OAgAxhQTRcxQZg5KyuJyIzXaxdL2mcz6fJSH9JtqJekDIsFuFTmeYXg+h9Uiw6AduwMf G+kQ== X-Forwarded-Encrypted: i=1; AJvYcCVXb4SzJ5drCBmxZn44xUvHZCPSPKuREknNWRvlG9etrA4KPfK4Q0fgbJmeP6t2A8KjSJwCDfJbOrifxQM=@vger.kernel.org X-Gm-Message-State: AOJu0YyvIMQdjL7JlBMqkf5lhxKw0lR4ux3slVRhO0gaeDR2joWuKyIt 6zQY1AkoGHDLDjTGmwLtOTGbwfGsUflGbiDABf/ROHtgMoEJHqWE4rOne/pdTDLmA1dpnkEw2tS HNHDSnV3OMVm+kVN+mM4SijUO3r8NyIyLnVsY+yl68ZtW4Ac14biCQTwbmgJGoYS/a6M= X-Gm-Gg: ASbGnctypud0j+z0gDTcVoSuUhLMHHDkf4q5Zb1aAFjYLcJZbxaRguNMKRBPdv6UkRH 0EZ3l7RNMezHaOWRoqet51BwBjgCbzFhEYUfXfi08sjuGaVoH7433ILviltpTAFJ5SHm7PryXkm EXa7CU3F2M5pK7Lrb30jGTUTt8mfRN0ujc/kX2chzSFzXzJE8coJbwhcwruOmEM9koK/C46oiM7 n+jDAJruB/muDUqqN70O7mDeimloELkBekHW5feK54k1VFBAspxbf8qPCM3g5STtqkBPGqrAPeF Ah4yDQHmYxXCEAI2WDGDgM9wLw== X-Received: by 2002:a05:6a00:140f:b0:742:da7c:3f30 with SMTP id d2e1a72fcca58-745fe035e87mr23787274b3a.19.1748424109392; Wed, 28 May 2025 02:21:49 -0700 (PDT) X-Google-Smtp-Source: AGHT+IH8F1Leeb8hvqWanbPhFDRIXbSQk+YihOTKHY3m3CJ7M+ZPDA0t/uCx0hLnU+pvOhLg+qqIGg== X-Received: by 2002:a05:6a00:140f:b0:742:da7c:3f30 with SMTP id d2e1a72fcca58-745fe035e87mr23787223b3a.19.1748424108964; Wed, 28 May 2025 02:21:48 -0700 (PDT) Received: from [10.213.103.17] ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-746e343c2c6sm833456b3a.134.2025.05.28.02.21.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 28 May 2025 02:21:48 -0700 (PDT) From: Maulik Shah Date: Wed, 28 May 2025 14:51:33 +0530 Subject: [PATCH v4 3/3] arm64: dts: qcom: Add QMP handle for qcom_stats 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: <20250528-ddr_stats_-v4-3-b4b7dae072dc@oss.qualcomm.com> References: <20250528-ddr_stats_-v4-0-b4b7dae072dc@oss.qualcomm.com> In-Reply-To: <20250528-ddr_stats_-v4-0-b4b7dae072dc@oss.qualcomm.com> To: Bjorn Andersson , Konrad Dybcio , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Marijn Suijten , Doug Anderson , Maulik Shah X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1748424095; l=2423; i=maulik.shah@oss.qualcomm.com; s=20240109; h=from:subject:message-id; bh=vNy7Hg/TiGtEZictJW89jX/dHyDjn42M2TrCGJb8CAM=; b=RVhu3aYygw1jl79Ka7vUZ/MHVDs5AnJ/SXP1NxKfVCri/JIKo0YFwrKfUNK45qGAa8Ez9gbqa 9fhVIsnDbnxDxUyyrlmeXQXK7TH1j97wTIakKGHennXv6lV72Sr1BKb X-Developer-Key: i=maulik.shah@oss.qualcomm.com; a=ed25519; pk=bd9h5FIIliUddIk8p3BlQWBlzKEQ/YW5V+fe759hTWQ= X-Authority-Analysis: v=2.4 cv=GIgIEvNK c=1 sm=1 tr=0 ts=6836d5ae cx=c_pps a=WW5sKcV1LcKqjgzy2JUPuA==:117 a=ZePRamnt/+rB5gQjfz0u9A==:17 a=IkcTkHD0fZMA:10 a=dt9VzEwgFbYA:10 a=EUspDBNiAAAA:8 a=GL-xn7CBy2CN3rfaf34A:9 a=QEXdDO2ut3YA:10 a=OpyuDcXvxspvyRM73sMx:22 X-Proofpoint-ORIG-GUID: -vVi2_56pu9SHoa7lYE5joqtAp_O1-A5 X-Proofpoint-GUID: -vVi2_56pu9SHoa7lYE5joqtAp_O1-A5 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNTI4MDA3OSBTYWx0ZWRfXzShTNKJbTOk/ L8HQ6TeEIaugkP/9dvRnbGy9dTWo4Wt+hXGUFeJXF+8h/oGMCwjAXPg0enZNcEwKNyeI2ZWI30C 73r8cH4pvPtU/nbPvBGPBNunxiprphDAyg4cZuHNY2LlQAzmTH3HNA1vd/BBrLvFver1u5WBemo ckbjNItZJ6zAWZzfEnoP4qtCz99AebH7ZY8o6ucz7rz/yGL7AKJD9zmAKKVlcFtV4gF/1hlcgi9 2bJuheLkvwlawOwm3GZt9AXF4r1TxK9c+QE/I8gQMYD4XCzl78v4eUW5qTJmql/n2ctSjIie+qO uuAZOEd9LnTNqsvCUCm4mI9onlAU2feR+rFvlLXe+JEXT9YwUPfIomBohaz0puxnVerUt1xQBZs UHywitIiKIoYjgiKld2ku2EMFqs7PGmJ1Yz8sypCmUxaf+NepS7Ioa73o0ZV7P84zMTEJGRh X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.0.736,FMLib:17.12.80.40 definitions=2025-05-28_04,2025-05-27_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 malwarescore=0 bulkscore=0 clxscore=1015 lowpriorityscore=0 adultscore=0 priorityscore=1501 mlxscore=0 phishscore=0 spamscore=0 suspectscore=0 mlxlogscore=688 classifier=spam authscore=0 authtc=n/a authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2505160000 definitions=main-2505280079 Add QMP handle which is used to send QMP command to always on processor to populate DDR stats. Add QMP handle for SM8450/SM8550/SM8650/SM8750. Signed-off-by: Maulik Shah Reviewed-by: Dmitry Baryshkov --- arch/arm64/boot/dts/qcom/sm8450.dtsi | 1 + arch/arm64/boot/dts/qcom/sm8550.dtsi | 1 + arch/arm64/boot/dts/qcom/sm8650.dtsi | 1 + arch/arm64/boot/dts/qcom/sm8750.dtsi | 1 + 4 files changed, 4 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/sm8450.dtsi b/arch/arm64/boot/dts/qco= m/sm8450.dtsi index 54c6d0fdb2afa51084c510eddc341d6087189611..33574ad706b915136546c7f92c7= cd0b8a0d62b7e 100644 --- a/arch/arm64/boot/dts/qcom/sm8450.dtsi +++ b/arch/arm64/boot/dts/qcom/sm8450.dtsi @@ -3739,6 +3739,7 @@ aoss_qmp: power-management@c300000 { sram@c3f0000 { compatible =3D "qcom,rpmh-stats"; reg =3D <0 0x0c3f0000 0 0x400>; + qcom,qmp =3D <&aoss_qmp>; }; =20 spmi_bus: spmi@c400000 { diff --git a/arch/arm64/boot/dts/qcom/sm8550.dtsi b/arch/arm64/boot/dts/qco= m/sm8550.dtsi index 82cabf777cd2c1dc87457aeede913873e7322ec2..e8371a90b9b98fbc12a429def8f= 6246c6418540a 100644 --- a/arch/arm64/boot/dts/qcom/sm8550.dtsi +++ b/arch/arm64/boot/dts/qcom/sm8550.dtsi @@ -3943,6 +3943,7 @@ aoss_qmp: power-management@c300000 { sram@c3f0000 { compatible =3D "qcom,rpmh-stats"; reg =3D <0 0x0c3f0000 0 0x400>; + qcom,qmp =3D <&aoss_qmp>; }; =20 spmi_bus: spmi@c400000 { diff --git a/arch/arm64/boot/dts/qcom/sm8650.dtsi b/arch/arm64/boot/dts/qco= m/sm8650.dtsi index c2937f7217943c4ca91a91eadc8259b2d6a01372..875b5a89d2555f258665c881ee3= d96965b6d7a6a 100644 --- a/arch/arm64/boot/dts/qcom/sm8650.dtsi +++ b/arch/arm64/boot/dts/qcom/sm8650.dtsi @@ -5725,6 +5725,7 @@ aoss_qmp: power-management@c300000 { sram@c3f0000 { compatible =3D "qcom,rpmh-stats"; reg =3D <0 0x0c3f0000 0 0x400>; + qcom,qmp =3D <&aoss_qmp>; }; =20 spmi_bus: spmi@c400000 { diff --git a/arch/arm64/boot/dts/qcom/sm8750.dtsi b/arch/arm64/boot/dts/qco= m/sm8750.dtsi index 149d2ed17641a085d510f3a8eab5a96304787f0c..4c54ed84e2d1ec836438448e2a0= 2b6fe028f4c24 100644 --- a/arch/arm64/boot/dts/qcom/sm8750.dtsi +++ b/arch/arm64/boot/dts/qcom/sm8750.dtsi @@ -2490,6 +2490,7 @@ aoss_qmp: power-management@c300000 { sram@c3f0000 { compatible =3D "qcom,rpmh-stats"; reg =3D <0x0 0x0c3f0000 0x0 0x400>; + qcom,qmp =3D <&aoss_qmp>; }; =20 spmi_bus: spmi@c400000 { --=20 2.34.1