📄 sysinfo_depend.h
字号:
/* *---------------------------------------------------------------------- * T-Kernel * * Copyright (C) 2004 by Ken Sakamura. All rights reserved. * T-Kernel is distributed under the T-License. *---------------------------------------------------------------------- * * Version: 1.01.00 * Released by T-Engine Forum(http://www.t-engine.org) at 2004/6/28. * *---------------------------------------------------------------------- *//* * @(#)sysinfo_depend.h (sys/MC9328) * * System common information * * 0x10004000 +-----------------------+ * |Exception vector table | * 0x10004400 +-----------------------+ * |System common info. | * 0x10004440 +-----------------------+ */#ifndef __SYS_SYSINFO_DEPEND_H__#define __SYS_SYSINFO_DEPEND_H__#ifdef __cplusplusextern "C" {#endif#ifndef _in_asm_source_/* * Boot mode/Operation mode */typedef union { struct { UW debug:1; /* When in debug mode 1 */ UW fsrcv:1; /* When in disk repair mode 1 */ UW rsv:12; /* Reserved (always 0) */ UW basic:1; /* When in basic operation mode 1 */ UW rsv2:17; /* Reserved (always 0) */ } c; UW w;} BootMode;#define BM_DEBUG 0x00000001 /* Debug mode */#define BM_FSRCV 0x00000002 /* Disk repair mode */#define BM_BASIC 0x00004000 /* Basic operation mode *//* * System shared information */typedef struct { VP ramtop; /* RAM free space top */ VP ramend; /* RAM free space end */ UB *sysconf; /* SYSCONF top */ UB *devconf; /* DEVCONF top */ W taskindp; /* Task independent context flag */ UW taskmode; /* Task mode flag */ UH perclk1; /* Peripheral clock 1 (1/100MHz) */ UH perclk2; /* Peripheral clock 2 (1/100MHz) */ UH perclk3; /* Peripheral clock 3 (1/100MHz) */ UH clko; /* External output clock (1/100MHz) */ UW loop64us; /* Loop count per 64 micro sec */ BootMode bm; /* Boot mode */ UB bootdev[8]; /* Boot device name */ VW rsv[4]; /* Reserved (always 0) */} SysCommonInfo;/* * System common area */#define N_INTVEC 256typedef struct { FP intvec[N_INTVEC]; /* EIT vector */ SysCommonInfo scinfo; /* System common information */} SysCommonArea;#define SCArea ( (SysCommonArea*)0x08004000 )#define SCInfo ( SCArea->scinfo )#endif /* _in_asm_source_ *//* Definitions used by assembler */#define TASKINDP (0x08004400 + 4*4) /* Task independent flag */#define TASKMODE (0x08004400 + 5*4) /* Task mode flag *//* * Vector table address */#define EIT_VECTBL 0x08004000 /* Vector table top */#define EITVEC(n) ( EIT_VECTBL + (n) * 4 )#define EIT_DEFAULT 0 /* Default handler */#define EIT_UNDEF 1 /* Undefined instruction */#define EIT_IABORT 2 /* Pre-fetch abort */#define EIT_DABORT 3 /* Data abort */#define EIT_FIQ 31 /* High-speed interrupt (FIQ) */#define EIT_IRQ(n) ( 32 + (n) ) /* Interrupt (IRQ 0-63) */#define EIT_GPA(n) ( 96 + (n) ) /* GPIO Port A interrupt (pin 0-31) */#define EIT_GPB(n) ( 128 + (n) ) /* GPIO Port B interrupt (pin 0-31) */#define EIT_GPC(n) ( 160 + (n) ) /* GPIO Port C interrupt (pin 0-31) */#define EIT_GPD(n) ( 192 + (n) ) /* GPIO Port D interrupt (pin 0-31) */#define EIT_FPGA1(n) ( 224 + (n) ) /* FPGA IRQ_STR1 interrupt (bit 0-7) */#define EIT_FPGA2(n) ( 232 + (n) ) /* FPGA IRQ_STR2 interrupt (bit 0-7) */#define EIT_EXBOARD 240 /* Extension board */#ifdef __cplusplus}#endif#endif /* __SYS_SYSINFO_DEPEND_H__ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -