Re: [PATCH] arm64: dts: qcom: sc8280xp-x13s: Use the correct DP PHY compatible

From: Konrad Dybcio
Date: Tue Oct 17 2023 - 12:22:16 EST




On 10/17/23 05:28, Bjorn Andersson wrote:
On Mon, Oct 16, 2023 at 12:10:18PM +0300, Dmitry Baryshkov wrote:
On Mon, 16 Oct 2023 at 12:01, Johan Hovold <johan@xxxxxxxxxx> wrote:

On Mon, Oct 16, 2023 at 11:51:33AM +0300, Dmitry Baryshkov wrote:
On Fri, 29 Sept 2023 at 19:03, Konrad Dybcio <konrad.dybcio@xxxxxxxxxx> wrote:

The DP PHY needs different settings when an eDP display is used.
Make sure these apply on the X13s.

Could you please clarify, is it the same PHY type, just being
repurposed for eDP or is it a different PHY type?

Same PHY, just different settings AFAIK.

If the former is the case (and the same PHY can be used for both DP
and eDP), it should carry the same compatible string and use software
mechanisms (e.g. phy_set_mode_ext()) to be programmed for the correct
operation mode.

Possibly, but that's not how the current binding and implementation
works:

6993c079cd58 ("dt-bindings: phy: qcom-edp: Add SC8280XP PHY compatibles")
2300d1cb24b3 ("phy: qcom: edp: Introduce support for DisplayPort")
3b7267dec445 ("phy: qcom: edp: Add SC8280XP eDP and DP PHYs")

https://lore.kernel.org/lkml/20220810040745.3582985-1-bjorn.andersson@xxxxxxxxxx/

And you'd still need to infer the mode from DT somehow.

If it is the same hardware block, it seems incorrect to have two
different compat entries. For example, for PCIe RC vs PCIe EP we
specify the PHY mode from the host controller driver.
I'd say, we need to fix the bindings for both DP/eDP controller and
the PHY. See the `phy-mode` DT property for example.


It is one hardware block, supporting both eDP and DP, so I like your
suggestion of having a single compatible instead and using some other
means of defining the configuration. I just wasn't able to find a
better way to do so back when I wrote the binding/driver...
Since this one is still unused, we can deprecate it (not sure if remove, but deprecate) and add phy-type instead. I was quite surprised to see that a new compatible was added as well :/

Konrad