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

📄 sys_api.h

📁 MIPS下的boottloader yamon 的源代码
💻 H
📖 第 1 页 / 共 4 页
字号:
/************************************************************************
 *
 *                          CP0_entrylo0_write
 *  Description :
 *  -------------
 *  Write the CP0 register, 'entrylo0', ($2).
 *  
 *  Parameters :
 *  ------------
 *  'val': 32 bit value to be written into CP0-register
 *  
 *
 *  Return values :
 *  ---------------
 *  -
 *
 ************************************************************************/
void CP0_entrylo0_write( UINT32 val ) ;


/************************************************************************
 *
 *                          CP0_entrylo1_write
 *  Description :
 *  -------------
 *  Write the CP0 register, 'entrylo1', ($3).
 *  
 *  Parameters :
 *  ------------
 *  'val': 32 bit value to be written into CP0-register
 *  
 *
 *  Return values :
 *  ---------------
 *  -
 *
 ************************************************************************/
void CP0_entrylo1_write( UINT32 val ) ;


/************************************************************************
 *
 *                          CP0_context_write
 *  Description :
 *  -------------
 *  Write the CP0 register, 'context', ($4).
 *  
 *  Parameters :
 *  ------------
 *  'val': 32 bit value to be written into CP0-register
 *  
 *
 *  Return values :
 *  ---------------
 *  -
 *
 ************************************************************************/
void CP0_context_write( UINT32 val ) ;


/************************************************************************
 *
 *                          CP0_pagemask_write
 *  Description :
 *  -------------
 *  Write the CP0 register, 'pagemask', ($5).
 *  
 *  Parameters :
 *  ------------
 *  'val': 32 bit value to be written into CP0-register
 *  
 *
 *  Return values :
 *  ---------------
 *  -
 *
 ************************************************************************/
void CP0_pagemask_write( UINT32 val ) ;


/************************************************************************
 *
 *                          CP0_wired_write
 *  Description :
 *  -------------
 *  Write the CP0 register, 'wired', ($6).
 *  
 *  Parameters :
 *  ------------
 *  'val': 32 bit value to be written into CP0-register
 *  
 *
 *  Return values :
 *  ---------------
 *  -
 *
 ************************************************************************/
void CP0_wired_write( UINT32 val ) ;


/************************************************************************
 *
 *                          CP0_count_write
 *  Description :
 *  -------------
 *  Write the CP0 register, 'count', ($9).
 *  
 *  Parameters :
 *  ------------
 *  'val': 32 bit value to be written into CP0-register
 *  
 *
 *  Return values :
 *  ---------------
 *  -
 *
 ************************************************************************/
void CP0_count_write( UINT32 val ) ;


/************************************************************************
 *
 *                          CP0_entryhi_write
 *  Description :
 *  -------------
 *  Write the CP0 register, 'entryhi', ($10).
 *  
 *  Parameters :
 *  ------------
 *  'val': 32 bit value to be written into CP0-register
 *  
 *
 *  Return values :
 *  ---------------
 *  -
 *
 ************************************************************************/
void CP0_entryhi_write( UINT32 val ) ;


/************************************************************************
 *
 *                          CP0_compare_write
 *  Description :
 *  -------------
 *  Write the CP0 register, 'compare', ($11).
 *  
 *  Parameters :
 *  ------------
 *  'val': 32 bit value to be written into CP0-register
 *  
 *
 *  Return values :
 *  ---------------
 *  -
 *
 ************************************************************************/
void CP0_compare_write( UINT32 val ) ;


/************************************************************************
 *
 *                          CP0_status_write
 *  Description :
 *  -------------
 *  Write the CP0 register, 'status', ($12).
 *  
 *  Parameters :
 *  ------------
 *  'val': 32 bit value to be written into CP0-register
 *  
 *
 *  Return values :
 *  ---------------
 *  -
 *
 ************************************************************************/
void CP0_status_write( UINT32 val ) ;


/************************************************************************
 *
 *                          CP0_cause_write
 *  Description :
 *  -------------
 *  Write the CP0 register, 'cause', ($13).
 *  
 *  Parameters :
 *  ------------
 *  'val': 32 bit value to be written into CP0-register
 *  
 *
 *  Return values :
 *  ---------------
 *  -
 *
 ************************************************************************/
void CP0_cause_write( UINT32 val ) ;


/************************************************************************
 *
 *                          CP0_epc_write
 *  Description :
 *  -------------
 *  Write the CP0 register, 'epc', ($14).
 *  
 *  Parameters :
 *  ------------
 *  'val': 32 bit value to be written into CP0-register
 *  
 *
 *  Return values :
 *  ---------------
 *  -
 *
 ************************************************************************/
void CP0_epc_write( UINT32 val ) ;


/************************************************************************
 *
 *                          CP0_config_write
 *  Description :
 *  -------------
 *  Write the CP0 register, 'config', ($16, select0).
 *  
 *  Parameters :
 *  ------------
 *  'val': 32 bit value to be written into CP0-register
 *  
 *
 *  Return values :
 *  ---------------
 *  -
 *
 ************************************************************************/
void CP0_config_write( UINT32 val ) ;


/************************************************************************
 *
 *                          CP0_config1_write
 *  Description :
 *  -------------
 *  Write the CP0 register, 'config1', ($16, select 1).
 *  
 *  Parameters :
 *  ------------
 *  'val': 32 bit value to be written into CP0-register
 *  
 *
 *  Return values :
 *  ---------------
 *  -
 *
 ************************************************************************/
void CP0_config1_write( UINT32 val ) ;


/************************************************************************
 *
 *                          CP0_watchlo_write
 *  Description :
 *  -------------
 *  Write the CP0 register, 'watchlo', ($18).
 *  
 *  Parameters :
 *  ------------
 *  'val': 32 bit value to be written into CP0-register
 *  
 *
 *  Return values :
 *  ---------------
 *  -
 *
 ************************************************************************/
void CP0_watchlo_write( UINT32 val ) ;


/************************************************************************
 *
 *                          CP0_watchhi_write
 *  Description :
 *  -------------
 *  Write the CP0 register, 'watchhi', ($19).
 *  
 *  Parameters :
 *  ------------
 *  'val': 32 bit value to be written into CP0-register
 *  
 *
 *  Return values :
 *  ---------------
 *  -
 *
 ************************************************************************/
void CP0_watchhi_write( UINT32 val ) ;


/************************************************************************
 *
 *                          CP0_debug_write
 *  Description :
 *  -------------
 *  Write the CP0 register, 'debug', ($23).
 *  
 *  Parameters :
 *  ------------
 *  'val': 32 bit value to be written into CP0-register
 *  
 *
 *  Return values :
 *  ---------------
 *  -
 *
 ************************************************************************/
void CP0_debug_write( UINT32 val ) ;


/************************************************************************
 *
 *                          CP0_depc_write
 *  Description :
 *  -------------
 *  Write the CP0 register, 'depc', ($24).
 *  
 *  Parameters :
 *  ------------
 *  'val': 32 bit value to be written into CP0-register
 *  
 *
 *  Return values :
 *  ---------------
 *  -
 *
 ************************************************************************/
void CP0_depc_write( UINT32 val ) ;


/************************************************************************
 *
 *                          CP0_perfcount_write
 *  Description :
 *  -------------
 *  Write the CP0 register, 'perfcount', ($25).
 *  
 *  Parameters :
 *  ------------
 *  'val': 32 bit value to be written into CP0-register
 *  
 *
 *  Return values :
 *  ---------------
 *  -
 *
 ************************************************************************/
void CP0_perfcount_write( UINT32 val ) ;


/************************************************************************
 *
 *                          CP0_ecc_write
 *  Description :
 *  -------------
 *  Write the CP0 register, 'ecc', ($26).
 *  
 *  Parameters :
 *  ------------
 *  'val': 32 bit value to be written into CP0-register
 *  
 *
 *  Return values :
 *  ---------------
 *  -
 *
 ************************************************************************/
void CP0_ecc_write( UINT32 val ) ;


/************************************************************************
 *
 *                          CP0_taglo0_write
 *  Description :
 *  -------------
 *  Write the CP0 register, 'taglo0', ($28).
 *  
 *  Parameters :
 *  ------------
 *  'val': 32 bit value to be written into CP0-register
 *  
 *
 *  Return values :
 *  ---------------
 *  -
 *
 ************************************************************************/
void CP0_taglo0_write( UINT32 val ) ;


/************************************************************************
 *
 *                          CP0_taghi0_write
 *  Description :
 *  -------------
 *  Write the CP0 register, 'taghi0', ($29).
 *  
 *  Parameters :
 *  ------------
 *  'val': 32 bit value to be written into CP0-register
 *  
 *
 *  Return values :
 *  ---------------
 *  -
 *
 ************************************************************************/
void CP0_taghi0_write( UINT32 val ) ;


/************************************************************************
 *
 *                          CP0_errorepc_write
 *  Description :
 *  -------------
 *  Write the CP0 register, 'errorepc', ($30).
 *  
 *  Parameters :
 *  ------------
 *  'val': 32 bit value to be written into CP0-register
 *  
 *
 *  Return values :
 *  ---------------
 *  -
 *
 ************************************************************************/
void CP0_errorepc_write( UINT32 val ) ;


/************************************************************************
 *
 *                          CP0_desave_write
 *  Description :
 *  -------------
 *  Write the CP0 register, 'desave', ($31).
 *  
 *  Parameters :
 *  ------------
 *  'val': 32 bit value to be written into CP0-register
 *  
 *
 *  Return values :
 *  ---------------
 *  -
 *
 ************************************************************************/
void CP0_desave_write( UINT32 val ) ;


#else  /* #ifndef _ASSEMBLER */

EXTERN( sys_processor )
EXTERN( sys_platform )
EXTERN( sys_corecard )
EXTERN( sys_ramsize )

EXTERN( sys_icache_linesize )
EXTERN( sys_icache_lines )
EXTERN( sys_icache_assoc )
EXTERN( sys_dcache_linesize )
EXTERN( sys_dcache_lines )
EXTERN( sys_dcache_assoc )

EXTERN(sys_determine_icache_linesize_flash)	
EXTERN(sys_determine_icache_lines_flash)	
EXTERN(sys_determine_icache_assoc_flash)	
EXTERN(sys_determine_dcache_linesize_flash)	
EXTERN(sys_determine_dcache_lines_flash)	
EXTERN(sys_determine_dcache_assoc_flash)	

EXTERN( sys_init_icache )
EXTERN( sys_init_dcache )
		
EXTERN( sys_ftext_init )
EXTERN( sys_etext_ram )
EXTERN( sys_fbss )
EXTERN( sys_freemem )

EXTERN( sys_64bit )

#endif /* #ifndef _ASSEMBLER */


/* Return codes from sys_tlb_lookup() */

#define SYS_TLB_OK		        0
#define SYS_TLB_NOTFOUND		1
#define SYS_TLB_NOTVALID		2
#define SYS_TLB_WP			3

/* Stack size */
#define SYS_STACK_SIZE			0x5000
#define SYS_APPL_STACK_SIZE		0x5000

/*  RAM vector offsets (ie based at 0x80000000) chosen by YAMON 
 *  for EJTAG and NMI exceptions.
 */
# define SYS_EJTAG_RAM_VECTOR_OFS        0x300
# define SYS_NMI_RAM_VECTOR_OFS          0x380

#endif /* #ifndef SYS_API_H */




⌨️ 快捷键说明

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