mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-27 22:53:55 +08:00
48c926cd34
Improve the binding example by removing all the leading zeros to fix the following dtc warnings: Warning (unit_address_format): Node /XXX unit name should not have leading 0s Converted using the following command: perl -p -i -e 's/\@0+([0-9a-f])/\@$1/g' `find ./Documentation/devicetree/bindings "*.txt"` Some unnecessary changes were manually fixed. Signed-off-by: Marco Franchi <marco.franchi@nxp.com> Signed-off-by: Rob Herring <robh@kernel.org>
77 lines
1.9 KiB
Plaintext
77 lines
1.9 KiB
Plaintext
Allwinnner SoC SRAM controllers
|
|
-----------------------------------------------------
|
|
|
|
The SRAM controller found on most Allwinner devices is represented by
|
|
a regular node for the SRAM controller itself, with sub-nodes
|
|
reprensenting the SRAM handled by the SRAM controller.
|
|
|
|
Controller Node
|
|
---------------
|
|
|
|
Required properties:
|
|
- compatible : should be:
|
|
- "allwinner,sun4i-a10-sram-controller"
|
|
- "allwinner,sun50i-a64-sram-controller"
|
|
- reg : sram controller register offset + length
|
|
|
|
SRAM nodes
|
|
----------
|
|
|
|
Each SRAM is described using the mmio-sram bindings documented in
|
|
Documentation/devicetree/bindings/sram/sram.txt
|
|
|
|
Each SRAM will have SRAM sections that are going to be handled by the
|
|
SRAM controller as subnodes. These sections are represented following
|
|
once again the representation described in the mmio-sram binding.
|
|
|
|
The valid sections compatible for A10 are:
|
|
- allwinner,sun4i-a10-sram-a3-a4
|
|
- allwinner,sun4i-a10-sram-d
|
|
|
|
The valid sections compatible for A64 are:
|
|
- allwinner,sun50i-a64-sram-c
|
|
|
|
Devices using SRAM sections
|
|
---------------------------
|
|
|
|
Some devices need to request to the SRAM controller to map an SRAM for
|
|
their exclusive use.
|
|
|
|
The relationship between such a device and an SRAM section is
|
|
expressed through the allwinner,sram property, that will take a
|
|
phandle and an argument.
|
|
|
|
This valid values for this argument are:
|
|
- 0: CPU
|
|
- 1: Device
|
|
|
|
Example
|
|
-------
|
|
sram-controller@1c00000 {
|
|
compatible = "allwinner,sun4i-a10-sram-controller";
|
|
reg = <0x01c00000 0x30>;
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
ranges;
|
|
|
|
sram_a: sram@00000000 {
|
|
compatible = "mmio-sram";
|
|
reg = <0x00000000 0xc000>;
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
ranges = <0 0x00000000 0xc000>;
|
|
|
|
emac_sram: sram-section@8000 {
|
|
compatible = "allwinner,sun4i-a10-sram-a3-a4";
|
|
reg = <0x8000 0x4000>;
|
|
};
|
|
};
|
|
};
|
|
|
|
emac: ethernet@1c0b000 {
|
|
compatible = "allwinner,sun4i-a10-emac";
|
|
...
|
|
|
|
allwinner,sram = <&emac_sram 1>;
|
|
};
|