Bdinit PM sample

From wiki
Revision as of 01:58, 22 December 2020 by imported>Bkavanagh (Created page with " void bdinit1() { *(volatile unsigned int *)(0xffe00004) = 0x00bda0c8; //Initialize DDR PHY. If not done and program is accessing address from 0x60000000, the board will...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
void bdinit1() {
*(volatile unsigned int *)(0xffe00004) =  0x00bda0c8;
//Initialize DDR PHY. If not done and program is accessing address from 0x60000000, the board will be locked   
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x08020802;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x08040804;
*(volatile unsigned int *)(0xffe0001C) =  0x4000C000;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x61610060;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x00120024;
*(volatile unsigned int *)(0xffe0001C) =  0x4000C100;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x40404040;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x00000000;
*(volatile unsigned int *)(0xffe0001C) =  0x4000C200;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x08020802;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x08040804;
*(volatile unsigned int *)(0xffe0001C) =  0x4000C400; 
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x61610060;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x00120024;
*(volatile unsigned int *)(0xffe0001C) =  0x4000C500;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x40404040;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x00000000;
*(volatile unsigned int *)(0xffe0001C) =  0x4000C600;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x08020802;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x08040804;
*(volatile unsigned int *)(0xffe0001C) =  0x4000C800;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x61610060;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x00120024;
*(volatile unsigned int *)(0xffe0001C) =  0x4000C900;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x40404040;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x00000000;
*(volatile unsigned int *)(0xffe0001C) =  0x4000CA00;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x08020802;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x08040804;
*(volatile unsigned int *)(0xffe0001C) =  0x4000CC00;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x61610060;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x00120024;
*(volatile unsigned int *)(0xffe0001C) =  0x4000CD00;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x40404040;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x00000000;
*(volatile unsigned int *)(0xffe0001C) =  0x4000CE00; 
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x08020802;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x08040804;
*(volatile unsigned int *)(0xffe0001C) =  0x4000D000;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x61610060;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x00120024;
*(volatile unsigned int *)(0xffe0001C) =  0x4000D100;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x40404040;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x00000000;
*(volatile unsigned int *)(0xffe0001C) =  0x4000D200;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x08020802;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x08040804;
*(volatile unsigned int *)(0xffe0001C) =  0x4000D400;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x61610060;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x00120024;
*(volatile unsigned int *)(0xffe0001C) =  0x4000D500; 
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x40404040;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x00000000;
*(volatile unsigned int *)(0xffe0001C) =  0x4000D600;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x08020802;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x08040804;
*(volatile unsigned int *)(0xffe0001C) =  0x4000D800;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x61610060;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x00120024;
*(volatile unsigned int *)(0xffe0001C) =  0x4000D900;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x40404040;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x00000000;
*(volatile unsigned int *)(0xffe0001C) =  0x4000DA00;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x08020802;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x08040804;
*(volatile unsigned int *)(0xffe0001C) =  0x4000DC00;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x61610060;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x00120024;
*(volatile unsigned int *)(0xffe0001C) =  0x4000DD00;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x40404040;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x00000000;
*(volatile unsigned int *)(0xffe0001C) =  0x4000DE00;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x08020802;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x08040804;
*(volatile unsigned int *)(0xffe0001C) =  0x4000E000;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x61610060;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x00120024;
*(volatile unsigned int *)(0xffe0001C) =  0x4000E100;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x40404040;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x00000000;
*(volatile unsigned int *)(0xffe0001C) =  0x4000E200;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x00004005;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x00000000;
*(volatile unsigned int *)(0xffe0001C) =  0x4000E400;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0xfffbfffb;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0xfffbfffb;
*(volatile unsigned int *)(0xffe0001C) =  0x4000E500;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0xfffbfffb;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x00000000;
*(volatile unsigned int *)(0xffe0001C) =  0x4000E600;
*(volatile unsigned int *)(0xffe0001C) =  0x04000000;
*(volatile unsigned int *)(0xffe00018) =  0x00000000;
*(volatile unsigned int *)(0xffe0001C) =  0x00000000;
*(volatile unsigned int *)(0xffe00018) =  0x00000000;
*(volatile unsigned int *)(0xffe0001C) =  0x4000E700;
*(volatile unsigned int *)(0xffe0001C) =  0x80200000;
*(volatile unsigned int *)(0xffe0001C) =  0xc0206300;
*(volatile unsigned int *)(0xffe0001C) =  0x8c206300;
*(volatile unsigned int *)(0xffe0001C) =  0x88216300; 
//IS46DR16640C -25D  DDR2-800D 
// Trtp=7.5ns   Twr=15ns  CL=5ns  Trcd=12.5ns 	Trc=55ns  Trp=12.5 Trfc=105 Tras=40ns  tREFI=7.8us
*(volatile unsigned int *)(0xffe00004) =  0x00bda0c8;
*(volatile unsigned int *)(0xffe00008) =  0x141d0000;
*(volatile unsigned int *)(0xffe0000c) =  0x2700;
*(volatile unsigned int *)(0xffe00010) =  0x309f0309;
*(volatile unsigned int *)(0xffe00000) =  0x96a18c30;
}
void bdinit2 () {

// Enable UART. After reset to run the program with print statement, UART terminal must be connected or program will stack till output is done //*(volatile unsigned int *)(0x80000108) = 0x80000843;

//Enable L2Cache *(volatile unsigned int *)(0xf0000008) |= 0x7; //Invalidate all Lines *(volatile unsigned int *)(0xf0000000) = 0xC0040000; //Enable L2Cache

}