devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Johan Hovold <johan@kernel.org>
To: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Cc: Johan Hovold <johan+linaro@kernel.org>,
	Vinod Koul <vkoul@kernel.org>, Andy Gross <agross@kernel.org>,
	Bjorn Andersson <andersson@kernel.org>,
	Konrad Dybcio <konrad.dybcio@somainline.org>,
	Rob Herring <robh+dt@kernel.org>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	linux-arm-msm@vger.kernel.org, linux-phy@lists.infradead.org,
	devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 09/15] dt-bindings: phy: qcom,qmp-pcie: mark current bindings as legacy
Date: Tue, 18 Oct 2022 14:44:34 +0200	[thread overview]
Message-ID: <Y06fsvzo8yN/NUth@hovoldconsulting.com> (raw)
In-Reply-To: <CAA8EJprwhEvUfUr-zDir4zFh_NAyr0qPbrHi6Hf8=2HC1dAhaw@mail.gmail.com>

On Tue, Oct 18, 2022 at 02:37:35PM +0300, Dmitry Baryshkov wrote:
> On Tue, 18 Oct 2022 at 13:21, Johan Hovold <johan@kernel.org> wrote:
> >
> > On Tue, Oct 18, 2022 at 12:52:03PM +0300, Dmitry Baryshkov wrote:
> > > Hi,
> > >
> > > On Mon, 17 Oct 2022 at 17:54, Johan Hovold <johan+linaro@kernel.org> wrote:
> > > >
> > > > The current QMP PCIe PHY bindings are based on the original MSM8996
> > > > binding which provided multiple PHYs per IP block and these in turn were
> > > > described by child nodes.
> > > >
> > > > Later QMP PCIe PHY blocks only provide a single PHY and the remnant
> > > > child node does not really reflect the hardware.
> > > >
> > > > The original MSM8996 binding also ended up describing the individual
> > > > register blocks as belonging to either the wrapper node or the PHY child
> > > > nodes.
> > > >
> > > > This is an unnecessary level of detail which has lead to problems when
> > > > later IP blocks using different register layouts have been forced to fit
> > > > the original mould rather than updating the binding. The bindings are
> > > > arguable also incomplete as they only the describe register blocks used
> > > > by the current Linux drivers (e.g. does not include the per lane PCS
> > > > registers).
> > >
> > > I'd like to point out that it's not only a problem peculiar to the
> > > PCIe PHYs. Other QMP PHY families also follow the same approach of
> > > separating the serdes into the common part and rx/tx/PCS/whatever into
> > > the PHY subnodes.
> >
> > Yeah, I already mentioned that in the cover letter.
> >
> > > For the USB+DP combo PHYs we have to have subnodes, however it would
> > > also be logical to move serdes register to the subnode devices,
> > > leaving only DP_COM in the base node.
> >
> > No, not at all. First, we may not even need the subnodes (the individual
> > PHYs can be indexed), but even if we do keep them for the combo case,
> > the register block should go in the wrapper node as the registers can be
> > and are shared (e.g. for sc8280xp for which the current binding is
> > completely broken).
> 
> Hmm, which register blocks are shared on the sc8280xp combo PHY? Could
> you please lightly describe it, if possible?

At least serdes and tx. Note that the combo PHY on sc8280xp also
supports USB4, so there is likely some differences compared to the older
platforms.

And while I haven't looked in detail at the older platforms for the
combo PHYs yet, describing the separate register subregions there
appears to be just as misguided for those (e.g. as the binding currently
only describes what Linux is using) and is mostly an artefact of how the
original Linux driver was implemented.

Johan

  reply	other threads:[~2022-10-18 12:44 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-10-17 14:53 [PATCH 00/15] phy: qcom-qmp-pcie: add support for sc8280xp Johan Hovold
2022-10-17 14:53 ` [PATCH 01/15] phy: qcom-qmp-pcie: sort device-id table Johan Hovold
2022-10-17 14:53 ` [PATCH 02/15] phy: qcom-qmp-pcie: move " Johan Hovold
2022-10-17 14:53 ` [PATCH 03/15] phy: qcom-qmp-pcie: merge driver data Johan Hovold
2022-10-17 14:53 ` [PATCH 04/15] phy: qcom-qmp-pcie: clean up device-tree parsing Johan Hovold
2022-10-17 14:53 ` [PATCH 05/15] phy: qcom-qmp-pcie: clean up probe initialisation Johan Hovold
2022-10-17 14:53 ` [PATCH 06/15] phy: qcom-qmp-pcie: rename PHY ops structure Johan Hovold
2022-10-17 14:53 ` [PATCH 07/15] phy: qcom-qmp-pcie: clean up PHY lane init Johan Hovold
2022-10-17 14:53 ` [PATCH 08/15] phy: qcom-qmp-pcie: add register init helper Johan Hovold
2022-10-17 14:53 ` [PATCH 09/15] dt-bindings: phy: qcom,qmp-pcie: mark current bindings as legacy Johan Hovold
2022-10-17 17:15   ` Krzysztof Kozlowski
2022-10-18  7:06     ` Johan Hovold
2022-10-18 15:27       ` Krzysztof Kozlowski
2022-10-18 15:49         ` Johan Hovold
2022-10-18  9:52   ` Dmitry Baryshkov
2022-10-18 10:21     ` Johan Hovold
2022-10-18 11:37       ` Dmitry Baryshkov
2022-10-18 12:44         ` Johan Hovold [this message]
2022-10-18 15:32         ` Krzysztof Kozlowski
2022-10-18 16:04           ` Johan Hovold
2022-10-18 16:44             ` Krzysztof Kozlowski
2022-10-19  9:33               ` Johan Hovold
2022-10-17 14:53 ` [PATCH 10/15] dt-bindings: phy: qcom,qmp-pcie: add sc8280xp bindings Johan Hovold
2022-10-17 17:20   ` Krzysztof Kozlowski
2022-10-18  9:40     ` Johan Hovold
2022-10-18 15:22       ` Krzysztof Kozlowski
2022-10-18 15:47         ` Johan Hovold
2022-10-17 14:53 ` [PATCH 11/15] phy: qcom-qmp-pcie: restructure PHY creation Johan Hovold
2022-10-17 14:53 ` [PATCH 12/15] phy: qcom-qmp-pcie: fix initialisation reset Johan Hovold
2022-10-17 14:53 ` [PATCH 13/15] phy: qcom-qmp-pcie: add support for pipediv2 clock Johan Hovold
2022-10-18 13:05   ` Dmitry Baryshkov
2022-10-18 14:53     ` Johan Hovold
2022-10-17 14:53 ` [PATCH 14/15] phy: qcom-qmp-pcie: add support for sc8280xp Johan Hovold
2022-10-17 14:53 ` [PATCH 15/15] phy: qcom-qmp-pcie: add support for sc8280xp 4-lane PHYs Johan Hovold

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=Y06fsvzo8yN/NUth@hovoldconsulting.com \
    --to=johan@kernel.org \
    --cc=agross@kernel.org \
    --cc=andersson@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dmitry.baryshkov@linaro.org \
    --cc=johan+linaro@kernel.org \
    --cc=konrad.dybcio@somainline.org \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-phy@lists.infradead.org \
    --cc=robh+dt@kernel.org \
    --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;
as well as URLs for NNTP newsgroup(s).