mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-27 22:35:11 +07:00
22697acdd7
SRAM bindings for various SoCs, using the mmio-sram genalloc API, are spread over different places - per SoC vendor. Since all of these are quite similar (they depend on mmio-sram) move them to a common place. Suggested-by: Rob Herring <robh+dt@kernel.org> Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Cc: Heiko Stuebner <heiko@sntech.de> Cc: Maxime Ripard <maxime.ripard@free-electrons.com> Cc: Chen-Yu Tsai <wens@csie.org> Cc: Kukjin Kim <kgene@kernel.org> Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com> Acked-by: Heiko Stuebner <heiko@sntech.de> Signed-off-by: Rob Herring <robh@kernel.org>
68 lines
1.8 KiB
Plaintext
68 lines
1.8 KiB
Plaintext
Generic on-chip SRAM
|
|
|
|
Simple IO memory regions to be managed by the genalloc API.
|
|
|
|
Required properties:
|
|
|
|
- compatible : mmio-sram
|
|
|
|
- reg : SRAM iomem address range
|
|
|
|
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
|
|
|
|
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>
|
|
- 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.
|
|
|
|
Example:
|
|
|
|
sram: sram@5c000000 {
|
|
compatible = "mmio-sram";
|
|
reg = <0x5c000000 0x40000>; /* 256 KiB SRAM at address 0x5c000000 */
|
|
|
|
#adress-cells = <1>;
|
|
#size-cells = <1>;
|
|
ranges = <0 0x5c000000 0x40000>;
|
|
|
|
smp-sram@100 {
|
|
compatible = "socvendor,smp-sram";
|
|
reg = <0x100 0x50>;
|
|
};
|
|
|
|
device-sram@1000 {
|
|
reg = <0x1000 0x1000>;
|
|
pool;
|
|
};
|
|
|
|
exported@20000 {
|
|
reg = <0x20000 0x20000>;
|
|
export;
|
|
};
|
|
};
|