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

📄 softboot.c

📁 ks8695 loader > > > > > > > > > > > > >
💻 C
字号:
/* * softboot routine */#include "config.h"#define PIO0_DATA (*(volatile unsigned long *)0x00500604)void __softboot_start(void){		unsigned long pllvalue,plldiv, pllmult;		// power off RAM		*((volatile unsigned long *)0x00500320)=0;		*((volatile unsigned long *)0x00500300)=0;		// power off DVD drive (pio0 pin 4)		*((volatile unsigned long *)0x00500608)=1<<20;		*((volatile unsigned long *)0x00500604)=1<<20|1<<4;		// Hold all the quasar stuff in reset // XXX doesnt seem to buy anything, plus thsi causes a small OSD glitch//		*((volatile unsigned long *)0x00607FE0)=0xFFFF;//		*((volatile unsigned long *)0x00607FE4)=0xFFFF;										/*		// ***** SET PLL: PLL REG *****		mov r0, #QUASAR_BASE                    // BASE: 0x0600000		add r0, r0, #0x7000                     // generate 0x0607000		add r0, r0, #0x0010                     // generate 0x0607100 = REG 0x1C04 on Quasar		mov r1, #(PLLREG_VALUE & 0xFF)          // 0x8e=99.9 - 0xd6=148.5 		add r1, r1, #(PLLREG_VALUE & 0xFF00)    // generate pattern 38E/3d6		str r1, [r0, #0]                        // write to DBUS_pll_control*/		pllmult=0;		plldiv=3;		pllvalue = (plldiv<<8)+(pllmult<<2)+2;		*((volatile unsigned long *)0x0607010)=pllvalue;				// wait for IR activity SAR_BASE                    // BASE: 0x			//set pio direction - input		*((volatile unsigned long *)0x00500608)=1<<17;		// wait pio0 pin 1 to 0		while((PIO0_DATA & 2) == 0);		// wait pio0 pin 1 to 1		while((PIO0_DATA & 2) != 0);		// power on RAM		*((volatile unsigned long *)0x00500320)=1;				return;}

⌨️ 快捷键说明

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