📄 syscon.c
字号:
************************************************************************/static UINT32cpu_icache_avail_assoc_generic_read( void *param, void *data, UINT32 size ){ sys_cpu_cache_assoc( TRUE, (t_sys_array *)param ); return OK;}/************************************************************************ * cpu_icache_size_current_generic_read ************************************************************************/static UINT32cpu_icache_size_current_generic_read( void *param, void *data, UINT32 size ){ *(UINT32 *)param = (*flash_determine_icache_linesize)(sys_processor) * (*flash_determine_icache_lines)(sys_processor); return OK;}/************************************************************************ * cpu_icache_linesize_current_generic_read ************************************************************************/static UINT32cpu_icache_linesize_current_generic_read( void *param, void *data, UINT32 size ){ *(UINT32 *)param = (*flash_determine_icache_linesize)(sys_processor); return OK;}/************************************************************************ * cpu_icache_assoc_current_generic_read ************************************************************************/static UINT32cpu_icache_assoc_current_generic_read( void *param, void *data, UINT32 size ){ *(UINT32 *)param = (*flash_determine_icache_assoc)(sys_processor); return OK;}/************************************************************************ * cpu_dcache_size_generic_read ************************************************************************/static UINT32cpu_dcache_size_generic_read( void *param, void *data, UINT32 size ){ *(UINT32 *)param = sys_dcache_linesize * sys_dcache_lines; return OK;}/************************************************************************ * cpu_dcache_linesize_generic_read ************************************************************************/static UINT32cpu_dcache_linesize_generic_read( void *param, void *data, UINT32 size ){ *(UINT32 *)param = sys_dcache_linesize; return OK;}/************************************************************************ * cpu_dcache_assoc_generic_read ************************************************************************/static UINT32cpu_dcache_assoc_generic_read( void *param, void *data, UINT32 size ){ *(UINT32 *)param = sys_dcache_assoc; return OK;}/************************************************************************ * cpu_dcache_avail_bpw_generic_read ************************************************************************/static UINT32cpu_dcache_avail_bpw_generic_read( void *param, void *data, UINT32 size ){ sys_cpu_cache_bpw( FALSE, (t_sys_array *)param ); return OK;}/************************************************************************ * cpu_dcache_avail_assoc_generic_read ************************************************************************/static UINT32cpu_dcache_avail_assoc_generic_read( void *param, void *data, UINT32 size ){ sys_cpu_cache_assoc( FALSE, (t_sys_array *)param ); return OK;}/************************************************************************ * cpu_dcache_size_current_generic_read ************************************************************************/static UINT32cpu_dcache_size_current_generic_read( void *param, void *data, UINT32 size ){ *(UINT32 *)param = (*flash_determine_dcache_linesize)(sys_processor) * (*flash_determine_dcache_lines)(sys_processor); return OK;}/************************************************************************ * cpu_dcache_linesize_current_generic_read ************************************************************************/static UINT32cpu_dcache_linesize_current_generic_read( void *param, void *data, UINT32 size ){ *(UINT32 *)param = (*flash_determine_dcache_linesize)(sys_processor); return OK;}/************************************************************************ * cpu_dcache_assoc_current_generic_read ************************************************************************/static UINT32cpu_dcache_assoc_current_generic_read( void *param, void *data, UINT32 size ){ *(UINT32 *)param = (*flash_determine_dcache_assoc)(sys_processor); return OK;}/************************************************************************ * cpu_scache_size_current_generic_read ************************************************************************/static UINT32cpu_scache_size_current_generic_read( void *param, void *data, UINT32 size ){ if( !sys_l2cache ) return ERROR_SYSCON_UNKNOWN_PARAM; *(UINT32 *)param = sys_l2cache_linesize * sys_l2cache_lines; return OK;}/************************************************************************ * cpu_scache_linesize_current_generic_read ************************************************************************/static UINT32cpu_scache_linesize_current_generic_read( void *param, void *data, UINT32 size ){ if( !sys_l2cache ) return ERROR_SYSCON_UNKNOWN_PARAM; *(UINT32 *)param = sys_l2cache_linesize; return OK;}/************************************************************************ * cpu_scache_assoc_current_generic_read ************************************************************************/static UINT32cpu_scache_assoc_current_generic_read( void *param, void *data, UINT32 size ){ if( !sys_l2cache ) return ERROR_SYSCON_UNKNOWN_PARAM; *(UINT32 *)param = sys_l2cache_assoc; return OK;}/************************************************************************ * board_systemram_actual_size_generic_read ************************************************************************/static UINT32board_systemram_actual_size_generic_read( void *param, void *data, UINT32 size ){ *(UINT32 *)param = sys_ramsize; return OK;}/************************************************************************ * cpu_cp0_config_reset_generic_read ************************************************************************/static UINT32cpu_cp0_config_reset_generic_read( void *param, void *data, UINT32 size ){ *(UINT32 *)param = config_init; return OK;}/************************************************************************ * disk_environment_generic_read ************************************************************************/static UINT32disk_environment_generic_read( void *param, void *data, UINT32 size ){ return SYSENV_read( param );}/************************************************************************ * file_batch_access_generic_read ************************************************************************/static UINT32file_batch_access_generic_read( void *param, void *data, UINT32 size ){ t_sys_batch_file_descriptor *dp ; UINT32 rc; UINT32 old_ie; /* Allow interrupts in application interface routine */ old_ie = sys_disable_int(); sys_enable_int(); dp = param ; if (dp->mode == SYSCON_FILE_READ_MODE) { rc = NET_file_read( dp->host_ip, dp->file_name, dp->buffer, &(dp->buffer_size) ) ; } else { rc = NET_file_write( dp->host_ip, dp->file_name, dp->buffer, &(dp->buffer_size) ) ; } /* Restore interrupt condition */ if (!old_ie) sys_disable_int(); return rc;}/************************************************************************ * file_bootserver_generic_read ************************************************************************/static UINT32file_bootserver_generic_read( void *param, void *data, UINT32 size ){ return env_get( "bootserver", NULL, param, sizeof(UINT32) ) ? OK : ERROR_SYSCON_IP_UNKNOWN;}/************************************************************************ * disk_environment_generic_write ************************************************************************/static UINT32disk_environment_generic_write( void *param, void *data, UINT32 size ){ return SYSENV_write( param );}/************************************************************************ * error_register_lookup_generic_write ************************************************************************/static UINT32error_register_lookup_generic_write( void *param, void *data, UINT32 size ){ UINT32 tl; /* write user environment data */ tl = ((t_sys_error_lookup_registration*)param)->prefix; if( tl < SYSERROR_DOMAIN_COUNT ) { registered_lookup[tl] = ((t_sys_error_lookup_registration*)param)->lookup; return OK; } else { return ERROR_SYSCON_UNKNOWN_PARAM; }}/************************************************************************ * error_lookup_generic_read ************************************************************************/static UINT32error_lookup_generic_read( void *param, void *data, UINT32 size ){ UINT32 tl; UINT32 rcode; /* lookup syserror by registered domain service */ tl = SYSERROR_DOMAIN( ((t_sys_error_string*)param)->syserror ); if( ( tl < SYSERROR_DOMAIN_COUNT ) && ( registered_lookup[tl] != NULL ) ) { rcode = (*registered_lookup[tl])( (t_sys_error_string*)param ); if ( ( rcode != OK) || ( ((t_sys_error_string*)param)->count == 0 ) ) { /* Force internal error message */ tl = ((t_sys_error_string*)param)->syserror ; sprintf( syscon_generic_error_string, "Internal, code = %x", tl ) ; ((t_sys_error_string*)param)->strings[SYSCON_ERRORMSG_IDX] = syscon_generic_error_string ; ((t_sys_error_string*)param)->count = 1 ; } return OK; } else { /* Force internal error message */ tl = ((t_sys_error_string*)param)->syserror ; sprintf( syscon_generic_error_string, "Internal, code = %x", tl ) ; ((t_sys_error_string*)param)->strings[SYSCON_ERRORMSG_IDX] = syscon_generic_error_string ; ((t_sys_error_string*)param)->count = 1 ; return OK ; }}/************************************************************************ * * SYSCON_error_lookup * Description : * ------------- * Lookup error code to error string(s) * * Parameters : * ------------ * * 'param', INOUT, variable of type, t_sys_error_string. * * Return values : * --------------- * * 'OK' = 0x00: * ************************************************************************/static INT32 SYSCON_error_lookup( t_sys_error_string *param ){ UINT32 t; param->count = 0; t = SYSERROR_ID( param->syserror ); if( t < sizeof(syscon_error_string)/sizeof(char*) ) { param->strings[SYSCON_ERRORMSG_IDX] = syscon_error_string[t]; param->count = 1; } return(OK);}/************************************************************************ * board_systemram_sras2scas_ns_spd_read, ************************************************************************/static UINT32board_systemram_sras2scas_ns_spd_read( void *param, void *data, UINT32 size ){ UINT8 data8; INT32 rc; rc = spd_read( EEPROM_MINOR_SPD000, SPD_RCDM, 1, (void *)&data8 ); *(UINT32 *)param = data8; return rc;}/************************************************************************ * board_systemram_srasprchg_ns_spd_read, ************************************************************************/static UINT32board_systemram_srasprchg_ns_spd_read( void *param, void *data, UINT32 size ){ UINT8 data8; INT32 rc; rc = spd_read( EEPROM_MINOR_SPD000, SPD_MRPT, 1, (void *)&data8 ); *(UINT32 *)param = data8; return rc;}/************************************************************************ * board_systemram_refresh_ns_spd_read, ************************************************************************/static UINT32board_systemram_refresh_ns_spd_read( void *param, void *data, UINT32 size ){ UINT8 data8; INT32 rc; rc = spd_read( EEPROM_MINOR_SPD000, SPD_RFSH_RT, 1, (void *)&data8 ); if( rc != OK ) return rc;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -