linux-ide.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Serge Semin <Sergey.Semin@baikalelectronics.ru>
To: Damien Le Moal <damien.lemoal@opensource.wdc.com>,
	Hans de Goede <hdegoede@redhat.com>, Jens Axboe <axboe@kernel.dk>,
	Hannes Reinecke <hare@suse.de>, Rob Herring <robh+dt@kernel.org>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>
Cc: Serge Semin <Sergey.Semin@baikalelectronics.ru>,
	Serge Semin <fancer.lancer@gmail.com>,
	Alexey Malahov <Alexey.Malahov@baikalelectronics.ru>,
	Pavel Parkhomenko <Pavel.Parkhomenko@baikalelectronics.ru>,
	<linux-ide@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
	<devicetree@vger.kernel.org>, Rob Herring <robh@kernel.org>
Subject: [PATCH v5 03/23] dt-bindings: ata: ahci-platform: Clarify common AHCI props constraints
Date: Wed, 13 Jul 2022 08:28:56 +0300	[thread overview]
Message-ID: <20220713052917.27036-4-Sergey.Semin@baikalelectronics.ru> (raw)
In-Reply-To: <20220713052917.27036-1-Sergey.Semin@baikalelectronics.ru>

Indeed in accordance with what is implemented in the AHCI platform driver
and the way the AHCI DT nodes are defined in the DT files we can add the
next AHCI DT properties constraints: AHCI CSR ID is fixed to 'ahci', PHY
name is fixed to 'sata-phy', AHCI controller can't have more than 32 ports
by design, AHCI controller can have up to 32 IRQ lines.

Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru>
Reviewed-by: Hannes Reinecke <hare@suse.de>
Reviewed-by: Rob Herring <robh@kernel.org>

---

Changelog v2:
- This is a new patch created after rebasing v1 onto the 5.18-rc3 kernel.

Changelog v4:
- Fix spelling: 'imeplemtned' and 'paltform' in the patch log. (@Hannes)
- Add the interrupts property constraints. (@Rob)
- Add forgotten '---' patchlog-changelog separator. (@Sergei)
---
 .../devicetree/bindings/ata/ahci-common.yaml    | 17 ++++++++++++-----
 1 file changed, 12 insertions(+), 5 deletions(-)

diff --git a/Documentation/devicetree/bindings/ata/ahci-common.yaml b/Documentation/devicetree/bindings/ata/ahci-common.yaml
index e89bda3b62cc..12a97b56226f 100644
--- a/Documentation/devicetree/bindings/ata/ahci-common.yaml
+++ b/Documentation/devicetree/bindings/ata/ahci-common.yaml
@@ -31,12 +31,16 @@ properties:
 
   reg-names:
     description: CSR space IDs
+    contains:
+      const: ahci
 
   interrupts:
     description:
       Generic AHCI state change interrupt. Can be implemented either as a
       single line attached to the controller or as a set of the signals
       indicating the particular port events.
+    minItems: 1
+    maxItems: 32
 
   ahci-supply:
     description: Power regulator for AHCI controller
@@ -52,14 +56,13 @@ properties:
     maxItems: 1
 
   phy-names:
-    maxItems: 1
+    const: sata-phy
 
   ports-implemented:
     $ref: '/schemas/types.yaml#/definitions/uint32'
     description:
       Mask that indicates which ports the HBA supports. Useful if PI is not
       programmed by the BIOS, which is true for some embedded SoC's.
-    maximum: 0x1f
 
 patternProperties:
   "^sata-port@[0-9a-f]+$":
@@ -80,8 +83,12 @@ $defs:
 
     properties:
       reg:
-        description: AHCI SATA port identifier
-        maxItems: 1
+        description:
+          AHCI SATA port identifier. By design AHCI controller can't have
+          more than 32 ports due to the CAP.NP fields and PI register size
+          constraints.
+        minimum: 0
+        maximum: 31
 
       phys:
         description: Individual AHCI SATA port PHY
@@ -89,7 +96,7 @@ $defs:
 
       phy-names:
         description: AHCI SATA port PHY ID
-        maxItems: 1
+        const: sata-phy
 
       target-supply:
         description: Power regulator for SATA port target device
-- 
2.35.1


  parent reply	other threads:[~2022-07-13  5:30 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-13  5:28 [PATCH v5 00/23] ata: ahci: Add DWC/Baikal-T1 AHCI SATA support Serge Semin
2022-07-13  5:28 ` [PATCH v5 01/23] dt-bindings: ata: ahci-platform: Move dma-coherent to sata-common.yaml Serge Semin
2022-07-13  5:28 ` [PATCH v5 02/23] dt-bindings: ata: ahci-platform: Detach common AHCI bindings Serge Semin
2022-07-13  5:28 ` Serge Semin [this message]
2022-07-13  5:28 ` [PATCH v5 04/23] dt-bindings: ata: sata: Extend number of SATA ports Serge Semin
2022-07-13  5:28 ` [PATCH v5 05/23] dt-bindings: ata: sata-brcm: Apply common AHCI schema Serge Semin
2022-07-13  5:28 ` [PATCH v5 06/23] ata: libahci_platform: Convert to using platform devm-ioremap methods Serge Semin
2022-07-13  5:29 ` [PATCH v5 07/23] ata: libahci_platform: Convert to using devm bulk clocks API Serge Semin
2022-07-14 20:58   ` kernel test robot
2022-07-13  5:29 ` [PATCH v5 08/23] ata: libahci_platform: Sanity check the DT child nodes number Serge Semin
2022-07-13  5:29 ` [PATCH v5 09/23] ata: libahci_platform: Parse ports-implemented property in resources getter Serge Semin
2022-07-13  5:29 ` [PATCH v5 10/23] ata: libahci_platform: Introduce reset assertion/deassertion methods Serge Semin
2022-07-13  5:29 ` [PATCH v5 11/23] dt-bindings: ata: ahci: Add platform capability properties Serge Semin
2022-07-13  5:29 ` [PATCH v5 12/23] ata: libahci: Extend port-cmd flags set with port capabilities Serge Semin
2022-07-13  5:29 ` [PATCH v5 13/23] ata: libahci: Discard redundant force_port_map parameter Serge Semin
2022-07-13  5:29 ` [PATCH v5 14/23] ata: libahci: Don't read AHCI version twice in the save-config method Serge Semin
2022-07-13  5:29 ` [PATCH v5 15/23] ata: ahci: Convert __ahci_port_base to accepting hpriv as arguments Serge Semin
2022-07-13  5:29 ` [PATCH v5 16/23] ata: ahci: Introduce firmware-specific caps initialization Serge Semin
2022-07-13  5:29 ` [PATCH v5 17/23] dt-bindings: ata: ahci: Add DWC AHCI SATA controller DT schema Serge Semin
2022-07-18 20:33   ` Rob Herring
2022-07-13  5:29 ` [PATCH v5 18/23] ata: libahci_platform: Add function returning a clock-handle by id Serge Semin
2022-07-13  5:29 ` [PATCH v5 19/23] ata: ahci: Add DWC AHCI SATA controller support Serge Semin
2022-07-13  5:29 ` [PATCH v5 20/23] dt-bindings: ata: ahci: Add Baikal-T1 AHCI SATA controller DT schema Serge Semin
2022-07-18 20:34   ` Rob Herring
2022-07-13  5:29 ` [PATCH v5 21/23] ata: ahci-dwc: Add platform-specific quirks support Serge Semin
2022-07-13  5:29 ` [PATCH v5 22/23] ata: ahci-dwc: Add Baikal-T1 AHCI SATA interface support Serge Semin
2022-07-13  5:29 ` [PATCH v5 23/23] MAINTAINERS: Add maintainers for DWC AHCI SATA driver Serge Semin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220713052917.27036-4-Sergey.Semin@baikalelectronics.ru \
    --to=sergey.semin@baikalelectronics.ru \
    --cc=Alexey.Malahov@baikalelectronics.ru \
    --cc=Pavel.Parkhomenko@baikalelectronics.ru \
    --cc=axboe@kernel.dk \
    --cc=damien.lemoal@opensource.wdc.com \
    --cc=devicetree@vger.kernel.org \
    --cc=fancer.lancer@gmail.com \
    --cc=hare@suse.de \
    --cc=hdegoede@redhat.com \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linux-ide@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=robh+dt@kernel.org \
    --cc=robh@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).