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 5CBA83A543A for ; Wed, 1 Jul 2026 12:57:03 +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=1782910624; cv=none; b=gCHTbAX9zQzTkHceyvJHR92UIjS3zV5a0HT26hTBsa4mRfOnL/Ibqur88SU8azBJ7UigTqpogmHBRI3fSf9tAKlg8ApNkyToS4hXDUQaRpZkCSYtqY0aVujc09OYiBNDuSDuu6Vqtx+6Z83KweEJJeGV8k8wTVpO80fLdrqa0pk= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782910624; c=relaxed/simple; bh=hdIYYpVLSeX7+svp6SZ8DMOKqflnF52FNs8KE0Y2J3g=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=nVsBaIwPZgwP6fiZtHRwBEVUhlii5TMwOgDqQUca8JIyn4X55cU4R8BQtG/cNkl5xa/t991PEX8N2uuJv4CaHTlgYRHso/PEQNiEm1E0xRk/3MeqD/QH7RFtxWPsOqxrEkwAI55dLkSrGmo3G/O7wSm9HgkIZfCCHv3Yt3/i4Vg= 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=c/U6gq8j; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=Jdy0OADN; 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="c/U6gq8j"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="Jdy0OADN" 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 661A91Bo755636 for ; Wed, 1 Jul 2026 12:57:02 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= /OJQwxG66eoPwHB57XhMgHYByUU3ZhNy+b3VmI0FVH8=; b=c/U6gq8jxAU41MoF i+4cbo86vaXqtO4VTz1j3LuCB1CaF6b8u11rAv0ejfm3CEcoG8oiF82NruPVi8Fq DIAQVh9FDqSM/DXuXfvxSEIKEzBYwKNfF9YINoyW66dMhaLi8VNOoKztK6UzEnvz RG/rxG21Zp9tlw3AHieAXbz19X64XeICHg+x/kSZQRD6WqGVNN4iF9yYEYJ+dGMU 1FAFiUclAOUWXcmCfND52cyM6QbcStUzYXljIUHAAhZq8mSTOVUP39H/9w/DSu3P sX0Z+FM9R8B9S58/0QMBRcZYqouLTAqpN0/Dh79vg3SOXeE7JPK8c1WULwcHdsY0 u8U/+w== Received: from mail-pj1-f71.google.com (mail-pj1-f71.google.com [209.85.216.71]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4f50sqrqmd-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 01 Jul 2026 12:57:02 +0000 (GMT) Received: by mail-pj1-f71.google.com with SMTP id 98e67ed59e1d1-37fbdbc4d03so825908a91.1 for ; Wed, 01 Jul 2026 05:57:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1782910621; x=1783515421; 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=/OJQwxG66eoPwHB57XhMgHYByUU3ZhNy+b3VmI0FVH8=; b=Jdy0OADN9DhK6uLgBXpdb2REgTDYx2HIauqRqbHUcWTpjvox05FxU1vwE5Qa2xPqXa vvEeIgt+wA8uFJ08gUjoVUvG5o5fOYVTmX/5HVur83MxC9Y4BpvoNTaRZQwnRUmJ7wdT KRhchg6gIoThwk8SrlJikb6Vxk4ufLoF2FlBJCrHuV/ZkIQ3fCM9gFBKJh/rx9EWBbjV bASDzfHXDxmnMNy1jss4hW8XxHV9fhB8bCcG8kXOAawPZ6ldX2tZAdOus6bnJye8ApA6 n67THh7Jl78XFBCySg66OsoNeevCiLIjdt1/U88NkEF4NPChofbfWSWGwBBqELAGskIo NUXQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1782910621; x=1783515421; 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=/OJQwxG66eoPwHB57XhMgHYByUU3ZhNy+b3VmI0FVH8=; b=S6H3ZJH2bDpOLhussDJw+J3PKm4xdA9WGr+q0v2ZITqfdGZlVB0yiiXCigBM2q5wDU rFp46Me5wQsOJH7BghaoK2qKm+1EO5HG2zmEFvcg4mBDPNMcVPDPoClu8HGu6+ISDFEA z1LFd/mJArV8nZ6tnCF8KzVRzLWWawAZ5NgEcxnpBl/+OMxErjl0QaM/a8YW2chEkuR9 P7KeCf9ZNF7VCTuYEHAKsq0kTTXMLAnB1OBDfxhbBiikroIsVERXnb8x0B2y07oF4fgv JLdwGz+HPPkGD3BtWxTnrcOdfrDk7AXV01qbJ0fwqbrErIHaNdNCaZDbEcu40i+4tJno zb/w== X-Forwarded-Encrypted: i=1; AHgh+RrZUj0UfZK5ABtxF1MzdTa/Evq6prTZ5er28cy1UJhAwScVuxDZ61iN64YX+NkPPM+YOGDyMJPToa53VF4=@vger.kernel.org X-Gm-Message-State: AOJu0Ywot97G0T4GRwfreNPxRTGxkIeAnEW/GJR7rB/h0BbjADgOKP8/ 4IHiEY2EYJXYUug4E8Zc/p0NobMxbfJKghc6mt7mkrH7pOKdZRGhI2Lnx4crxbQ+jHzKl7DfWwi P7wMxNN1n35YCuPrMh4smt0PW2DHjd0FPT4CyZCVg5Zj/bYreV/sUBmPabw36XFE5og== X-Gm-Gg: AfdE7cn06AYLwm4DZZ1Fc70MF1U/Z59A7PvFFgZk9LyM/UaagEkxfjDVM+vybTPv40c JUUE5W+Qpu11vAroCIDzx8nkcoMhC3QlAwrs812laeHuIaecCi/5HuW5Vu89kTvfLER54sojiha oTxafAKDoXsdFubCuRcmHL2Nm03zmgQ7u01qUtWdgQNSNZTejFrZzy8uJBo/NDG4rN0kfNA8ANe VXMoJBUSpYbv7WYIWCU6R5Wn68C8wV+YqrGOcCFusVKCXVIoyqaFdvo/KB0rZJOfR2Wgt1sC77h JswLZiY4201i1eQQbYu46IBmTkPaV1i/V5nMo5dr4b4EDnbDvQwuVKSmZiqKKEWkn5heaAN3lIs ujvBuazgfuswck3WsDF6hjogMQj3iYythf0ChjXr4 X-Received: by 2002:a17:90b:520d:b0:37e:cb9:fd7d with SMTP id 98e67ed59e1d1-3806a04dc16mr5209495a91.17.1782910621054; Wed, 01 Jul 2026 05:57:01 -0700 (PDT) X-Received: by 2002:a17:90b:520d:b0:37e:cb9:fd7d with SMTP id 98e67ed59e1d1-3806a04dc16mr5209457a91.17.1782910620416; Wed, 01 Jul 2026 05:57:00 -0700 (PDT) Received: from [172.20.10.3] ([106.195.73.56]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-38095d4c263sm1876770a91.3.2026.07.01.05.56.51 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 01 Jul 2026 05:56:59 -0700 (PDT) Message-ID: <4b5321e8-05c8-4f3f-bc22-d3776e008151@oss.qualcomm.com> Date: Wed, 1 Jul 2026 18:26:37 +0530 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 v11 0/7] Introduction of PSCR Framework and Related Components To: Oleksij Rempel Cc: Sebastian Reichel , Srinivas Kandagatla , Benson Leung , Tzung-Bi Shih , Daniel Lezcano , kernel@pengutronix.de, linux-kernel@vger.kernel.org, Liam Girdwood , Mark Brown , "Rafael J. Wysocki" , Zhang Rui , Lukasz Luba , linux-pm@vger.kernel.org, =?UTF-8?Q?S=C3=B8ren_Andersen?= , Guenter Roeck , Matti Vaittinen , Ahmad Fatoum , Andrew Morton , chrome-platform@lists.linux.dev, avaneesh.dwivedi@oss.qualcomm.com, umang.chheda@oss.qualcomm.com, faiyaz.mohammed@oss.qualcomm.com References: <20250618120255.3141862-1-o.rempel@pengutronix.de> <3309e88e-e189-42ea-b74e-346aec1b4b5f@oss.qualcomm.com> <729b0e26-bdbc-42f9-8245-79b2942272c2@oss.qualcomm.com> Content-Language: en-US From: Faruque Ansari In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Proofpoint-GUID: 7hMO4alhFqQql8797anUVtEmcuFZrpGA X-Proofpoint-Spam-Info: AW1haW4tMjYwNzAxMDEzNSBTYWx0ZWRfX3jisW2g/iccJ SuM9be+3bR8ACI5TPkK9D//39LwvFjPbYBlLyweXkxOdL17eCMMZU1VvizV9kK0qo3QuT0A9y6U PmKtKWecO+J1M3T7FK7cywdLLxv/Dac= X-Proofpoint-ORIG-GUID: 7hMO4alhFqQql8797anUVtEmcuFZrpGA X-Authority-Analysis: v=2.4 cv=ceHiaHDM c=1 sm=1 tr=0 ts=6a450e9e cx=c_pps a=UNFcQwm+pnOIJct1K4W+Mw==:117 a=1uYXuS+mtKqEVW6EmjfGNQ==:17 a=IkcTkHD0fZMA:10 a=RAioF0-LDSMA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=_glEPmIy2e8OvE2BGh3C:22 a=fA3yq6K1D-CQ7x3jqe0A:9 a=QEXdDO2ut3YA:10 a=uKXjsCUrEbL0IQVhDsJ9:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNzAxMDEzNSBTYWx0ZWRfXy2tiaDaUxdtV 2t+tl862hTjIadEX8KTvxdDwPqT1xv+ybBO0K9ihOBnKFa7nJ38cs1eEMQvK1QlPEZH5JXR+elz YDK6bXVAZA5NjJ35r3PflFXZYpxa2xf1O0G0bxuxuxH2IKiXykhNgoEh2DGZy7LyHPyB7/U204c PydikiNveJyeQ3ArGscR7IsUs0l0fr3I4MiNOWsQbU1Y8g9LrRxdEl1pxHRvUg3uS6XG8XPTiXe L43GwIaGttITSsT9DU+RcQNA5oE+zsexInGrnaGSFFrJCwyk+gbuHwCQ9ujzGDC+W6tjSWfgN51 qBPDFs/jKcdxiNiYcHVfTdhI/UT5fiwk1ibktutBxqHfqlBPJ/w85zR763Nx4JyqnuFcEUXNo67 4+4h+p9vgaVM0Ij+vaYh6MTDRsUhBlXgX69ZQGyrmP7TRDPWTlmDKucP2wiGn6qYh9pVhJgsg9V SAJEpI/Wksnalxz5A4Q== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.125,FMLib:17.12.100.49 definitions=2026-07-01_03,2026-06-26_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 adultscore=0 clxscore=1015 suspectscore=0 spamscore=0 malwarescore=0 priorityscore=1501 bulkscore=0 lowpriorityscore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2607010135 Hi Oleksij, On 29-Jun-26 5:11 PM, Oleksij Rempel wrote: > Hi Faruque, > > On Mon, Jun 29, 2026 at 04:44:18PM +0530, Faruque Ansari wrote: >> On 29-Jun-26 4:40 PM, Faruque Ansari wrote: >>> Hi Oleksij, >>> >>>> >>>> Hello all, >>>> >>>> This patch series introduces the Power State Change Reasons Recording >>>> (PSCRR) framework and its related components into the kernel. The PSCR >>>> framework is designed for systems where traditional methods of storing >>>> power state change reasons, like PMICs or watchdogs, are inadequate. It >>>> provides a structured way to store reasons for system shutdowns and >>>> reboots, such as under-voltage or software-triggered events, in >>>> non-volatile hardware storage. >>>> >>>> These changes are critical for systems requiring detailed postmortem >>>> analysis and where immediate power-down scenarios limit traditional >>>> storage options. The framework also assists bootloaders and early-stage >>>> system components in making informed recovery decisions. >>>> >>>> >>> >>> Just wanted to understand rational behind creating this new framework >>> (PSCRR) for >>> reboot reason recording and not considering extending the existing >>> nvmem-reboot >>> framework ? As, this framework already provides a way to represent nvmem >>> cell in >>> the DT and the driver as well can discover it. Would it be correct if >>> nvmem-reboot >>> driver itself is extended with the features which this framework provides ? >>> >>> or was there any other reason you decided to create a new framework ? > > There are two main reasons: > - nvmem-reboot - Tells the reboot target - What should system do after > reboot. This frameworks is collecting information - why we > rebooted/booted in the first place. > - System may have more then one recorder or source of information. Non > of it provides full picture. This framework should provide easier > access to different providers. For example: > - SoC tells PoR > - PMIC tells PoR > - Watchdog tells nothing > - nvmem storage - tells under-voltage. > > All of them provide own opinion on what is happened. Evaluation or > prioritisation should not be done in the kernel > > So far i struggled with DT, but may be i need to put it to the side for > now to go forward? > > Best Regards, > Oleksij Thank You for sharing your rational behind and idea behind this framework ! IMO it would be better to have a single framework to represent all the reboot reasons of a system and not just the reboot reasons caused because of errors Ex capturing reboot reasons like ota, bootloader,recovery etc ... currently nvmem reboot driver does not expose a sysfs/ABI which user app can use to infer reboot reason ... Also, it would be extend this framework to also support firmware triggered reboot reasons ... Do you have any plan to extend this framework to support userspace triggered reboot reasons as well like bootloader, recovery, ota etc ? And also extend the framework to support vendor specific reboot reasons which can be triggered by firmware ? We can co-work to extend this framework ? On representating nvmem cell to the framework - if not DT what is your plan to represent it ? How would framework discover the nvmem cell if its not DT based ? Thanks, Faruque Ansari