61 lines
2.0 KiB
Plaintext
61 lines
2.0 KiB
Plaintext
UniPhier outer cache controller
|
|
|
|
UniPhier SoCs are integrated with a full-custom outer cache controller system.
|
|
All of them have a level 2 cache controller, and some have a level 3 cache
|
|
controller as well.
|
|
|
|
Required properties:
|
|
- compatible: should be "socionext,uniphier-system-cache"
|
|
- reg: offsets and lengths of the register sets for the device. It should
|
|
contain 3 regions: control register, revision register, operation register,
|
|
in this order.
|
|
- cache-unified: specifies the cache is a unified cache.
|
|
- cache-size: specifies the size in bytes of the cache
|
|
- cache-sets: specifies the number of associativity sets of the cache
|
|
- cache-line-size: specifies the line size in bytes
|
|
- cache-level: specifies the level in the cache hierarchy. The value should
|
|
be 2 for L2 cache, 3 for L3 cache, etc.
|
|
|
|
Optional properties:
|
|
- next-level-cache: phandle to the next level cache if present. The next level
|
|
cache should be also compatible with "socionext,uniphier-system-cache".
|
|
|
|
The L2 cache must exist to use the L3 cache; the cache hierarchy must be
|
|
indicated correctly with "next-level-cache" properties.
|
|
|
|
Example 1 (system with L2):
|
|
l2: l2-cache@500c0000 {
|
|
compatible = "socionext,uniphier-system-cache";
|
|
reg = <0x500c0000 0x2000>, <0x503c0100 0x4>,
|
|
<0x506c0000 0x400>;
|
|
cache-unified;
|
|
cache-size = <0x80000>;
|
|
cache-sets = <256>;
|
|
cache-line-size = <128>;
|
|
cache-level = <2>;
|
|
};
|
|
|
|
Example 2 (system with L2 and L3):
|
|
l2: l2-cache@500c0000 {
|
|
compatible = "socionext,uniphier-system-cache";
|
|
reg = <0x500c0000 0x2000>, <0x503c0100 0x8>,
|
|
<0x506c0000 0x400>;
|
|
cache-unified;
|
|
cache-size = <0x200000>;
|
|
cache-sets = <512>;
|
|
cache-line-size = <128>;
|
|
cache-level = <2>;
|
|
next-level-cache = <&l3>;
|
|
};
|
|
|
|
l3: l3-cache@500c8000 {
|
|
compatible = "socionext,uniphier-system-cache";
|
|
reg = <0x500c8000 0x2000>, <0x503c8100 0x8>,
|
|
<0x506c8000 0x400>;
|
|
cache-unified;
|
|
cache-size = <0x400000>;
|
|
cache-sets = <512>;
|
|
cache-line-size = <256>;
|
|
cache-level = <3>;
|
|
};
|