2 * tie.h -- compile-time HAL definitions dependent on CORE & TIE configuration
4 * NOTE: This header file is not meant to be included directly.
8 * This header file describes this specific Xtensa processor's TIE extensions
9 * that extend basic Xtensa core functionality. It is customized to this
10 * Xtensa processor configuration.
12 * Customer ID=4748; Build=0x2230f; Copyright (C) 1999-2008 by Tensilica Inc. ALL RIGHTS RESERVED.
13 * These coded instructions, statements, and computer programs are the
14 * copyrighted works and confidential proprietary information of Tensilica Inc.
15 * They may not be modified, copied, reproduced, distributed, or disclosed to
16 * third parties in any manner, medium, or form, in whole or in part, without
17 * the prior written consent of Tensilica Inc.
20 #ifndef _XTENSA_CORE_TIE_H
21 #define _XTENSA_CORE_TIE_H
23 #define XCHAL_CP_NUM 0 /* number of coprocessors */
24 #define XCHAL_CP_MAX 0 /* max CP ID + 1 (0 if none) */
25 #define XCHAL_CP_MASK 0x00 /* bitmask of all CPs by ID */
26 #define XCHAL_CP_PORT_MASK 0x00 /* bitmask of only port CPs */
28 /* Save area for non-coprocessor optional and custom (TIE) state: */
29 #define XCHAL_NCP_SA_SIZE 4
30 #define XCHAL_NCP_SA_ALIGN 4
32 /* Total save area for optional and custom state (NCP + CPn): */
33 #define XCHAL_TOTAL_SA_SIZE 16 /* with 16-byte align padding */
34 #define XCHAL_TOTAL_SA_ALIGN 4 /* actual minimum alignment */
37 * Detailed contents of save areas.
38 * NOTE: caller must define the XCHAL_SA_{UREG,SREG,REGF} macros (they
39 * are not defined here) before expanding the XCHAL_SA_xxx_LIST macros.
41 * XCHAL_SA_SREG(dbnum,offset,size,contentsz,align,name,sregnum,bitmask,x,x)
42 * XCHAL_SA_UREG(dbnum,offset,size,contentsz,align,name,uregnum,bitmask,x,x)
43 * XCHAL_SA_REGF(dbnum,offset,size,contentsz,align,name,index,span,x,x,
44 * basename,regf_name,regf_numentries)
47 #define XCHAL_SA_NCP_NUM 1
48 #define XCHAL_SA_NCP_LIST \
49 XCHAL_SA_SREG(0x020C, 0, 4, 4, 4, scompare1, 12,0xFFFFFFFF,0,0)
51 /* Byte length of instruction from its first nibble (op0 field), per FLIX. */
52 #define XCHAL_OP0_FORMAT_LENGTHS 3,3,3,3,3,3,3,3,2,2,2,2,2,2,3,3
54 #endif /*_XTENSA_CORE_TIE_H*/