⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 core.h

📁 linux-2.6.15.6
💻 H
📖 第 1 页 / 共 5 页
字号:
/*----------------------------------------------------------------------				DEBUG  ----------------------------------------------------------------------*/#define XCHAL_HAVE_DEBUG		1	/* 1 if debug option configured, 0 otherwise */#define XCHAL_HAVE_OCD			1	/* 1 if OnChipDebug option configured, 0 otherwise */#define XCHAL_NUM_IBREAK		2	/* number of IBREAKn regs */#define XCHAL_NUM_DBREAK		2	/* number of DBREAKn regs */#define XCHAL_DEBUGLEVEL		4	/* debug interrupt level *//*DebugExternalInterrupt		0		0|1*//*DebugUseDIRArray			0		0|1*//*----------------------------------------------------------------------			COPROCESSORS and EXTRA STATE  ----------------------------------------------------------------------*/#define XCHAL_HAVE_CP			0	/* 1 if coprocessor option configured (CPENABLE present) */#define XCHAL_CP_MAXCFG			0	/* max allowed cp id plus one (per cfg) */#include <xtensa/config/tie.h>/*----------------------------------------------------------------------			INTERNAL I/D RAM/ROMs and XLMI  ----------------------------------------------------------------------*/#define XCHAL_NUM_INSTROM		0	/* number of core instruction ROMs configured */#define XCHAL_NUM_INSTRAM		0	/* number of core instruction RAMs configured */#define XCHAL_NUM_DATAROM		0	/* number of core data ROMs configured */#define XCHAL_NUM_DATARAM		0	/* number of core data RAMs configured */#define XCHAL_NUM_XLMI			0	/* number of core XLMI ports configured */#define  XCHAL_NUM_IROM			XCHAL_NUM_INSTROM	/* (DEPRECATED) */#define  XCHAL_NUM_IRAM			XCHAL_NUM_INSTRAM	/* (DEPRECATED) */#define  XCHAL_NUM_DROM			XCHAL_NUM_DATAROM	/* (DEPRECATED) */#define  XCHAL_NUM_DRAM			XCHAL_NUM_DATARAM	/* (DEPRECATED) *//*----------------------------------------------------------------------				CACHE  ----------------------------------------------------------------------*//*  Size of the cache lines in log2(bytes):  */#define XCHAL_ICACHE_LINEWIDTH		4#define XCHAL_DCACHE_LINEWIDTH		4/*  Size of the cache lines in bytes:  */#define XCHAL_ICACHE_LINESIZE		16#define XCHAL_DCACHE_LINESIZE		16/*  Max for both I-cache and D-cache (used for general alignment):  */#define XCHAL_CACHE_LINEWIDTH_MAX	4#define XCHAL_CACHE_LINESIZE_MAX	16/*  Number of cache sets in log2(lines per way):  */#define XCHAL_ICACHE_SETWIDTH		8#define XCHAL_DCACHE_SETWIDTH		8/*  Max for both I-cache and D-cache (used for general cache-coherency page alignment):  */#define XCHAL_CACHE_SETWIDTH_MAX	8#define XCHAL_CACHE_SETSIZE_MAX		256/*  Cache set associativity (number of ways):  */#define XCHAL_ICACHE_WAYS		2#define XCHAL_DCACHE_WAYS		2/*  Size of the caches in bytes (ways * 2^(linewidth + setwidth)):  */#define XCHAL_ICACHE_SIZE		8192#define XCHAL_DCACHE_SIZE		8192/*  Cache features:  */#define XCHAL_DCACHE_IS_WRITEBACK	0/*  Whether cache locking feature is available:  */#define XCHAL_ICACHE_LINE_LOCKABLE	0#define XCHAL_DCACHE_LINE_LOCKABLE	0/*  Number of (encoded) cache attribute bits:  */#define XCHAL_CA_BITS			4	/* number of bits needed to hold cache attribute encoding *//*  (The number of access mode bits (decoded cache attribute bits) is defined by the architecture; see xtensa/hal.h?)  *//*  Cache Attribute encodings -- lists of access modes for each cache attribute:  */#define XCHAL_FCA_LIST		XTHAL_FAM_EXCEPTION	XCHAL_SEP \				XTHAL_FAM_BYPASS	XCHAL_SEP \				XTHAL_FAM_EXCEPTION	XCHAL_SEP \				XTHAL_FAM_BYPASS	XCHAL_SEP \				XTHAL_FAM_EXCEPTION	XCHAL_SEP \				XTHAL_FAM_CACHED	XCHAL_SEP \				XTHAL_FAM_EXCEPTION	XCHAL_SEP \				XTHAL_FAM_CACHED	XCHAL_SEP \				XTHAL_FAM_EXCEPTION	XCHAL_SEP \				XTHAL_FAM_CACHED	XCHAL_SEP \				XTHAL_FAM_EXCEPTION	XCHAL_SEP \				XTHAL_FAM_CACHED	XCHAL_SEP \				XTHAL_FAM_EXCEPTION	XCHAL_SEP \				XTHAL_FAM_EXCEPTION	XCHAL_SEP \				XTHAL_FAM_EXCEPTION	XCHAL_SEP \				XTHAL_FAM_EXCEPTION#define XCHAL_LCA_LIST		XTHAL_LAM_EXCEPTION	XCHAL_SEP \				XTHAL_LAM_BYPASSG	XCHAL_SEP \				XTHAL_LAM_EXCEPTION	XCHAL_SEP \				XTHAL_LAM_BYPASSG	XCHAL_SEP \				XTHAL_LAM_EXCEPTION	XCHAL_SEP \				XTHAL_LAM_CACHED	XCHAL_SEP \				XTHAL_LAM_EXCEPTION	XCHAL_SEP \				XTHAL_LAM_CACHED	XCHAL_SEP \				XTHAL_LAM_EXCEPTION	XCHAL_SEP \				XTHAL_LAM_NACACHED	XCHAL_SEP \				XTHAL_LAM_EXCEPTION	XCHAL_SEP \				XTHAL_LAM_NACACHED	XCHAL_SEP \				XTHAL_LAM_EXCEPTION	XCHAL_SEP \				XTHAL_LAM_ISOLATE	XCHAL_SEP \				XTHAL_LAM_EXCEPTION	XCHAL_SEP \				XTHAL_LAM_CACHED#define XCHAL_SCA_LIST		XTHAL_SAM_EXCEPTION	XCHAL_SEP \				XTHAL_SAM_EXCEPTION	XCHAL_SEP \				XTHAL_SAM_EXCEPTION	XCHAL_SEP \				XTHAL_SAM_BYPASS	XCHAL_SEP \				XTHAL_SAM_EXCEPTION	XCHAL_SEP \				XTHAL_SAM_EXCEPTION	XCHAL_SEP \				XTHAL_SAM_EXCEPTION	XCHAL_SEP \				XTHAL_SAM_WRITETHRU	XCHAL_SEP \				XTHAL_SAM_EXCEPTION	XCHAL_SEP \				XTHAL_SAM_EXCEPTION	XCHAL_SEP \				XTHAL_SAM_EXCEPTION	XCHAL_SEP \				XTHAL_SAM_WRITETHRU	XCHAL_SEP \				XTHAL_SAM_EXCEPTION	XCHAL_SEP \				XTHAL_SAM_ISOLATE	XCHAL_SEP \				XTHAL_SAM_EXCEPTION	XCHAL_SEP \				XTHAL_SAM_WRITETHRU/*  Test:	read/only: 0 + 1 + 2 + 4 + 5 + 6 + 8 + 9 + 10 + 12 + 14	read/only: 0 + 1 + 2 + 4 + 5 + 6 + 8 + 9 + 10 + 12 + 14	all:       0 + 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 + 11 + 12 + 13 + 14 + 15	fault:     0 + 2 + 4 + 6 + 8 + 10 + 12 + 14	r/w/x cached:	r/w/x dcached:	I-bypass:  1 + 3	load guard bit set: 1 + 3	load guard bit clr: 0 + 2 + 4 + 5 + 6 + 7 + 8 + 9 + 10 + 11 + 12 + 13 + 14 + 15	hit-cache r/w/x: 7 + 11	fams: 5	fams: 0 / 6 / 18 / 1 / 2	fams: Bypass / Isolate / Cached / Exception / NACached        MMU okay:  yes*//*----------------------------------------------------------------------				MMU  ----------------------------------------------------------------------*//* *  General notes on MMU parameters. * *  Terminology: *	ASID = address-space ID (acts as an "extension" of virtual addresses) *	VPN  = virtual page number *	PPN  = physical page number *	CA   = encoded cache attribute (access modes) *	TLB  = translation look-aside buffer (term is stretched somewhat here) *	I    = instruction (fetch accesses) *	D    = data (load and store accesses) *	way  = each TLB (ITLB and DTLB) consists of a number of "ways" *		that simultaneously match the virtual address of an access; *		a TLB successfully translates a virtual address if exactly *		one way matches the vaddr; if none match, it is a miss; *		if multiple match, one gets a "multihit" exception; *		each way can be independently configured in terms of number of *		entries, page sizes, which fields are writable or constant, etc. *	set  = group of contiguous ways with exactly identical parameters *	ARF  = auto-refill; hardware services a 1st-level miss by loading a PTE *		from the page table and storing it in one of the auto-refill ways; *		if this PTE load also misses, a miss exception is posted for s/w. *	min-wired = a "min-wired" way can be used to map a single (minimum-sized) * 		page arbitrarily under program control; it has a single entry, *		is non-auto-refill (some other way(s) must be auto-refill), *		all its fields (VPN, PPN, ASID, CA) are all writable, and it *		supports the XCHAL_MMU_MIN_PTE_PAGE_SIZE page size (a current *		restriction is that this be the only page size it supports). * *  TLB way entries are virtually indexed. *  TLB ways that support multiple page sizes: *	- must have all writable VPN and PPN fields; *	- can only use one page size at any given time (eg. setup at startup), *	  selected by the respective ITLBCFG or DTLBCFG special register, *	  whose bits n*4+3 .. n*4 index the list of page sizes for way n *	  (XCHAL_xTLB_SETm_PAGESZ_LOG2_LIST for set m corresponding to way n); *	  this list may be sparse for auto-refill ways because auto-refill *	  ways have independent lists of supported page sizes sharing a *	  common encoding with PTE entries; the encoding is the index into *	  this list; unsupported sizes for a given way are zero in the list; *	  selecting unsupported sizes results in undefined hardware behaviour; *	- is only possible for ways 0 thru 7 (due to ITLBCFG/DTLBCFG definition). */#define XCHAL_HAVE_CACHEATTR		0	/* 1 if CACHEATTR register present, 0 if TLBs present instead */#define XCHAL_HAVE_TLBS			1	/* 1 if TLBs present, 0 if CACHEATTR present instead */#define XCHAL_HAVE_MMU			XCHAL_HAVE_TLBS	/* (DEPRECATED; use XCHAL_HAVE_TLBS instead; will be removed in future release) */#define XCHAL_HAVE_SPANNING_WAY		0	/* 1 if single way maps entire virtual address space in I+D */#define XCHAL_HAVE_IDENTITY_MAP		0	/* 1 if virtual addr == physical addr always, 0 otherwise */#define XCHAL_HAVE_MIMIC_CACHEATTR	0	/* 1 if have MMU that mimics a CACHEATTR config (CaMMU) */#define XCHAL_HAVE_XLT_CACHEATTR	0	/* 1 if have MMU that mimics a CACHEATTR config, but with translation (CaXltMMU) */#define XCHAL_MMU_ASID_BITS		8	/* number of bits in ASIDs (address space IDs) */#define XCHAL_MMU_ASID_INVALID		0	/* ASID value indicating invalid address space */#define XCHAL_MMU_ASID_KERNEL		1	/* ASID value indicating kernel (ring 0) address space */#define XCHAL_MMU_RINGS			4	/* number of rings supported (1..4) */#define XCHAL_MMU_RING_BITS		2	/* number of bits needed to hold ring number */#define XCHAL_MMU_SR_BITS		0	/* number of size-restriction bits supported */#define XCHAL_MMU_CA_BITS		4	/* number of bits needed to hold cache attribute encoding */#define XCHAL_MMU_MAX_PTE_PAGE_SIZE	12	/* max page size in a PTE structure (log2) */#define XCHAL_MMU_MIN_PTE_PAGE_SIZE	12	/* min page size in a PTE structure (log2) *//***  Instruction TLB:  ***/#define XCHAL_ITLB_WAY_BITS		3	/* number of bits holding the ways */#define XCHAL_ITLB_WAYS			7	/* number of ways (n-way set-associative TLB) */#define XCHAL_ITLB_ARF_WAYS		4	/* number of auto-refill ways */#define XCHAL_ITLB_SETS			4	/* number of sets (groups of ways with identical settings) *//*  Way set to which each way belongs:  */#define XCHAL_ITLB_WAY0_SET		0#define XCHAL_ITLB_WAY1_SET		0#define XCHAL_ITLB_WAY2_SET		0#define XCHAL_ITLB_WAY3_SET		0#define XCHAL_ITLB_WAY4_SET		1#define XCHAL_ITLB_WAY5_SET		2#define XCHAL_ITLB_WAY6_SET		3/*  Ways sets that are used by hardware auto-refill (ARF):  */#define XCHAL_ITLB_ARF_SETS		1	/* number of auto-refill sets */#define XCHAL_ITLB_ARF_SET0		0	/* index of n'th auto-refill set */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -