[PATCH v5 1/2] dt-bindings: phy: Add i.MX8Q HSIO SerDes PHY binding
Hongxing Zhu
hongxing.zhu at nxp.com
Mon May 13 18:54:39 PDT 2024
> -----Original Message-----
> From: Conor Dooley <conor at kernel.org>
> Sent: 2024年5月14日 0:02
> To: Hongxing Zhu <hongxing.zhu at nxp.com>
> Cc: vkoul at kernel.org; kishon at kernel.org; robh+dt at kernel.org;
> krzysztof.kozlowski+dt at linaro.org; Frank Li <frank.li at nxp.com>;
> conor+dt at kernel.org; linux-phy at lists.infradead.org; devicetree at vger.kernel.org;
> linux-arm-kernel at lists.infradead.org; linux-kernel at vger.kernel.org;
> kernel at pengutronix.de; imx at lists.linux.dev
> Subject: Re: [PATCH v5 1/2] dt-bindings: phy: Add i.MX8Q HSIO SerDes PHY
> binding
>
> On Mon, May 13, 2024 at 09:22:03AM +0800, Richard Zhu wrote:
>
> > + fsl,hsio-cfg:
> > + description:
> > + Specifies the use case of the HSIO module in the hardware design.
> > + Because the HSIO module can be configure into three different use
> > + cases.
> > + Refer to macro HSIO_CFG* of
> include/dt-bindings/phy/phy-imx8-pcie.h.
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > + maximum: 3
>
> > +/*
> > + * Regarding the design of i.MX8QM HSIO subsystem, HSIO module can be
> > + * confiured as following three use cases.
> > + *
> > + * Define different configurations refer to the use cases, since it
> > +is
> > + * mandatory required in the initialization.
> > + *
> > + * On i.MX8QXP, HSIO module only has PCIEB and one lane PHY.
> > + * Define "IMX8Q_HSIO_CFG_PCIEB" for i.MX8QXP platforms.
> > + *
> > + * +----------------------------------------------------+----------+
> > + * | | i.MX8QM | i.MX8QXP
> |
> > + * |-------------------------------|--------------------|----------|
> > + * | | Lane0| Lane1| Lane2| Lane0 |
> > + * |-------------------------------|------|------|------|----------|
> > + * | IMX8Q_HSIO_CFG_PCIEAX2SATA | PCIEA| PCIEA| SATA |
> |
> > + * |-------------------------------|------|------|------|----------|
> > + * | IMX8Q_HSIO_CFG_PCIEAX2PCIEB | PCIEA| PCIEA| PCIEB|
> |
> > + * |-------------------------------|------|------|------|----------|
> > + * | IMX8Q_HSIO_CFG_PCIEAPCIEBSATA | PCIEA| PCIEB| SATA | |
> > + * |-------------------------------|------|------|------|----------|
> > + * | IMX8Q_HSIO_CFG_PCIEB | - | - | - | PCIEB |
> > + * +----------------------------------------------------+----------+
> > + */
> > +#define IMX8Q_HSIO_CFG_PCIEAX2SATA 0x1
> > +#define IMX8Q_HSIO_CFG_PCIEAX2PCIEB 0x2
> > +#define IMX8Q_HSIO_CFG_PCIEAPCIEBSATA
> (IMX8Q_HSIO_CFG_PCIEAX2SATA | IMX8Q_HSIO_CFG_PCIEAX2PCIEB)
> > +#define IMX8Q_HSIO_CFG_PCIEB IMX8Q_HSIO_CFG_PCIEAX2PCIEB
>
> Rob may disagree with me, but I think this should be an enum of possible strings
> with the table here moved into the property description. The QXP only option
> should then be constrained per compatible.
>
If this property is an enum of possible strings. There would be three if()
checks to parse the possible string in driver.
I'm fine with that.
Hi Rob:
How do you think about that?
> > +
> > + fsl,refclk-pad-mode:
> > + description:
> > + Specifies the mode of the refclk pad used. INPUT(PHY refclock is
> > + provided externally via the refclk pad) or OUTPUT(PHY refclock is
> > + derived from SoC internal source and provided on the refclk pad).
>
> > + This property not exsit means unused(PHY refclock is derived
> > + from
>
> Please run a spell checker on your patches.
>
Sorry, It's my fault. There is a spell mistake.
s/exsit/exists/
Thanks.
> > + SoC internal source).
>
> > + $ref: /schemas/types.yaml#/definitions/string
> > + enum: [ input, output ]
>
> enum: [input, output, unused]
> default: unused
Okay
Best Regards
Richard
>
> Cheers,
> Conor.
More information about the linux-arm-kernel
mailing list