RE: [PATCH v2 1/3] dt-bindings: PCI: imx6: convert the imx pcie controller to dtschema

From: Hongxing Zhu
Date: Tue Jul 19 2022 - 21:22:51 EST


> -----Original Message-----
> From: Bjorn Helgaas <helgaas@xxxxxxxxxx>
> Sent: 2022年7月20日 2:00
> To: Hongxing Zhu <hongxing.zhu@xxxxxxx>
> Cc: robh@xxxxxxxxxx; l.stach@xxxxxxxxxxxxxx; galak@xxxxxxxxxxxxxxxxxxx;
> shawnguo@xxxxxxxxxx; devicetree@xxxxxxxxxxxxxxx;
> linux-arm-kernel@xxxxxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
> dl-linux-imx <linux-imx@xxxxxxx>; kernel@xxxxxxxxxxxxxx
> Subject: Re: [PATCH v2 1/3] dt-bindings: PCI: imx6: convert the imx pcie
> controller to dtschema
>
> On Fri, Aug 27, 2021 at 02:42:58PM +0800, Richard Zhu wrote:
> > Convert the fsl,imx6q-pcie.txt into a schema.
> > - ranges property should be grouped by region, with no functional
> > changes.
> > - only one propert is allowed in the compatible string, remove
> > "snps,dw-pcie".
> >
> > Signed-off-by: Richard Zhu <hongxing.zhu@xxxxxxx>
> > ---
> > .../bindings/pci/fsl,imx6q-pcie.txt | 100 ---------
> > .../bindings/pci/fsl,imx6q-pcie.yaml | 202
> ++++++++++++++++++
> > MAINTAINERS | 2 +-
> > 3 files changed, 203 insertions(+), 101 deletions(-) delete mode
> > 100644 Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.txt
> > create mode 100644
> > Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.yaml
> >
> > diff --git a/Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.txt
> > b/Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.txt
>
> > -Optional properties:
> > -- fsl,tx-deemph-gen1: Gen1 De-emphasis value. Default: 0
> > -- fsl,tx-deemph-gen2-3p5db: Gen2 (3.5db) De-emphasis value. Default:
> > 0
>
> > diff --git a/Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.yaml
> > b/Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.yaml
>
> > + fsl,tx-deemph-gen1:
> > + description: Gen1 De-emphasis value (optional required).
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > + default: 0
> > +
> > + fsl,tx-deemph-gen2-3p5db:
> > + description: Gen2 (3.5db) De-emphasis value (optional required).
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > + default: 0
>
> What does "optional required" mean in all these properties?
> "Optional" is the opposite of "required."
Hi Bjorn:
Regarding my understands, the "optional required" means that these properties
are not mandatory required. The default values are used if there are no such
kind of properties. If HW board designers want to shape their PCIe signals
(E.X eye diagram), they should define these properties.

Best Regards
Richard Zhu