sram.txt 1.99 KB
Newer Older
1 2 3 4 5 6
Generic on-chip SRAM

Simple IO memory regions to be managed by the genalloc API.

Required properties:

7
- compatible : mmio-sram or atmel,sama5d2-securam
8 9 10

- reg : SRAM iomem address range

11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
Reserving sram areas:
---------------------

Each child of the sram node specifies a region of reserved memory. Each
child node should use a 'reg' property to specify a specific range of
reserved memory.

Following the generic-names recommended practice, node names should
reflect the purpose of the node. Unit address (@<address>) should be
appended to the name.

Required properties in the sram node:

- #address-cells, #size-cells : should use the same values as the root node
- ranges : standard definition, should translate from local addresses
           within the sram to bus addresses

28 29 30 31 32
Optional properties in the sram node:

- no-memory-wc : the flag indicating, that SRAM memory region has not to
                 be remapped as write combining. WC is used by default.

33 34 35 36 37 38 39 40
Required properties in the area nodes:

- reg : iomem address range, relative to the SRAM range

Optional properties in the area nodes:

- compatible : standard definition, should contain a vendor specific string
               in the form <vendor>,[<device>-]<usage>
41 42 43 44 45 46
- pool : indicates that the particular reserved SRAM area is addressable
         and in use by another device or devices
- export : indicates that the reserved SRAM area may be accessed outside
           of the kernel, e.g. by bootloader or userspace
- label : the name for the reserved partition, if omitted, the label
          is taken from the node name excluding the unit address.
47

48 49 50 51 52
Example:

sram: sram@5c000000 {
	compatible = "mmio-sram";
	reg = <0x5c000000 0x40000>; /* 256 KiB SRAM at address 0x5c000000 */
53

54
	#address-cells = <1>;
55 56 57 58 59 60 61
	#size-cells = <1>;
	ranges = <0 0x5c000000 0x40000>;

	smp-sram@100 {
		compatible = "socvendor,smp-sram";
		reg = <0x100 0x50>;
	};
62 63 64 65 66 67 68 69 70 71

	device-sram@1000 {
		reg = <0x1000 0x1000>;
		pool;
	};

	exported@20000 {
		reg = <0x20000 0x20000>;
		export;
	};
72
};