Re: [PATCH v4 02/23] dt-bindings: ata: ahci-platform: Detach common AHCI bindings

From: Rob Herring
Date: Tue Jun 14 2022 - 18:17:07 EST


On Fri, 10 Jun 2022 11:17:40 +0300, Serge Semin wrote:
> In order to create a more sophisticated AHCI controller DT bindings let's
> divide the already available generic AHCI platform YAML schema into the
> platform part and a set of the common AHCI properties. The former part
> will be used to evaluate the AHCI DT nodes mainly compatible with the
> generic AHCI controller while the later schema will be used for more
> thorough AHCI DT nodes description. For instance such YAML schemas design
> will be useful for our DW AHCI SATA controller derivative with four clock
> sources, two reset lines, one system controller reference and specific
> max Rx/Tx DMA xfers size constraints.
>
> Note the phys and target-supply property requirement is preserved in the
> generic AHCI platform bindings because some platforms can lack of the
> explicitly specified PHYs or target device power regulators.
>
> Also note the SATA/AHCI ports properties have been moved to the
> $defs-paragraph of the schemas. It's done in order to create the
> extendable properties hierarchy such that particular AHCI-controller
> could add vendor-specific port properties.
>
> Signed-off-by: Serge Semin <Sergey.Semin@xxxxxxxxxxxxxxxxxxxx>
>
> ---
>
> Folks, I don't really see why the phys/target-supply requirement has been
> added to the generic AHCI DT schema in the first place. Probably just to
> imply some meaning for the sub-nodes definition. Anyway in one of the
> further patches I am adding the DW AHCI SATA controller DT bindings which
> won't require having these properties specified in the sub-nodes, but will
> describe additional port-specific properties. That's why I get to keep the
> constraints in the ahci-platform.yaml schema instead of moving them to the
> common schema.
>
> Changelog v2:
> - This is a new patch created after rebasing v1 onto the 5.18-rc3 kernel.
>
> Changelog v3:
> - Replace Jens's email address with Damien's one in the list of the
> schema maintainers. (@Damien)
>
> Changelog v4:
> - Drop clocks, clock-names, resets, reset-names and power-domains
> properties from the common schema. (@Rob)
> - Create sata/ahci-port properties definition hierarchy so the sub-schemas
> would inherit and extend the ports properties of the super-schema. (@Rob)
> ---
> .../devicetree/bindings/ata/ahci-common.yaml | 100 ++++++++++++++++++
> .../bindings/ata/ahci-platform.yaml | 72 ++-----------
> .../devicetree/bindings/ata/sata-common.yaml | 8 +-
> 3 files changed, 115 insertions(+), 65 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/ata/ahci-common.yaml
>

Reviewed-by: Rob Herring <robh@xxxxxxxxxx>