hisilicon-sas.txt 3.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. * HiSilicon SAS controller
  2. The HiSilicon SAS controller supports SAS/SATA.
  3. Main node required properties:
  4. - compatible : value should be as follows:
  5. (a) "hisilicon,hip05-sas-v1" for v1 hw in hip05 chipset
  6. (b) "hisilicon,hip06-sas-v2" for v2 hw in hip06 chipset
  7. (c) "hisilicon,hip07-sas-v2" for v2 hw in hip07 chipset
  8. - sas-addr : array of 8 bytes for host SAS address
  9. - reg : Contains two regions. The first is the address and length of the SAS
  10. register. The second is the address and length of CPLD register for
  11. SGPIO control. The second is optional, and should be set only when
  12. we use a CPLD for directly attached disk LED control.
  13. - hisilicon,sas-syscon: phandle of syscon used for sas control
  14. - ctrl-reset-reg : offset to controller reset register in ctrl reg
  15. - ctrl-reset-sts-reg : offset to controller reset status register in ctrl reg
  16. - ctrl-clock-ena-reg : offset to controller clock enable register in ctrl reg
  17. - queue-count : number of delivery and completion queues in the controller
  18. - phy-count : number of phys accessible by the controller
  19. - interrupts : For v1 hw: Interrupts for phys, completion queues, and fatal
  20. sources; the interrupts are ordered in 3 groups, as follows:
  21. - Phy interrupts
  22. - Completion queue interrupts
  23. - Fatal interrupts
  24. Phy interrupts : Each phy has 3 interrupt sources:
  25. - broadcast
  26. - phyup
  27. - abnormal
  28. The phy interrupts are ordered into groups of 3 per phy
  29. (broadcast, phyup, and abnormal) in increasing order.
  30. Completion queue interrupts : each completion queue has 1
  31. interrupt source.
  32. The interrupts are ordered in increasing order.
  33. Fatal interrupts : the fatal interrupts are ordered as follows:
  34. - ECC
  35. - AXI bus
  36. For v2 hw: Interrupts for phys, Sata, and completion queues;
  37. the interrupts are ordered in 3 groups, as follows:
  38. - Phy interrupts
  39. - Sata interrupts
  40. - Completion queue interrupts
  41. Phy interrupts : Each controller has 2 phy interrupts:
  42. - phy up/down
  43. - channel interrupt
  44. Sata interrupts : Each phy on the controller has 1 Sata
  45. interrupt. The interrupts are ordered in increasing
  46. order.
  47. Completion queue interrupts : each completion queue has 1
  48. interrupt source. The interrupts are ordered in
  49. increasing order.
  50. Optional main node properties:
  51. - hip06-sas-v2-quirk-amt : when set, indicates that the v2 controller has the
  52. "am-max-transmissions" limitation.
  53. - hisilicon,signal-attenuation : array of 3 32-bit values, containing de-emphasis,
  54. preshoot, and boost attenuation readings for the board. They
  55. are used to describe the signal attenuation of the board. These
  56. values' range is 7600 to 12400, and used to represent -24dB to
  57. 24dB.
  58. The formula is "y = (x-10000)/10000". For example, 10478
  59. means 4.78dB.
  60. Example:
  61. sas0: sas@c1000000 {
  62. compatible = "hisilicon,hip05-sas-v1";
  63. sas-addr = [50 01 88 20 16 00 00 0a];
  64. reg = <0x0 0xc1000000 0x0 0x10000>;
  65. hisilicon,sas-syscon = <&pcie_sas>;
  66. ctrl-reset-reg = <0xa60>;
  67. ctrl-reset-sts-reg = <0x5a30>;
  68. ctrl-clock-ena-reg = <0x338>;
  69. queue-count = <32>;
  70. phy-count = <8>;
  71. dma-coherent;
  72. interrupt-parent = <&mbigen_dsa>;
  73. interrupts = <259 4>,<263 4>,<264 4>,/* phy0 */
  74. <269 4>,<273 4>,<274 4>,/* phy1 */
  75. <279 4>,<283 4>,<284 4>,/* phy2 */
  76. <289 4>,<293 4>,<294 4>,/* phy3 */
  77. <299 4>,<303 4>,<304 4>,/* phy4 */
  78. <309 4>,<313 4>,<314 4>,/* phy5 */
  79. <319 4>,<323 4>,<324 4>,/* phy6 */
  80. <329 4>,<333 4>,<334 4>,/* phy7 */
  81. <336 1>,<337 1>,<338 1>,/* cq0-2 */
  82. <339 1>,<340 1>,<341 1>,/* cq3-5 */
  83. <342 1>,<343 1>,<344 1>,/* cq6-8 */
  84. <345 1>,<346 1>,<347 1>,/* cq9-11 */
  85. <348 1>,<349 1>,<350 1>,/* cq12-14 */
  86. <351 1>,<352 1>,<353 1>,/* cq15-17 */
  87. <354 1>,<355 1>,<356 1>,/* cq18-20 */
  88. <357 1>,<358 1>,<359 1>,/* cq21-23 */
  89. <360 1>,<361 1>,<362 1>,/* cq24-26 */
  90. <363 1>,<364 1>,<365 1>,/* cq27-29 */
  91. <366 1>,<367 1>/* cq30-31 */
  92. <376 4>,/* fatal ecc */
  93. <381 4>;/* fatal axi */
  94. };