Path: blob/master/Documentation/devicetree/bindings/ata/ahci-platform.yaml
51353 views
# SPDX-License-Identifier: GPL-2.01%YAML 1.22---3$id: http://devicetree.org/schemas/ata/ahci-platform.yaml#4$schema: http://devicetree.org/meta-schemas/core.yaml#56title: AHCI SATA Controller78description: |9SATA nodes are defined to describe on-chip Serial ATA controllers.10Each SATA controller should have its own node.1112It is possible, but not required, to represent each port as a sub-node.13It allows to enable each port independently when dealing with multiple14PHYs.1516maintainers:17- Hans de Goede <hdegoede@redhat.com>18- Jens Axboe <axboe@kernel.dk>1920properties:21compatible:22oneOf:23- items:24- enum:25- brcm,iproc-ahci26- marvell,armada-8k-ahci27- marvell,berlin2-ahci28- marvell,berlin2q-ahci29- qcom,apq8064-ahci30- qcom,ipq806x-ahci31- socionext,uniphier-pro4-ahci32- socionext,uniphier-pxs2-ahci33- socionext,uniphier-pxs3-ahci34- const: generic-ahci35- enum:36- cavium,octeon-7130-ahci37- hisilicon,hisi-ahci38- ibm,476gtr-ahci39- marvell,armada-3700-ahci4041reg:42minItems: 143maxItems: 24445reg-names:46maxItems: 14748clocks:49minItems: 150maxItems: 55152clock-names:53minItems: 154maxItems: 55556interrupts:57maxItems: 15859power-domains:60maxItems: 16162resets:63minItems: 164maxItems: 36566iommus:67maxItems: 16869patternProperties:70"^sata-port@[0-9a-f]+$":71$ref: /schemas/ata/ahci-common.yaml#/$defs/ahci-port7273anyOf:74- required: [ phys ]75- required: [ target-supply ]7677unevaluatedProperties: false7879required:80- compatible81- reg82- interrupts8384allOf:85- $ref: ahci-common.yaml#8687- if:88properties:89compatible:90contains:91enum:92- qcom,apq8064-ahci93- qcom,ipq806x-ahci94then:95properties:96clocks:97minItems: 598clock-names:99items:100- const: slave_iface101- const: iface102- const: core103- const: rxoob104- const: pmalive105required:106- phys107- phy-names108- clocks109- clock-names110111- if:112properties:113compatible:114contains:115const: socionext,uniphier-pro4-ahci116then:117properties:118resets:119items:120- description: reset line for the parent121- description: reset line for the glue logic122- description: reset line for the controller123required:124- resets125else:126if:127properties:128compatible:129contains:130enum:131- socionext,uniphier-pxs2-ahci132- socionext,uniphier-pxs3-ahci133then:134properties:135resets:136items:137- description: reset for the glue logic138- description: reset for the controller139required:140- resets141else:142properties:143resets:144maxItems: 1145146unevaluatedProperties: false147148examples:149- |150sata@ffe08000 {151compatible = "snps,spear-ahci";152reg = <0xffe08000 0x1000>;153interrupts = <115>;154};155- |156#include <dt-bindings/interrupt-controller/arm-gic.h>157#include <dt-bindings/clock/berlin2q.h>158#include <dt-bindings/ata/ahci.h>159160sata@f7e90000 {161compatible = "marvell,berlin2q-ahci", "generic-ahci";162reg = <0xf7e90000 0x1000>;163interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;164clocks = <&chip CLKID_SATA>;165#address-cells = <1>;166#size-cells = <0>;167168hba-cap = <HBA_SMPS>;169170sata0: sata-port@0 {171reg = <0>;172173phys = <&sata_phy 0>;174target-supply = <®_sata0>;175176hba-port-cap = <(HBA_PORT_FBSCP | HBA_PORT_ESP)>;177};178179sata1: sata-port@1 {180reg = <1>;181182phys = <&sata_phy 1>;183target-supply = <®_sata1>;184185hba-port-cap = <(HBA_PORT_HPCP | HBA_PORT_MPSP | HBA_PORT_FBSCP)>;186};187};188189190