> -----Original Message----- > From: Rob Herring [mailto:robh@xxxxxxxxxx] > Sent: 2021年8月19日 2:33 > To: Bough Chen <haibo.chen@xxxxxxx> > Cc: shawnguo@xxxxxxxxxx; s.hauer@xxxxxxxxxxxxxx; ulf.hansson@xxxxxxxxxx; > kernel@xxxxxxxxxxxxxx; festevam@xxxxxxxxx; dl-linux-imx > <linux-imx@xxxxxxx>; Aisheng Dong <aisheng.dong@xxxxxxx>; > devicetree@xxxxxxxxxxxxxxx; linux-arm-kernel@xxxxxxxxxxxxxxxxxxx; > linux-mmc@xxxxxxxxxxxxxxx > Subject: Re: [PATCH] dt-bindings: mmc: fsl-imx-esdhc: change the > pinctrl-names rule > > On Wed, Aug 18, 2021 at 05:46:24PM +0800, haibo.chen@xxxxxxx wrote: > > From: Haibo Chen <haibo.chen@xxxxxxx> > > > > Change the pinctrl-names rule to cover all cases. > > > > Signed-off-by: Haibo Chen <haibo.chen@xxxxxxx> > > --- > > .../bindings/mmc/fsl-imx-esdhc.yaml | 21 +++++++++++++------ > > 1 file changed, 15 insertions(+), 6 deletions(-) > > > > diff --git a/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.yaml > > b/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.yaml > > index 17086f60f8a3..d324606a4f0a 100644 > > --- a/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.yaml > > +++ b/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.yaml > > @@ -116,12 +116,21 @@ properties: > > - const: per > > > > pinctrl-names: > > - minItems: 1 > > - items: > > - - const: default > > - - const: state_100mhz > > - - const: state_200mhz > > - - const: sleep > > + oneOf: > > + - items: > > + - const: default > > + - const: state_100mhz > > + - const: state_200mhz > > + - const: sleep > > + - items: > > + - const: default > > + - const: state_100mhz > > + - const: state_200mhz > > You can drop this one and add 'minItems: 3' to the first case. Okay, I will do that. > > > + - items: > > + - const: default > > + - const: sleep > > + - items: > > + - const: default > > Similar here too with the prior case. Or use 'minItems: 1' in the first case. That > additional allows the 2 entry case, but why isn't that valid? > Couldn't a board only support default+state_100mhz? Logically not, for board, if support SD3.0 mode, this means it support both SDR104/SDR50/DDR50/HS200/HS400 State_100mhz is used for SDR50 and DDR50, state_200mhz is used for SDR104/HS200/HS400. So, if there is state_100mhz, there should be state_200mhz. Rest Regards Haibo Chen > > Rob