starfive,jh8100-starlink-cache.yaml 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/cache/starfive,jh8100-starlink-cache.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: StarFive StarLink Cache Controller
  7. maintainers:
  8. - Joshua Yeong <joshua.yeong@starfivetech.com>
  9. description:
  10. StarFive's StarLink Cache Controller manages the L3 cache shared between
  11. clusters of CPU cores. The cache driver enables RISC-V non-standard cache
  12. management as an alternative to instructions in the RISC-V Zicbom extension.
  13. allOf:
  14. - $ref: /schemas/cache-controller.yaml#
  15. # We need a select here so we don't match all nodes with 'cache'
  16. select:
  17. properties:
  18. compatible:
  19. contains:
  20. enum:
  21. - starfive,jh8100-starlink-cache
  22. required:
  23. - compatible
  24. properties:
  25. compatible:
  26. items:
  27. - const: starfive,jh8100-starlink-cache
  28. - const: cache
  29. reg:
  30. maxItems: 1
  31. unevaluatedProperties: false
  32. required:
  33. - compatible
  34. - reg
  35. - cache-block-size
  36. - cache-level
  37. - cache-sets
  38. - cache-size
  39. - cache-unified
  40. examples:
  41. - |
  42. soc {
  43. #address-cells = <2>;
  44. #size-cells = <2>;
  45. cache-controller@15000000 {
  46. compatible = "starfive,jh8100-starlink-cache", "cache";
  47. reg = <0x0 0x15000000 0x0 0x278>;
  48. cache-block-size = <64>;
  49. cache-level = <3>;
  50. cache-sets = <8192>;
  51. cache-size = <0x400000>;
  52. cache-unified;
  53. };
  54. };