From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
To: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>,
"Wenbin Yao (Consultant)" <quic_wenbyao@quicinc.com>
Cc: vkoul@kernel.org, kishon@kernel.org, p.zabel@pengutronix.de,
abel.vesa@linaro.org, quic_qianyu@quicinc.com,
neil.armstrong@linaro.org, manivannan.sadhasivam@linaro.org,
quic_devipriy@quicinc.com, linux-arm-msm@vger.kernel.org,
linux-phy@lists.infradead.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2 2/2] phy: qcom: qmp-pcie: Add PHY register retention support
Date: Wed, 12 Feb 2025 15:55:43 +0100 [thread overview]
Message-ID: <f7a220d5-6866-4770-93a0-66e6d7b49491@oss.qualcomm.com> (raw)
In-Reply-To: <fwfxhy535nm7227wzlwlojxyxrr3ond5hmc3njqbcje3usfh5t@hqrnbpmdqweg>
On 12.02.2025 12:07 PM, Dmitry Baryshkov wrote:
> On Wed, Feb 12, 2025 at 04:31:21PM +0800, Wenbin Yao (Consultant) wrote:
>> On 2/12/2025 8:13 AM, Dmitry Baryshkov wrote:
>>> On Tue, Feb 11, 2025 at 05:42:31PM +0800, Wenbin Yao wrote:
>>>> From: Qiang Yu <quic_qianyu@quicinc.com>
>>>>
>>>> Some QCOM PCIe PHYs support no_csr reset. Unlike BCR reset which resets the
>>>> whole PHY (hardware and register), no_csr reset only resets PHY hardware
>>>> but retains register values, which means PHY setting can be skipped during
>>>> PHY init if PCIe link is enabled in booltloader and only no_csr is toggled
>>>> after that.
>>>>
>>>> Hence, determine whether the PHY has been enabled in bootloader by
>>>> verifying QPHY_START_CTRL register. If it's programmed and no_csr reset is
>>>> available, skip BCR reset and PHY register setting to establish the PCIe
>>>> link with bootloader - programmed PHY settings.
>>>>
>>>> Signed-off-by: Qiang Yu <quic_qianyu@quicinc.com>
>>>> Signed-off-by: Wenbin Yao <quic_wenbyao@quicinc.com>
>>>> ---
>>>> drivers/phy/qualcomm/phy-qcom-qmp-pcie.c | 91 +++++++++++++++---------
>>>> 1 file changed, 58 insertions(+), 33 deletions(-)
>>>>
>
>>>> @@ -4042,16 +4057,22 @@ static int qmp_pcie_power_on(struct phy *phy)
>>>> unsigned int mask, val;
>>>> int ret;
>>>> - qphy_setbits(pcs, cfg->regs[QPHY_PCS_POWER_DOWN_CONTROL],
>>>> - cfg->pwrdn_ctrl);
>>>> + /*
>>>> + * Write CSR register for phy that doesn't support no_csr
>>> what is CSR register?
>> The registers of PHY.
>
> So 'CSR registers for phy' means 'registers of PHY for phy'? that seems
> incorrect.
"Control and Status Registers"
Konrad
WARNING: multiple messages have this Message-ID (diff)
From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
To: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>,
"Wenbin Yao (Consultant)" <quic_wenbyao@quicinc.com>
Cc: vkoul@kernel.org, kishon@kernel.org, p.zabel@pengutronix.de,
abel.vesa@linaro.org, quic_qianyu@quicinc.com,
neil.armstrong@linaro.org, manivannan.sadhasivam@linaro.org,
quic_devipriy@quicinc.com, linux-arm-msm@vger.kernel.org,
linux-phy@lists.infradead.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2 2/2] phy: qcom: qmp-pcie: Add PHY register retention support
Date: Wed, 12 Feb 2025 15:55:43 +0100 [thread overview]
Message-ID: <f7a220d5-6866-4770-93a0-66e6d7b49491@oss.qualcomm.com> (raw)
In-Reply-To: <fwfxhy535nm7227wzlwlojxyxrr3ond5hmc3njqbcje3usfh5t@hqrnbpmdqweg>
On 12.02.2025 12:07 PM, Dmitry Baryshkov wrote:
> On Wed, Feb 12, 2025 at 04:31:21PM +0800, Wenbin Yao (Consultant) wrote:
>> On 2/12/2025 8:13 AM, Dmitry Baryshkov wrote:
>>> On Tue, Feb 11, 2025 at 05:42:31PM +0800, Wenbin Yao wrote:
>>>> From: Qiang Yu <quic_qianyu@quicinc.com>
>>>>
>>>> Some QCOM PCIe PHYs support no_csr reset. Unlike BCR reset which resets the
>>>> whole PHY (hardware and register), no_csr reset only resets PHY hardware
>>>> but retains register values, which means PHY setting can be skipped during
>>>> PHY init if PCIe link is enabled in booltloader and only no_csr is toggled
>>>> after that.
>>>>
>>>> Hence, determine whether the PHY has been enabled in bootloader by
>>>> verifying QPHY_START_CTRL register. If it's programmed and no_csr reset is
>>>> available, skip BCR reset and PHY register setting to establish the PCIe
>>>> link with bootloader - programmed PHY settings.
>>>>
>>>> Signed-off-by: Qiang Yu <quic_qianyu@quicinc.com>
>>>> Signed-off-by: Wenbin Yao <quic_wenbyao@quicinc.com>
>>>> ---
>>>> drivers/phy/qualcomm/phy-qcom-qmp-pcie.c | 91 +++++++++++++++---------
>>>> 1 file changed, 58 insertions(+), 33 deletions(-)
>>>>
>
>>>> @@ -4042,16 +4057,22 @@ static int qmp_pcie_power_on(struct phy *phy)
>>>> unsigned int mask, val;
>>>> int ret;
>>>> - qphy_setbits(pcs, cfg->regs[QPHY_PCS_POWER_DOWN_CONTROL],
>>>> - cfg->pwrdn_ctrl);
>>>> + /*
>>>> + * Write CSR register for phy that doesn't support no_csr
>>> what is CSR register?
>> The registers of PHY.
>
> So 'CSR registers for phy' means 'registers of PHY for phy'? that seems
> incorrect.
"Control and Status Registers"
Konrad
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
next prev parent reply other threads:[~2025-02-12 14:55 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-11 9:42 [PATCH v2 0/2] phy: qcom: qmp-pcie: Add PCIe PHY no_csr reset support Wenbin Yao
2025-02-11 9:42 ` Wenbin Yao
2025-02-11 9:42 ` [PATCH v2 1/2] phy: qcom: pcie: Determine has_nocsr_reset dynamically Wenbin Yao
2025-02-11 9:42 ` Wenbin Yao
2025-02-11 9:53 ` Philipp Zabel
2025-02-11 9:53 ` Philipp Zabel
2025-02-12 12:31 ` Konrad Dybcio
2025-02-12 12:31 ` Konrad Dybcio
2025-02-13 8:09 ` Wenbin Yao (Consultant)
2025-02-13 8:09 ` Wenbin Yao (Consultant)
2025-02-11 9:42 ` [PATCH v2 2/2] phy: qcom: qmp-pcie: Add PHY register retention support Wenbin Yao
2025-02-11 9:42 ` Wenbin Yao
2025-02-12 0:13 ` Dmitry Baryshkov
2025-02-12 0:13 ` Dmitry Baryshkov
2025-02-12 8:31 ` Wenbin Yao (Consultant)
2025-02-12 8:31 ` Wenbin Yao (Consultant)
2025-02-12 11:06 ` Dmitry Baryshkov
2025-02-12 11:06 ` Dmitry Baryshkov
2025-02-13 8:35 ` Wenbin Yao (Consultant)
2025-02-13 8:35 ` Wenbin Yao (Consultant)
2025-02-12 11:07 ` Dmitry Baryshkov
2025-02-12 11:07 ` Dmitry Baryshkov
2025-02-12 14:55 ` Konrad Dybcio [this message]
2025-02-12 14:55 ` Konrad Dybcio
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=f7a220d5-6866-4770-93a0-66e6d7b49491@oss.qualcomm.com \
--to=konrad.dybcio@oss.qualcomm.com \
--cc=abel.vesa@linaro.org \
--cc=dmitry.baryshkov@linaro.org \
--cc=kishon@kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-phy@lists.infradead.org \
--cc=manivannan.sadhasivam@linaro.org \
--cc=neil.armstrong@linaro.org \
--cc=p.zabel@pengutronix.de \
--cc=quic_devipriy@quicinc.com \
--cc=quic_qianyu@quicinc.com \
--cc=quic_wenbyao@quicinc.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.