mirror of https://lore.kernel.org/lkml/
 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>,
	Linus Walleij <linus.walleij@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 04/23] dt-bindings: ata: sata: Extend number of SATA ports
Date: Wed, 13 Jul 2022 08:28:57 +0300	[thread overview]
Message-ID: <20220713052917.27036-5-Sergey.Semin@baikalelectronics.ru> (raw)
In-Reply-To: <20220713052917.27036-1-Sergey.Semin@baikalelectronics.ru>

The denoted in the description upper limit only concerns the Port
Multipliers, but not the actual SATA ports. It's an external device
attached to a SATA port in order to access more than one SATA-drive. So
when it's attached to a SATA port it just extends the port capability
while the number of actual SATA ports stays the same. For instance on AHCI
controllers the number of actual ports is determined by the CAP.NP field
and the PI (Ports Implemented) register. AFAICS in general the maximum
number of SATA ports depends on the particular controller implementation.
Generic AHCI controller can't have more than 32 ports (since CAP.NP is of
5 bits wide and PI register is 32-bits size), while DWC AHCI SATA
controller can't be configured with more than 8 ports activated. So let's
discard the SATA ports reg-property restrictions and just make sure that
it consists of a single reg-item.

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:
- Add comma and replace "channel" with "SATA port" in the reg property
  description (@Damien).
---
 Documentation/devicetree/bindings/ata/sata-common.yaml | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/Documentation/devicetree/bindings/ata/sata-common.yaml b/Documentation/devicetree/bindings/ata/sata-common.yaml
index 5a31a902618d..58c9342b9925 100644
--- a/Documentation/devicetree/bindings/ata/sata-common.yaml
+++ b/Documentation/devicetree/bindings/ata/sata-common.yaml
@@ -49,10 +49,9 @@ $defs:
     properties:
       reg:
         minimum: 0
-        maximum: 14
         description:
-          The ID number of the drive port SATA can potentially use a port
-          multiplier making it possible to connect up to 15 disks to a single
-          SATA port.
+          The ID number of the SATA port. Aside with being directly used,
+          each port can have a Port Multiplier attached thus allowing to
+          access more than one drive by means of a single SATA port.
 
 ...
-- 
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 ` [PATCH v5 03/23] dt-bindings: ata: ahci-platform: Clarify common AHCI props constraints Serge Semin
2022-07-13  5:28 ` Serge Semin [this message]
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-5-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=linus.walleij@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

all inboxes | Powered by JetHome®