Message ID | 20230717125146.16791-6-pmalgujar@marvell.com |
---|---|
State | Changes Requested, archived |
Headers | show |
Series | mmc: sdhci-cadence: SD6 controller support | expand |
Context | Check | Description |
---|---|---|
robh/checkpatch | success | |
robh/patch-applied | success | |
robh/dtbs-check | warning | build log |
robh/dt-meta-schema | success |
On Mon, Jul 17, 2023 at 05:51:45AM -0700, Piyush Malgujar wrote: > From: Jayanthi Annadurai <jannadurai@marvell.com> > > Add support for SD6 controller on Marvell CN10K series SOCs. The > existing sd4hc is not compatible with the SD6 changes. > > Signed-off-by: Jayanthi Annadurai <jannadurai@marvell.com> > Signed-off-by: Piyush Malgujar <pmalgujar@marvell.com> > --- > .../devicetree/bindings/mmc/cdns,sdhci.yaml | 52 ++++++++++++++++--- > 1 file changed, 45 insertions(+), 7 deletions(-) > > diff --git a/Documentation/devicetree/bindings/mmc/cdns,sdhci.yaml b/Documentation/devicetree/bindings/mmc/cdns,sdhci.yaml > index 6c40611405a08717520f4ce3a78a9cb8dd9aac69..51f44c00a50505684c7c7c49c59c1ebd8d85d5d0 100644 > --- a/Documentation/devicetree/bindings/mmc/cdns,sdhci.yaml > +++ b/Documentation/devicetree/bindings/mmc/cdns,sdhci.yaml > @@ -4,19 +4,23 @@ > $id: http://devicetree.org/schemas/mmc/cdns,sdhci.yaml# > $schema: http://devicetree.org/meta-schemas/core.yaml# > > -title: Cadence SD/SDIO/eMMC Host Controller (SD4HC) > +title: Cadence SD/SDIO/eMMC Host Controller (SD4HC, SD6HC) > > maintainers: > - Masahiro Yamada <yamada.masahiro@socionext.com> > > properties: > compatible: > - items: > - - enum: > - - amd,pensando-elba-sd4hc > - - microchip,mpfs-sd4hc > - - socionext,uniphier-sd4hc > - - const: cdns,sd4hc > + oneOf: > + - items: > + - enum: > + - amd,pensando-elba-sd4hc > + - microchip,mpfs-sd4hc > + - socionext,uniphier-sd4hc > + - const: cdns,sd4hc > + > + - items: > + - const: marvell,cdns-sd6hc This seems like a strange compatible. Why have you not gone for something like: compatible = "marvell,$socname-sd6hc", "cdns,sd6hc"; ? > > reg: > minItems: 1 > @@ -139,6 +143,40 @@ allOf: > reg: > maxItems: 1 > > + - if: > + properties: > + compatible: > + contains: > + const: marvell,cdns-sd6hc > + > + then: > + properties: > + marvell,iocell-input-delay-ps: > + description: Delay in ps across the input IO cells Are all of these things marvell specific, or would other (future) sd6hc users need these properties too? Thanks, Conor. > + > + marvell,iocell-output-delay-ps: > + description: Delay in ps across the output IO cells > + > + marvell,delay-element-ps: > + description: Delay element in ps used for calculating phy timings > + > + marvell,read-dqs-cmd-delay-ps: > + description: Command delay used in HS200 tuning > + > + marvell,tune-val-start-ps: > + description: Staring value of data delay used in HS200 tuning > + > + marvell,tune-val-step-ps: > + description: Incremental value of data delay used in HS200 tuning > + > + required: > + - marvell,iocell-input-delay-ps > + - marvell,iocell-output-delay-ps > + - marvell,delay-element-ps > + - marvell,read-dqs-cmd-delay-ps > + - marvell,tune-val-start-ps > + - marvell,tune-val-step-ps > + > unevaluatedProperties: false > > examples: > -- > 2.17.1 >
On 17/07/2023 14:51, Piyush Malgujar wrote: > From: Jayanthi Annadurai <jannadurai@marvell.com> > > Add support for SD6 controller on Marvell CN10K series SOCs. The > existing sd4hc is not compatible with the SD6 changes. > > Signed-off-by: Jayanthi Annadurai <jannadurai@marvell.com> > Signed-off-by: Piyush Malgujar <pmalgujar@marvell.com> > --- > .../devicetree/bindings/mmc/cdns,sdhci.yaml | 52 ++++++++++++++++--- > 1 file changed, 45 insertions(+), 7 deletions(-) > > diff --git a/Documentation/devicetree/bindings/mmc/cdns,sdhci.yaml b/Documentation/devicetree/bindings/mmc/cdns,sdhci.yaml > index 6c40611405a08717520f4ce3a78a9cb8dd9aac69..51f44c00a50505684c7c7c49c59c1ebd8d85d5d0 100644 > --- a/Documentation/devicetree/bindings/mmc/cdns,sdhci.yaml > +++ b/Documentation/devicetree/bindings/mmc/cdns,sdhci.yaml > @@ -4,19 +4,23 @@ > $id: http://devicetree.org/schemas/mmc/cdns,sdhci.yaml# > $schema: http://devicetree.org/meta-schemas/core.yaml# > > -title: Cadence SD/SDIO/eMMC Host Controller (SD4HC) > +title: Cadence SD/SDIO/eMMC Host Controller (SD4HC, SD6HC) > > maintainers: > - Masahiro Yamada <yamada.masahiro@socionext.com> > > properties: > compatible: > - items: > - - enum: > - - amd,pensando-elba-sd4hc > - - microchip,mpfs-sd4hc > - - socionext,uniphier-sd4hc > - - const: cdns,sd4hc > + oneOf: > + - items: > + - enum: > + - amd,pensando-elba-sd4hc > + - microchip,mpfs-sd4hc > + - socionext,uniphier-sd4hc > + - const: cdns,sd4hc > + > + - items: > + - const: marvell,cdns-sd6hc Except what Conor said (that's not a correct compatible, because cdns is vendor prefix, not device name), you do not have multiple items here, so drop "items". > > reg: > minItems: 1 > @@ -139,6 +143,40 @@ allOf: > reg: > maxItems: 1 > > + - if: > + properties: > + compatible: > + contains: > + const: marvell,cdns-sd6hc > + > + then: > + properties: > + marvell,iocell-input-delay-ps: > + description: Delay in ps across the input IO cells Properties should be defined in top-level properties. Require/disallow them per variant. Best regards, Krzysztof
diff --git a/Documentation/devicetree/bindings/mmc/cdns,sdhci.yaml b/Documentation/devicetree/bindings/mmc/cdns,sdhci.yaml index 6c40611405a08717520f4ce3a78a9cb8dd9aac69..51f44c00a50505684c7c7c49c59c1ebd8d85d5d0 100644 --- a/Documentation/devicetree/bindings/mmc/cdns,sdhci.yaml +++ b/Documentation/devicetree/bindings/mmc/cdns,sdhci.yaml @@ -4,19 +4,23 @@ $id: http://devicetree.org/schemas/mmc/cdns,sdhci.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# -title: Cadence SD/SDIO/eMMC Host Controller (SD4HC) +title: Cadence SD/SDIO/eMMC Host Controller (SD4HC, SD6HC) maintainers: - Masahiro Yamada <yamada.masahiro@socionext.com> properties: compatible: - items: - - enum: - - amd,pensando-elba-sd4hc - - microchip,mpfs-sd4hc - - socionext,uniphier-sd4hc - - const: cdns,sd4hc + oneOf: + - items: + - enum: + - amd,pensando-elba-sd4hc + - microchip,mpfs-sd4hc + - socionext,uniphier-sd4hc + - const: cdns,sd4hc + + - items: + - const: marvell,cdns-sd6hc reg: minItems: 1 @@ -139,6 +143,40 @@ allOf: reg: maxItems: 1 + - if: + properties: + compatible: + contains: + const: marvell,cdns-sd6hc + + then: + properties: + marvell,iocell-input-delay-ps: + description: Delay in ps across the input IO cells + + marvell,iocell-output-delay-ps: + description: Delay in ps across the output IO cells + + marvell,delay-element-ps: + description: Delay element in ps used for calculating phy timings + + marvell,read-dqs-cmd-delay-ps: + description: Command delay used in HS200 tuning + + marvell,tune-val-start-ps: + description: Staring value of data delay used in HS200 tuning + + marvell,tune-val-step-ps: + description: Incremental value of data delay used in HS200 tuning + + required: + - marvell,iocell-input-delay-ps + - marvell,iocell-output-delay-ps + - marvell,delay-element-ps + - marvell,read-dqs-cmd-delay-ps + - marvell,tune-val-start-ps + - marvell,tune-val-step-ps + unevaluatedProperties: false examples: