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 4BE27332ED8 for ; Thu, 18 Dec 2025 12:50:56 +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=1766062257; cv=none; b=LSVO4BevoyG/7SnEogUqvVdIZVbNMhs6RilYwLLcO7uK7Yjx7NuV3YPEuJhrZ/j85XQsi7gGUNeWfZ8RWXuHOgW4BEbwpQYJ4SxwXlwuMJfR9WfgviV6FMxjwynu1v8godscicovQMtLr0a+ot7y+H+vtpHhkA4hV+xBIZM36nM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1766062257; c=relaxed/simple; bh=nT+Z7K+xYvhfifW176JW2A8cpszMgLrT/52hysFTbbQ=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=Kf2E7PM+c45d60agDqT8XS8BxyQLgAJOWSyYqa8oh7KXUH91j1+rfBatsdWEWGUyuYiakhbc0MDiqIwBnMnetzjz6UQcnpFBxmgHLXru7M137Y1jokunm1J6TzjOHwNA+2HINNgc0Pd1ulJKwkIJlm4B/S/hEtWYgJeVe6kENDE= 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=b3dPfteg; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=B/fWGuML; 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="b3dPfteg"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="B/fWGuML" Received: from pps.filterd (m0279869.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5BI9F2oW813750 for ; Thu, 18 Dec 2025 12:50:55 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= dxkXtNOmEaF10A58PDTRV1K7kEcPFxGfhnkXO2omHZI=; b=b3dPfteggkFQyvI0 XJUB4WFLJvYIfaXSTEPQvaN0mVZFHBtBtC4olV/LUagDqWEHEGi2qX3Y4LxafbsD PLWdFRv1r0ukWs1motptem1WoB++g8Me/MrOCQ+dkdgsYQTWZcFk50IdIjK5sSQw CIJvbH9csFyWnm70QdVck2bzwnhNVWbV0e1yexD2fKTQwhyn7hmS1+vlgYR2S90U QEzD3Bqc0esJ3N54ULOkoL8YsaLjd/aKE8YVRIpklMXFJyyAWoig/T9O9rKjRtjy hmDlvs9z7dYJmOHPS6TWdCa6HV98xT8SJwRzb+aSlK96e2PCyb1VtAAQ0EWAETCe k1K9ZQ== Received: from mail-qt1-f199.google.com (mail-qt1-f199.google.com [209.85.160.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4b40v7b2w3-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 18 Dec 2025 12:50:54 +0000 (GMT) Received: by mail-qt1-f199.google.com with SMTP id d75a77b69052e-4ee23b6b6fdso1523531cf.0 for ; Thu, 18 Dec 2025 04:50:54 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1766062254; x=1766667054; darn=vger.kernel.org; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=dxkXtNOmEaF10A58PDTRV1K7kEcPFxGfhnkXO2omHZI=; b=B/fWGuMLKSAUvU0M3mFMZcIDGTrMdVdOj+k/D5tpwl56L+6BuDAbtDPZ+C4dlbz9SG mXZRI+s3akYuRF00fMRtm/NgZCy84cXNqKFqpBdzq/GJantZePnGIEtc2IoYWc+C+JEE Xho0BsIxTejaXczQ1U+nDkxjLZ5ie7diaiBZ8n+H+Ow8fy3L1HKeocKKdcKXcx5xrHlh BxnOYas/c7Eu3lYagFTL8BBml3AmJoxycOEXiWK5iENCQonvDcQdLPs/Wm5CN+ygUMA8 3b4zqjOubcqnn5CQOZNMKl0/fcls254N/NAfcNAZRljX0WE0luDxWPuyPkeSnYhFhifG xJVQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1766062254; x=1766667054; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=dxkXtNOmEaF10A58PDTRV1K7kEcPFxGfhnkXO2omHZI=; b=kQ7K838ntLgd2AEaKaG1LQnICCv9mV8AvYtY/e6dDLu+vOUOE1+MASTrZczkJ7WgmF CtrKNgPT9c5NGQI//1dHUqudNwAt5R6WjTgJzkqhHYWQH5FkF/mtpZaxVzOruF7w7C6g zPGKx6f2/AmQ6vkHJMMprvvBOh9HwuQgNav/LUlfowr0RdyfNAUWhC8o6duRHXDLeYte U8srg/dKjE4oa+myMMmwpwc1TMGopUXYaFeoN9cpBZY5+6gEStfw0GvyJJY8UwBpgoxT n2N8EFeBOkMsrvPyoz92L7gYTJQs8RgAhptmsoFC72uR9/wJucjWoSvLuKYoj+IsBJiw U1VQ== X-Forwarded-Encrypted: i=1; AJvYcCX5jLZzIqy33Q0XSq5W/RwRDimMyF/5NWdemc86p0sk+JuNxTy+OIqXIQolO5QOoLiSVAtVRNEBzPVCB+w=@vger.kernel.org X-Gm-Message-State: AOJu0Yzh3xhnm4RguAN/Ag+8fk8ZlsYyd946xoZs3S2n78hoA+OPLV8z AyiEIkYfDQo1TtNDTisqsGuFVB729h26jb8LRkxDdD6Ts8Tdip2qrr/bHqI9vBHznmjtdxN9Zge vVamkinMbWGdzblufDOg/3c9WckBmZa0fLoFi85RuhBt7tkTvR/xuM1oTcKauFYbR3ZQ= X-Gm-Gg: AY/fxX6rG6mL2cp+dRE8Fa9vTYzRMzl0gAn4nw/jLAZEZR6/k8nMPLeibRcqGpV7XiC 0YEGitIdABDOB5N8jynQBlGmqI+QUysewxVxTPOOG2FYDKU7SYbJMF33xl0V9Mf/aMitFvMm6l/ StN1vzo6Z5xjw5cqUS63NiVC0Tc7IlABkgTqsmj6XJekv8hluosqFvwVyQiPQl+Ku4O8uG2SDaX NjZYE5TYRByUPe7x8Be8N/LDQwvs7t4t+BOubOu9uyHnTC/k7b9s4Nun4vuEgMOl3nYORut2xBM hx9WUflERAcMC0Ua/ajb6q53PI1EZyJgmMCrAz5nu64xhA96u2XfGxfWhEstVhEmFvimlI/inFL q6hN2GNKz2y2Bt93CwPxdHurfdn6jnHc52qTykrQwvMHC2B2ThqWbJ/f0m/X/HcV8tQ== X-Received: by 2002:ac8:5d07:0:b0:4e8:a54d:cce8 with SMTP id d75a77b69052e-4f3610c2804mr19287881cf.4.1766062254367; Thu, 18 Dec 2025 04:50:54 -0800 (PST) X-Google-Smtp-Source: AGHT+IHIBlnd/lTcRpYprJ8AJw7wzy1oqdKWQddPjpuPPmYIIcfoSF0jBkR278anslispESju96ulw== X-Received: by 2002:ac8:5d07:0:b0:4e8:a54d:cce8 with SMTP id d75a77b69052e-4f3610c2804mr19287681cf.4.1766062253969; Thu, 18 Dec 2025 04:50:53 -0800 (PST) Received: from [192.168.119.72] (078088045245.garwolin.vectranet.pl. [78.88.45.245]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b8022f94036sm222752166b.5.2025.12.18.04.50.52 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 18 Dec 2025 04:50:53 -0800 (PST) Message-ID: <1e7594dc-dca6-42e7-b478-b063e3325aff@oss.qualcomm.com> Date: Thu, 18 Dec 2025 13:50:51 +0100 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v2 2/4] soc: qcom: rpmh: Add support to read back resource settings To: "Maulik Shah (mkshah)" , Kamal Wadhwa , Bjorn Andersson , Konrad Dybcio , Liam Girdwood , Mark Brown Cc: linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org References: <20251022-add-rpmh-read-support-v2-0-5c7a8e4df601@oss.qualcomm.com> <20251022-add-rpmh-read-support-v2-2-5c7a8e4df601@oss.qualcomm.com> <9e8b47d8-9a20-40da-a6eb-cdd167c108dd@oss.qualcomm.com> <5029600e-a3b8-4aec-a374-526fb3f6417e@oss.qualcomm.com> <8580c092-3e1f-4b53-8330-ac1746b7a126@oss.qualcomm.com> Content-Language: en-US From: Konrad Dybcio In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Proofpoint-ORIG-GUID: Du5S-2BZ6afN1asUOQuhs3PHNSbLC3rB X-Proofpoint-GUID: Du5S-2BZ6afN1asUOQuhs3PHNSbLC3rB X-Authority-Analysis: v=2.4 cv=f8JFxeyM c=1 sm=1 tr=0 ts=6943f8af cx=c_pps a=WeENfcodrlLV9YRTxbY/uA==:117 a=FpWmc02/iXfjRdCD7H54yg==:17 a=IkcTkHD0fZMA:10 a=wP3pNCr1ah4A:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=VwQbUJbxAAAA:8 a=EUspDBNiAAAA:8 a=92XHK9IGOTDTESaaxPUA:9 a=QEXdDO2ut3YA:10 a=kacYvNCVWA4VmyqE58fU:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjE4MDEwNiBTYWx0ZWRfXxk9jDd/MNGyw AgyoFqeU/S2QqHOFtx0u/V/G5DSIgjPRan1FGgKdPB9qUuAnnQ8ieik84CvH4CxvRC5whTiVfQs xJhmIJ4INT++YebJKeR5HjYbr96a2da2HBk5Ta/4KCTbSmLqYKs3gwfNaIzMkBx+kqAMRbx+VDK MI5E+TpUHS5BnE4vQuVvk00Diw0FL2kX2RSFmeSNJtsS3TvBQ5FGd99geL5DtzFEsq5AJgE0sdW 2I0jPvohcbhhPjZ52XNC12htXPL627J/R3dDGNBZFXuvu3qRepVP8U59tnCC6q6BooKDKMRjfCg NOV4N3b5mARzYZPw5mTlIPj7a5JFp8OImUT7Sj+mAnCsdxqZqpZWKgdt1SDGvLlBkO5vTaM/kIs SODv1tUFSj1zCGVS7CB66zbpUJx3Zw== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-12-18_01,2025-12-17_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 lowpriorityscore=0 adultscore=0 clxscore=1015 suspectscore=0 phishscore=0 impostorscore=0 bulkscore=0 malwarescore=0 priorityscore=1501 spamscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510240001 definitions=main-2512180106 On 11/21/25 9:41 AM, Maulik Shah (mkshah) wrote: > > > On 11/17/2025 6:04 PM, Konrad Dybcio wrote: >> On 11/17/25 9:26 AM, Maulik Shah (mkshah) wrote: >>> >>> >>> On 11/12/2025 4:56 PM, Konrad Dybcio wrote: >>>> On 10/21/25 11:08 PM, Kamal Wadhwa wrote: >>>>> From: Maulik Shah >>>>> >>>>> All rpmh_*() APIs so far have supported placing votes for various >>>>> resource settings but the H/W also have option to read resource >>>>> settings. >>>>> >>>>> This change adds a new rpmh_read() API to allow clients >>>>> to read back resource setting from H/W. This will be useful for >>>>> clients like regulators, which currently don't have a way to know >>>>> the settings applied during bootloader stage. >>>>> >>>>> Link: https://lore.kernel.org/r/20250623-add-rpmh-read-support-v1-1-ae583d260195@oss.qualcomm.com >>>>> Signed-off-by: Maulik Shah >>>>> Signed-off-by: Kamal Wadhwa >>>>> --- >>>> >>>> [...] >>>> >>>>> +int rpmh_read(const struct device *dev, struct tcs_cmd *cmd) >>>>> +{ >>>>> + DECLARE_COMPLETION_ONSTACK(compl); >>>>> + DEFINE_RPMH_MSG_ONSTACK(dev, RPMH_ACTIVE_ONLY_STATE, &compl, rpm_msg); >>>>> + int ret; >>>>> + >>>>> + ret = __fill_rpmh_msg(&rpm_msg, RPMH_ACTIVE_ONLY_STATE, cmd, 1, true); >>>>> + if (ret) >>>>> + return ret; >>>>> + >>>>> + ret = __rpmh_write(dev, RPMH_ACTIVE_ONLY_STATE, &rpm_msg); >>>> >>>> Is there a reason for making this ACTIVE_ONLY? >>> >>> Yes, using ACTIVE_ONLY makes the read request place immediately to read back the current resource setting. >>> Sleep/Wake are H/W based trigger and are not applicable for this API. >> >> Huh? So if I send a read request with e.g. SLEEP_STATE, it would only >> get fulfilled upon an active->sleep transition? >> > > Read requests will get fulfilled immediately with the return of the current resource setting, > there is no separate active/sleep/wake vote values that can be read, put it other way the > rpmh_read() API do not take any "enum rpmh_state state" argument like various rpmh_write_*() APIs. I see, thanks Konrad