sram.txt 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. Generic on-chip SRAM
  2. Simple IO memory regions to be managed by the genalloc API.
  3. Required properties:
  4. - compatible : mmio-sram or atmel,sama5d2-securam
  5. - reg : SRAM iomem address range
  6. Reserving sram areas:
  7. ---------------------
  8. Each child of the sram node specifies a region of reserved memory. Each
  9. child node should use a 'reg' property to specify a specific range of
  10. reserved memory.
  11. Following the generic-names recommended practice, node names should
  12. reflect the purpose of the node. Unit address (@<address>) should be
  13. appended to the name.
  14. Required properties in the sram node:
  15. - #address-cells, #size-cells : should use the same values as the root node
  16. - ranges : standard definition, should translate from local addresses
  17. within the sram to bus addresses
  18. Optional properties in the sram node:
  19. - no-memory-wc : the flag indicating, that SRAM memory region has not to
  20. be remapped as write combining. WC is used by default.
  21. Required properties in the area nodes:
  22. - reg : iomem address range, relative to the SRAM range
  23. Optional properties in the area nodes:
  24. - compatible : standard definition, should contain a vendor specific string
  25. in the form <vendor>,[<device>-]<usage>
  26. - pool : indicates that the particular reserved SRAM area is addressable
  27. and in use by another device or devices
  28. - export : indicates that the reserved SRAM area may be accessed outside
  29. of the kernel, e.g. by bootloader or userspace
  30. - protect-exec : Same as 'pool' above but with the additional
  31. constraint that code wil be run from the region and
  32. that the memory is maintained as read-only, executable
  33. during code execution. NOTE: This region must be page
  34. aligned on start and end in order to properly allow
  35. manipulation of the page attributes.
  36. - label : the name for the reserved partition, if omitted, the label
  37. is taken from the node name excluding the unit address.
  38. - clocks : a list of phandle and clock specifier pair that controls the
  39. single SRAM clock.
  40. Example:
  41. sram: sram@5c000000 {
  42. compatible = "mmio-sram";
  43. reg = <0x5c000000 0x40000>; /* 256 KiB SRAM at address 0x5c000000 */
  44. #address-cells = <1>;
  45. #size-cells = <1>;
  46. ranges = <0 0x5c000000 0x40000>;
  47. smp-sram@100 {
  48. compatible = "socvendor,smp-sram";
  49. reg = <0x100 0x50>;
  50. };
  51. device-sram@1000 {
  52. reg = <0x1000 0x1000>;
  53. pool;
  54. };
  55. exported@20000 {
  56. reg = <0x20000 0x20000>;
  57. export;
  58. };
  59. };