Re: [PATCH 2/3] dt-bindings: phy: Add lane<n>-mode property to WIZ (SERDES wrapper)
From: Rob Herring
Date: Tue Dec 24 2019 - 16:32:20 EST
On Fri, Dec 20, 2019 at 5:52 AM Jyri Sarha <jsarha@xxxxxx> wrote:
>
> On 19/12/2019 21:08, Rob Herring wrote:
> > On Mon, Dec 09, 2019 at 06:22:11PM +0200, Jyri Sarha wrote:
> >> Add property to indicate the usage of SERDES lane controlled by the
> >> WIZ wrapper. The wrapper configuration has some variation depending on
> >> how each lane is going to be used.
> >>
> >> Signed-off-by: Jyri Sarha <jsarha@xxxxxx>
> >> ---
> >> .../devicetree/bindings/phy/ti,phy-j721e-wiz.yaml | 12 ++++++++++++
> >> 1 file changed, 12 insertions(+)
> >>
> >> diff --git a/Documentation/devicetree/bindings/phy/ti,phy-j721e-wiz.yaml b/Documentation/devicetree/bindings/phy/ti,phy-j721e-wiz.yaml
> >> index 94e3b4b5ed8e..399725f65278 100644
> >> --- a/Documentation/devicetree/bindings/phy/ti,phy-j721e-wiz.yaml
> >> +++ b/Documentation/devicetree/bindings/phy/ti,phy-j721e-wiz.yaml
> >> @@ -97,6 +97,18 @@ patternProperties:
> >> Torrent SERDES should follow the bindings specified in
> >> Documentation/devicetree/bindings/phy/phy-cadence-dp.txt
> >>
> >> + "^lane[1-4]-mode$":
> >> + allOf:
> >> + - $ref: /schemas/types.yaml#/definitions/uint32
> >> + - enum: [0, 1, 2, 3, 4, 5, 6]
> >> + description: |
> >> + Integer describing static lane usage for the lane indicated in
> >> + the property name. For Sierra there may be properties lane0 and
> >> + lane1, for Torrent all lane[1-4]-mode properties may be
> >> + there. The constants to indicate the lane usage are defined in
> >> + "include/dt-bindings/phy/phy.h". The lane is assumed to be unused
> >> + if its lane<n>-use property does not exist.
> >
> > The defines were intended to be in 'phys' cells. Does putting both lane
> > and mode in the client 'phys' properties not work?
> >
>
> Let me first check if I understood you. So you are suggesting something
> like this:
>
> dp-phy {
> #phy-cells = <5>; /* 1 for phy-type and 4 for lanes = 5 */
> ...
> };
>
> dp-bridge {
> ...
> phys = <&dp-phy PHY_TYPE_DP 1 1 0 0>; /* lanes 0 and 1 for DP */
Yes, but I think the lanes can be a single cell mask. And I'd probably
make that the first cell which is generally "which PHY" and make
type/mode the 2nd cell. I'd look for other users of PHY_TYPE_ defines
and match what they've done if possible.
Rob