From: Elliot Berman <quic_eberman@quicinc.com>
To: Florian Fainelli <florian.fainelli@broadcom.com>
Cc: Sudeep Holla <sudeep.holla@arm.com>,
Bjorn Andersson <andersson@kernel.org>,
Konrad Dybcio <konrad.dybcio@linaro.org>,
"Sebastian Reichel" <sre@kernel.org>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Conor Dooley <conor+dt@kernel.org>, Vinod Koul <vkoul@kernel.org>,
Andy Yan <andy.yan@rock-chips.com>,
"Lorenzo Pieralisi" <lpieralisi@kernel.org>,
Mark Rutland <mark.rutland@arm.com>,
Bartosz Golaszewski <bartosz.golaszewski@linaro.org>,
"Satya Durga Srinivasu Prabhala" <quic_satyap@quicinc.com>,
Melody Olvera <quic_molvera@quicinc.com>,
Shivendra Pratap <quic_spratap@quicinc.com>,
<devicetree@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
<linux-arm-kernel@lists.infradead.org>,
<linux-pm@vger.kernel.org>, <linux-arm-msm@vger.kernel.org>
Subject: Re: [PATCH v2 0/4] Implement vendor resets for PSCI SYSTEM_RESET2
Date: Thu, 18 Apr 2024 10:52:51 -0700 [thread overview]
Message-ID: <20240418104330754-0700.eberman@hu-eberman-lv.qualcomm.com> (raw)
In-Reply-To: <fda6e9f8-5c86-4e8f-a40b-986708e1b03b@broadcom.com>
On Wed, Apr 17, 2024 at 03:01:00PM -0700, Florian Fainelli wrote:
> On 4/17/24 14:54, Elliot Berman wrote:
> > On Tue, Apr 16, 2024 at 10:35:22AM +0100, Sudeep Holla wrote:
> > > On Sun, Apr 14, 2024 at 12:30:23PM -0700, Elliot Berman wrote:
> > > > The PSCI SYSTEM_RESET2 call allows vendor firmware to define additional
> > > > reset types which could be mapped to the reboot argument.
> > > >
> > > > Setting up reboot on Qualcomm devices can be inconsistent from chipset
> > > > to chipset.
> > >
> > > That doesn't sound good. Do you mean PSCI SYSTEM_RESET doesn't work as
> > > expected ? Does it mean it is not conformant to the specification ?
> > >
> >
> > I was motivating the reason for using SYSTEM_RESET2. How to set the PMIC
> > register and IMEM cookie can change between chipsets. Using
> > SYSTEM_RESET2 alows us to abstract how to perform the reset.
> >
> > > > Generally, there is a PMIC register that gets written to
> > > > decide the reboot type. There is also sometimes a cookie that can be
> > > > written to indicate that the bootloader should behave differently than a
> > > > regular boot. These knobs evolve over product generations and require
> > > > more drivers. Qualcomm firmwares are beginning to expose vendor
> > > > SYSTEM_RESET2 types to simplify driver requirements from Linux.
> > > >
> > >
> > > Why can't this be fully userspace driven ? What is the need to keep the
> > > cookie in the DT ?
> >
> > As Dmitry pointed out, this information isn't discoverable. I suppose
> > we could technically use bootconfig or kernel command-line to convey the
> > map although I think devicetree is the right spot for this mapping.
> >
> > - Other vendor-specific bits for PSCI are described in the devicetree.
> > One example is the suspend param (e.g. the StateID) for cpu idle
> > states.
> > - Describing firmware bits in the DT isn't unprecedented, and putting
> > this information outside the DT means that other OSes (besides Linux)
> > need their own way to convey this information.
> > - PSCI would be the odd one out that reboot mode map is not described in
> > DT. Other reboot-mode drivers specify the mapping in the DT. Userspace
> > that runs with firmware that support vendor reset2 need to make sure
> > they can configure the mapping early enough.
>
> FWIW, I read Sudeep's response as being specifically inquiring about the
> 'cookie' parameter, do you see a need for that to be in described in the DT
> or could that just be an user-space parameter that is conveyed through the
> reboot system call?
Ah, I had thought the ask was for the reboot type as well as the cookie.
We don't do this for hardware-based reboot mode cookies and I didn't see
why we should ask userspace to do something different for PSCI.
It seems to me that SYSTEM_RESET2 fits nicely with the existing design
for reboot-mode bindings.
next prev parent reply other threads:[~2024-04-18 17:53 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-04-14 19:30 [PATCH v2 0/4] Implement vendor resets for PSCI SYSTEM_RESET2 Elliot Berman
2024-04-14 19:30 ` [PATCH v2 1/4] dt-bindings: power: reset: Convert mode-.* properties to array Elliot Berman
2024-04-20 0:50 ` Krzysztof Kozlowski
2024-04-14 19:30 ` [PATCH v2 2/4] dt-bindings: arm: Document reboot mode magic Elliot Berman
2024-04-15 19:34 ` Konrad Dybcio
2024-04-16 9:30 ` Sudeep Holla
2024-04-16 12:32 ` Dmitry Baryshkov
2024-04-14 19:30 ` [PATCH v2 3/4] firmware: psci: Read and use vendor reset types Elliot Berman
2024-04-15 19:39 ` Konrad Dybcio
2024-04-14 19:30 ` [PATCH v2 4/4] arm64: dts: qcom: Add PSCI SYSTEM_RESET2 types for qcm6490-idp Elliot Berman
2024-04-14 23:13 ` Dmitry Baryshkov
2024-04-15 0:32 ` Elliot Berman
2024-04-15 19:42 ` Konrad Dybcio
2024-04-16 1:11 ` Elliot Berman
2024-04-16 9:35 ` [PATCH v2 0/4] Implement vendor resets for PSCI SYSTEM_RESET2 Sudeep Holla
2024-04-17 17:50 ` Florian Fainelli
2024-04-19 12:38 ` Sudeep Holla
2024-05-02 2:21 ` Elliot Berman
2024-04-17 21:54 ` Elliot Berman
2024-04-17 22:01 ` Florian Fainelli
2024-04-18 17:52 ` Elliot Berman [this message]
2024-04-19 8:53 ` Sudeep Holla
2024-04-19 23:31 ` Elliot Berman
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240418104330754-0700.eberman@hu-eberman-lv.qualcomm.com \
--to=quic_eberman@quicinc.com \
--cc=andersson@kernel.org \
--cc=andy.yan@rock-chips.com \
--cc=bartosz.golaszewski@linaro.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=florian.fainelli@broadcom.com \
--cc=konrad.dybcio@linaro.org \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=lpieralisi@kernel.org \
--cc=mark.rutland@arm.com \
--cc=quic_molvera@quicinc.com \
--cc=quic_satyap@quicinc.com \
--cc=quic_spratap@quicinc.com \
--cc=robh@kernel.org \
--cc=sre@kernel.org \
--cc=sudeep.holla@arm.com \
--cc=vkoul@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox