summaryrefslogtreecommitdiff
path: root/Documentation/devicetree/bindings/ata/ahci-common.yaml
diff options
context:
space:
mode:
authorSerge Semin <Sergey.Semin@baikalelectronics.ru>2022-09-09 22:36:09 +0300
committerDamien Le Moal <damien.lemoal@opensource.wdc.com>2022-09-16 19:39:38 +0300
commit03f1076fbe9fd0edd92011f1c97bf6daad83d01b (patch)
tree374f2b8782276ec22e6cc166add0bbcb4d5a20f1 /Documentation/devicetree/bindings/ata/ahci-common.yaml
parentf67f12ff57bcfcd7d64280f748787793217faeaf (diff)
downloadlinux-03f1076fbe9fd0edd92011f1c97bf6daad83d01b.tar.xz
dt-bindings: ata: ahci: Add platform capability properties
In case if the platform doesn't have BIOS or a comprehensive firmware installed then the HBA capability flags will be left uninitialized. As a good alternative we suggest to define the DT-properties with the AHCI platform capabilities describing all the HW-init flags of the corresponding capability register. Luckily there aren't too many of them. SSS - Staggered Spin-up support and MPS - Mechanical Presence Switch support determine the corresponding feature availability for the whole HBA by means of the "hba-cap" property. Each port can have the "hba-port-cap" property initialized indicating that the port supports some of the next functionalities: HPCP - HotPlug capable port, MPSP - Mechanical Presence Switch attached to a port, CPD - Cold Plug detection, ESP - External SATA Port (eSATA), FBSCP - FIS-based switching capable port. Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
Diffstat (limited to 'Documentation/devicetree/bindings/ata/ahci-common.yaml')
-rw-r--r--Documentation/devicetree/bindings/ata/ahci-common.yaml16
1 files changed, 16 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/ata/ahci-common.yaml b/Documentation/devicetree/bindings/ata/ahci-common.yaml
index 12a97b56226f..94d72aeaad0f 100644
--- a/Documentation/devicetree/bindings/ata/ahci-common.yaml
+++ b/Documentation/devicetree/bindings/ata/ahci-common.yaml
@@ -58,6 +58,14 @@ properties:
phy-names:
const: sata-phy
+ hba-cap:
+ $ref: '/schemas/types.yaml#/definitions/uint32'
+ description:
+ Bitfield of the HBA generic platform capabilities like Staggered
+ Spin-up or Mechanical Presence Switch support. It can be used to
+ appropriately initialize the HWinit fields of the HBA CAP register
+ in case if the system firmware hasn't done it.
+
ports-implemented:
$ref: '/schemas/types.yaml#/definitions/uint32'
description:
@@ -101,6 +109,14 @@ $defs:
target-supply:
description: Power regulator for SATA port target device
+ hba-port-cap:
+ $ref: '/schemas/types.yaml#/definitions/uint32'
+ description:
+ Bitfield of the HBA port-specific platform capabilities like Hot
+ plugging, eSATA, FIS-based Switching, etc (see AHCI specification
+ for details). It can be used to initialize the HWinit fields of
+ the PxCMD register in case if the system firmware hasn't done it.
+
required:
- reg