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

📄 init.c

📁 jz4730 北京群正出品
💻 C
字号:
/* * init.c * * Perform the early initialization. Include CP0.status, install exception * handlers, fill all interrupt entries. * * Author: Seeger Chin * e-mail: seeger.chin@gmail.com * * Copyright (C) 2006 Ingenic Semiconductor Inc. *  * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. * */#pragma	weak	pcm_initvoid pcm_init(void) {}#include <archdefs.h>#include <mipsregs.h>unsigned int g_stack[2049];extern void except_common_entry(void);void CONSOL_SendCh(unsigned char ch){	serial_putc(ch);}void CONSOL_GetChar(unsigned char *ch){	int r;	r = serial_getc();	if (r > 0)		*ch = (unsigned char)r;	else		*ch = 0;}typedef void (*pfunc)(void);extern pfunc __CTOR_LIST__[];extern pfunc __CTOR_END__[];void c_main(void){	pfunc *p;	write_c0_status(0x10000400);	memcpy((void *)A_K0BASE, except_common_entry, 0x20);	memcpy((void *)(A_K0BASE + 0x180), except_common_entry, 0x20);	memcpy((void *)(A_K0BASE + 0x200), except_common_entry, 0x20);	__dcache_writeback_all();	__icache_invalidate_all();	intc_init();	detect_clock();	gpio_init();	serial_init();	OSInit();	/* Invoke constroctor functions when needed. */	for (p=&__CTOR_END__[-1]; p >= __CTOR_LIST__; p--)		(*p)();	APP_vMain();	while(1);}

⌨️ 快捷键说明

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