rockchip-sfc.yaml 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/spi/rockchip-sfc.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: Rockchip Serial Flash Controller (SFC)
  7. maintainers:
  8. - Heiko Stuebner <heiko@sntech.de>
  9. - Chris Morgan <macromorgan@hotmail.com>
  10. allOf:
  11. - $ref: spi-controller.yaml#
  12. properties:
  13. compatible:
  14. const: rockchip,sfc
  15. description:
  16. The rockchip sfc controller is a standalone IP with version register,
  17. and the driver can handle all the feature difference inside the IP
  18. depending on the version register.
  19. reg:
  20. maxItems: 1
  21. interrupts:
  22. maxItems: 1
  23. clocks:
  24. items:
  25. - description: Bus Clock
  26. - description: Module Clock
  27. clock-names:
  28. items:
  29. - const: clk_sfc
  30. - const: hclk_sfc
  31. power-domains:
  32. maxItems: 1
  33. rockchip,sfc-no-dma:
  34. description: Disable DMA and utilize FIFO mode only
  35. type: boolean
  36. patternProperties:
  37. "^flash@[0-3]$":
  38. type: object
  39. additionalProperties: true
  40. properties:
  41. reg:
  42. minimum: 0
  43. maximum: 3
  44. required:
  45. - compatible
  46. - reg
  47. - interrupts
  48. - clocks
  49. - clock-names
  50. unevaluatedProperties: false
  51. examples:
  52. - |
  53. #include <dt-bindings/clock/px30-cru.h>
  54. #include <dt-bindings/interrupt-controller/arm-gic.h>
  55. #include <dt-bindings/power/px30-power.h>
  56. sfc: spi@ff3a0000 {
  57. compatible = "rockchip,sfc";
  58. reg = <0xff3a0000 0x4000>;
  59. interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
  60. clocks = <&cru SCLK_SFC>, <&cru HCLK_SFC>;
  61. clock-names = "clk_sfc", "hclk_sfc";
  62. pinctrl-0 = <&sfc_clk &sfc_cs &sfc_bus2>;
  63. pinctrl-names = "default";
  64. power-domains = <&power PX30_PD_MMC_NAND>;
  65. #address-cells = <1>;
  66. #size-cells = <0>;
  67. flash@0 {
  68. compatible = "jedec,spi-nor";
  69. reg = <0>;
  70. spi-max-frequency = <108000000>;
  71. spi-rx-bus-width = <2>;
  72. spi-tx-bus-width = <2>;
  73. };
  74. };
  75. ...