56 lines
		
	
	
	
		
			1.8 KiB
			
		
	
	
	
		
			C
		
	
	
	
	
	
		
		
			
		
	
	
			56 lines
		
	
	
	
		
			1.8 KiB
			
		
	
	
	
		
			C
		
	
	
	
	
	
| 
								 | 
							
								/*
							 | 
						||
| 
								 | 
							
								 * AURORA shared L2 cache controller support
							 | 
						||
| 
								 | 
							
								 *
							 | 
						||
| 
								 | 
							
								 * Copyright (C) 2012 Marvell
							 | 
						||
| 
								 | 
							
								 *
							 | 
						||
| 
								 | 
							
								 * Yehuda Yitschak <yehuday@marvell.com>
							 | 
						||
| 
								 | 
							
								 * Gregory CLEMENT <gregory.clement@free-electrons.com>
							 | 
						||
| 
								 | 
							
								 *
							 | 
						||
| 
								 | 
							
								 * This file is licensed under the terms of the GNU General Public
							 | 
						||
| 
								 | 
							
								 * License version 2.  This program is licensed "as is" without any
							 | 
						||
| 
								 | 
							
								 * warranty of any kind, whether express or implied.
							 | 
						||
| 
								 | 
							
								 */
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#ifndef __ASM_ARM_HARDWARE_AURORA_L2_H
							 | 
						||
| 
								 | 
							
								#define __ASM_ARM_HARDWARE_AURORA_L2_H
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#define AURORA_SYNC_REG		    0x700
							 | 
						||
| 
								 | 
							
								#define AURORA_RANGE_BASE_ADDR_REG  0x720
							 | 
						||
| 
								 | 
							
								#define AURORA_FLUSH_PHY_ADDR_REG   0x7f0
							 | 
						||
| 
								 | 
							
								#define AURORA_INVAL_RANGE_REG	    0x774
							 | 
						||
| 
								 | 
							
								#define AURORA_CLEAN_RANGE_REG	    0x7b4
							 | 
						||
| 
								 | 
							
								#define AURORA_FLUSH_RANGE_REG	    0x7f4
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#define AURORA_ACR_REPLACEMENT_OFFSET	    27
							 | 
						||
| 
								 | 
							
								#define AURORA_ACR_REPLACEMENT_MASK	     \
							 | 
						||
| 
								 | 
							
									(0x3 << AURORA_ACR_REPLACEMENT_OFFSET)
							 | 
						||
| 
								 | 
							
								#define AURORA_ACR_REPLACEMENT_TYPE_WAYRR    \
							 | 
						||
| 
								 | 
							
									(0 << AURORA_ACR_REPLACEMENT_OFFSET)
							 | 
						||
| 
								 | 
							
								#define AURORA_ACR_REPLACEMENT_TYPE_LFSR     \
							 | 
						||
| 
								 | 
							
									(1 << AURORA_ACR_REPLACEMENT_OFFSET)
							 | 
						||
| 
								 | 
							
								#define AURORA_ACR_REPLACEMENT_TYPE_SEMIPLRU \
							 | 
						||
| 
								 | 
							
									(3 << AURORA_ACR_REPLACEMENT_OFFSET)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#define AURORA_ACR_FORCE_WRITE_POLICY_OFFSET	0
							 | 
						||
| 
								 | 
							
								#define AURORA_ACR_FORCE_WRITE_POLICY_MASK	\
							 | 
						||
| 
								 | 
							
									(0x3 << AURORA_ACR_FORCE_WRITE_POLICY_OFFSET)
							 | 
						||
| 
								 | 
							
								#define AURORA_ACR_FORCE_WRITE_POLICY_DIS	\
							 | 
						||
| 
								 | 
							
									(0 << AURORA_ACR_FORCE_WRITE_POLICY_OFFSET)
							 | 
						||
| 
								 | 
							
								#define AURORA_ACR_FORCE_WRITE_BACK_POLICY	\
							 | 
						||
| 
								 | 
							
									(1 << AURORA_ACR_FORCE_WRITE_POLICY_OFFSET)
							 | 
						||
| 
								 | 
							
								#define AURORA_ACR_FORCE_WRITE_THRO_POLICY	\
							 | 
						||
| 
								 | 
							
									(2 << AURORA_ACR_FORCE_WRITE_POLICY_OFFSET)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#define MAX_RANGE_SIZE		1024
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#define AURORA_WAY_SIZE_SHIFT	2
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#define AURORA_CTRL_FW		0x100
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								/* chose a number outside L2X0_CACHE_ID_PART_MASK to be sure to make
							 | 
						||
| 
								 | 
							
								 * the distinction between a number coming from hardware and a number
							 | 
						||
| 
								 | 
							
								 * coming from the device tree */
							 | 
						||
| 
								 | 
							
								#define AURORA_CACHE_ID	       0x100
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#endif /* __ASM_ARM_HARDWARE_AURORA_L2_H */
							 |