Add device tree bindings for SiFive FU540 L2 cache controller driver Signed-off-by: Yash Shah <yash.shah@sifive.com> Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Palmer Dabbelt <palmer@sifive.com>
		
			
				
	
	
		
			52 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			52 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| SiFive L2 Cache Controller
 | |
| --------------------------
 | |
| The SiFive Level 2 Cache Controller is used to provide access to fast copies
 | |
| of memory for masters in a Core Complex. The Level 2 Cache Controller also
 | |
| acts as directory-based coherency manager.
 | |
| All the properties in ePAPR/DeviceTree specification applies for this platform
 | |
| 
 | |
| Required Properties:
 | |
| --------------------
 | |
| - compatible: Should be "sifive,fu540-c000-ccache" and "cache"
 | |
| 
 | |
| - cache-block-size: Specifies the block size in bytes of the cache.
 | |
|   Should be 64
 | |
| 
 | |
| - cache-level: Should be set to 2 for a level 2 cache
 | |
| 
 | |
| - cache-sets: Specifies the number of associativity sets of the cache.
 | |
|   Should be 1024
 | |
| 
 | |
| - cache-size: Specifies the size in bytes of the cache. Should be 2097152
 | |
| 
 | |
| - cache-unified: Specifies the cache is a unified cache
 | |
| 
 | |
| - interrupts: Must contain 3 entries (DirError, DataError and DataFail signals)
 | |
| 
 | |
| - reg: Physical base address and size of L2 cache controller registers map
 | |
| 
 | |
| Optional Properties:
 | |
| --------------------
 | |
| - next-level-cache: phandle to the next level cache if present.
 | |
| 
 | |
| - memory-region: reference to the reserved-memory for the L2 Loosely Integrated
 | |
|   Memory region. The reserved memory node should be defined as per the bindings
 | |
|   in reserved-memory.txt
 | |
| 
 | |
| 
 | |
| Example:
 | |
| 
 | |
| 	cache-controller@2010000 {
 | |
| 		compatible = "sifive,fu540-c000-ccache", "cache";
 | |
| 		cache-block-size = <64>;
 | |
| 		cache-level = <2>;
 | |
| 		cache-sets = <1024>;
 | |
| 		cache-size = <2097152>;
 | |
| 		cache-unified;
 | |
| 		interrupt-parent = <&plic0>;
 | |
| 		interrupts = <1 2 3>;
 | |
| 		reg = <0x0 0x2010000 0x0 0x1000>;
 | |
| 		next-level-cache = <&L25 &L40 &L36>;
 | |
| 		memory-region = <&l2_lim>;
 | |
| 	};
 |