ahci-platform.txt 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. * AHCI SATA Controller
  2. SATA nodes are defined to describe on-chip Serial ATA controllers.
  3. Each SATA controller should have its own node.
  4. It is possible, but not required, to represent each port as a sub-node.
  5. It allows to enable each port independently when dealing with multiple
  6. PHYs.
  7. Required properties:
  8. - compatible : compatible string, one of:
  9. - "allwinner,sun4i-a10-ahci"
  10. - "brcm,iproc-ahci"
  11. - "hisilicon,hisi-ahci"
  12. - "cavium,octeon-7130-ahci"
  13. - "ibm,476gtr-ahci"
  14. - "marvell,armada-380-ahci"
  15. - "marvell,armada-3700-ahci"
  16. - "snps,dwc-ahci"
  17. - "snps,exynos5440-ahci"
  18. - "snps,spear-ahci"
  19. - "generic-ahci"
  20. - interrupts : <interrupt mapping for SATA IRQ>
  21. - reg : <registers mapping>
  22. Please note that when using "generic-ahci" you must also specify a SoC specific
  23. compatible:
  24. compatible = "manufacturer,soc-model-ahci", "generic-ahci";
  25. Optional properties:
  26. - dma-coherent : Present if dma operations are coherent
  27. - clocks : a list of phandle + clock specifier pairs
  28. - target-supply : regulator for SATA target power
  29. - phys : reference to the SATA PHY node
  30. - phy-names : must be "sata-phy"
  31. - ports-implemented : Mask that indicates which ports that the HBA supports
  32. are available for software to use. Useful if PORTS_IMPL
  33. is not programmed by the BIOS, which is true with
  34. some embedded SOC's.
  35. Required properties when using sub-nodes:
  36. - #address-cells : number of cells to encode an address
  37. - #size-cells : number of cells representing the size of an address
  38. Sub-nodes required properties:
  39. - reg : the port number
  40. And at least one of the following properties:
  41. - phys : reference to the SATA PHY node
  42. - target-supply : regulator for SATA target power
  43. Examples:
  44. sata@ffe08000 {
  45. compatible = "snps,spear-ahci";
  46. reg = <0xffe08000 0x1000>;
  47. interrupts = <115>;
  48. };
  49. ahci: sata@01c18000 {
  50. compatible = "allwinner,sun4i-a10-ahci";
  51. reg = <0x01c18000 0x1000>;
  52. interrupts = <56>;
  53. clocks = <&pll6 0>, <&ahb_gates 25>;
  54. target-supply = <&reg_ahci_5v>;
  55. };
  56. With sub-nodes:
  57. sata@f7e90000 {
  58. compatible = "marvell,berlin2q-achi", "generic-ahci";
  59. reg = <0xe90000 0x1000>;
  60. interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
  61. clocks = <&chip CLKID_SATA>;
  62. #address-cells = <1>;
  63. #size-cells = <0>;
  64. sata0: sata-port@0 {
  65. reg = <0>;
  66. phys = <&sata_phy 0>;
  67. target-supply = <&reg_sata0>;
  68. };
  69. sata1: sata-port@1 {
  70. reg = <1>;
  71. phys = <&sata_phy 1>;
  72. target-supply = <&reg_sata1>;;
  73. };
  74. };