Re: [PATCH v2 1/3] dt-bindings: display: msm: dp-controller: document X1E80100 compatible

From: Rob Herring
Date: Fri Mar 01 2024 - 12:52:48 EST


On Tue, Feb 27, 2024 at 04:45:25PM +0100, Krzysztof Kozlowski wrote:
> On 22/02/2024 16:55, Abel Vesa wrote:
> > Add the X1E80100 to the list of compatibles and document the is-edp
> > flag. The controllers are expected to operate in DP mode by default,
> > and this flag can be used to select eDP mode.
> >
> > Signed-off-by: Abel Vesa <abel.vesa@xxxxxxxxxx>
> > ---
> > Documentation/devicetree/bindings/display/msm/dp-controller.yaml | 6 ++++++
> > 1 file changed, 6 insertions(+)
> >
> > diff --git a/Documentation/devicetree/bindings/display/msm/dp-controller.yaml b/Documentation/devicetree/bindings/display/msm/dp-controller.yaml
> > index ae53cbfb2193..ed11852e403d 100644
> > --- a/Documentation/devicetree/bindings/display/msm/dp-controller.yaml
> > +++ b/Documentation/devicetree/bindings/display/msm/dp-controller.yaml
> > @@ -27,6 +27,7 @@ properties:
> > - qcom,sdm845-dp
> > - qcom,sm8350-dp
> > - qcom,sm8650-dp
> > + - qcom,x1e80100-dp
> > - items:
> > - enum:
> > - qcom,sm8150-dp
> > @@ -73,6 +74,11 @@ properties:
> > - description: phy 0 parent
> > - description: phy 1 parent
> >
> > + is-edp:
> > + $ref: /schemas/types.yaml#/definitions/flag
> > + description:
> > + Tells the controller to switch to eDP mode
>
>
> DP controller cannot be edp, so property "is-edp" is confusing. Probably
> you want to choose some phy mode, so you should rather use "phy-mode"
> property. I am sure we've been here...

phy-mode belongs in the phy node though. Not that you couldn't look in
the phy node and see, but everyone likes all the properties they need
nicely packaged up in their driver's node.

> Anyway, if you define completely new property without vendor prefix,
> that's a generic property, so you need to put it in some common schema
> for all Display Controllers, not only Qualcomm.

I'm trying to unsee what the driver is doing... Hard-coding the
connector type and some instance indices. Uhhhh! I'm sure I'm to blame
for rejecting those in DT.

I've suggested connector nodes in the past. More generally, whatever is
attached at the other end (as it could be a bridge rather than a
connector) knows what mode is needed. It's simple negotiation. Each end
presents what they support. You take the union of the list(s) and get
the mode. If there's more than one, then the kernel or user gets to
choose.

Qualcomm is not the only one with this problem. Solve it for everyone...

Rob