
	/*------------------------------------------------------*/
	/*              TERON Articia / SDRAM Init              */
	/*------------------------------------------------------*/

*       XD_CTL  = 0x81000000			(0x74)

*       HBUS_ACC_CTL_0 &= 0xFFFFFDFF		(0x5c)
		       /* host bus access ctl reg 2(5e) */
		       /* set - CPU read from memory data one clock after data is latched */

*       GLOBL_INFO_0 |= 0x00004000		(0x50)
		      /* global info register 2 (52), AGP/PCI bus 1 arbiter is addressed in Articia S */

	PCI_1_SB_CONFIG_0 |= 0x00000400         (0x80d0)
			/* PCI1 side band config reg 2 (d2), enable read acces while write buffer not empty */

	MEM_RAS_CTL_0 |= 0x3f000000		(0xcc)
		      &= 0x3fffffff
		      /* RAS park control reg 0(cc), park access enable is set */

	HOST_RDBUF_CTL |= 0x10000000		(0x70)
		       &= 0x10ffffff
		      /* host read buffer control reg, enable prefetch for CPU read from DRAM control */

	HBUS_ACC_CTL_0 |= 0x0100001f		(0x5c)
		       &= 0xf1ffffff
		      /* host bus access control register, enable CPU address bus pipe control	*/
		      /* two outstanding requests,  *** changed to 2 from 3				*/
		      /* enable line merge write control for CPU write to system memory, PCI 1	*/
		      /* and PCI 0 bus memory; enable page merge write control for write to		*/
		      /* PCI bus 0 & bus 1 memory							*/

	SRAM_CTL |= 0x00004000			(0xc8)
		 &= 0xffbff7ff
		      /* DRAM detail timing control register 1 (ca), bit 3 set to 0	*/
		      /* DRAM start access latency control - wait for one clock	*/
		      /* ff9f changed to ffbf						*/

	DIM0_TIM_CTL_0 = 0x737d737d             (0xc9)
		      /* DRAM timing control for dimm0 & dimm1; set wait one clock	*/
		      /* cycle for next data access					*/

	DIM2_TIM_CTL_0 = 0x737d737d             (0xca)
		      /* DRAM timing control for dimm2 & dimm3; set wait one clock	*/
		      /* cycle for next data access					*/

	DIM0_BNK0_CTL_0 = BNK0_RAM_SIZ_128MB    (0x90)
		      /* set dimm0 bank0 for 128 MB	*/

	DIM0_BNK1_CTL_0 = BNK1_RAM_SIZ_128MB    (0x94)
		      /* set dimm0 for  bank1		*/

	DIM0_TIM_CTL_0 = 0xf3bf0000             (0xc9)
		      /* dimm0 timing control register; RAS - CAS latency - 4 clock		*/
		      /* CAS access latency - 3 wait; pre-charge latency - 3 wait		*/
		      /* pre-charge command period control - 5 clock; wait one clock		*/
		      /* cycle for next data access; read to write access latency control	*/
		      /* - 2 clock cycles							*/

	DRAM_GBL_CTL_0 |= 0x00000100            (0xc0)
		       &= 0xffff01ff
		      /* memory global control register - support buffer sdram on bank 0	*/

	DRAM_ECC_CTL_0 |= 0x00260000		(0xc4)
		       &= 0xff26ffff
		      /* enable ECC; enable read, modify, write control	*/

	DRAM_REF_CTL_0 = DRAM_REF_DATA          (0xb8)
		      /* set DRAM refresh parameters *** changed to 00940100	*/

	nop
	nop
	nop
	nop
	nop

	DRAM_ECC_CTL_0 |= 0x20243280		(0xc4)
		      /* turn off ecc		*/
		      /* for SDRAM bank 0	*/

	DRAM_ECC_CTL_0 |= 0x20243290            (0xc4) ?
		      /* for SDRAM bank 1	*/


/* Additional Stuff...*/

	GLOBL_CTRL |= 0x20000b00		(0x54)

	PCI_0_SB_CONFIG |= 0x04100007		(0xd0)
		      /* PCI 0 Side band config reg*/

	0x8000083c |= 0x00080000
		      /* Disable VGA decode on PCI Bus 1 */


/*End Additional Stuff..*/

	/*--------------------------------------------------------------*/
	/*              TERON serial port initialization code           */
	/*--------------------------------------------------------------*/

	0x84380080 |= 0x00030000
		     /* enable super IO configuration VIA chip Register 85	*/
		     /* Enable super I/O config mode */

	0xfe0003f0 = 0xe2
	bl delay1

	0xfe0003f1 = 0x0f
	bl delay1
		    /* enable com1 & com2, parallel port disabled */

	0xfe0003f0 = 0xe7
	bl delay1
		    /* let's make com1 base as 0x3f8 */

	0xfe0003f1 = 0xfe
	bl delay1

	0xfe0003f0 = 0xe8
	bl delay1
		    /* let's make com2 base as 0x2f8 */

	0xfe0003f1 = 0xbe

	0x84380080 &= 0xfffdffff
		    /* closing super IO configuration VIA chip Register 85   */


/* -------------------------------*/

	0xfe0003fb = 0x83
	bl delay1
		   /*latch enable word length -8 bit */         /* set mslab bit	*/
	0xfe0003f8 = 0x0c
	bl delay1
		   /* set baud rate lsb for 9600 baud	*/
	0xfe0003f9 = 0x0
	bl delay1
		   /* set baud rate msb for 9600 baud	*/
	0xfe0003fb  = 0x03
	bl delay1
		      /* reset mslab	*/

	/*--------------------------------------------------------------*/
	/*              END TERON Serial Port Initialization Code       */
	/*--------------------------------------------------------------*/


	/*--------------------------------------------------------------*/
	/*      END TERON Articia / SDRAM Initialization code           */
	/*--------------------------------------------------------------*/

Proposed from Documentation:

write dmem 0xfec00cf8 0x50000080
write dmem 0xfee00cfc 0xc0305411

      Writes to index 0x50-0x53.
      0x50: Global Information Register 0
	    0xC0 = Little Endian CPU, Sequential order Burst
      0x51: Global Information Register 1
	    Read only, 0x30 = Provides PowerPC and X86 support
      0x52: Global Information Register 2
	    0x05 = 64/128 bit CPU bus support
      0x53: Global Information Register 3
	    0x80 = PCI Bus 0 grant active time is 1 clock after REQ# deasserted

write dmem 0xfec00cf8 0x5c000080
write dmem 0xfee00cfc 0xb300011F

write dmem 0xfec00cf8 0xc8000080
write dmem 0xfee00cfc 0x0020f100

write dmem 0xfec00cf8 0x90000080
write dmem 0xfee00cfc 0x007fe700

write dmem 0xfec00cf8 0x9400080
write dmem 0xfee00cfc 0x007fe700

write dmem 0xfec00cf8 0xb0000080
write dmem 0xfee00cfc 0x737d737d

write dmem 0xfec00cf8 0xb4000080
write dmem 0xfee00cfc 0x737d737d

write dmem 0xfec00cf8 0xc0000080
write dmem 0xfee00cfc 0x40005500

write dmem 0xfec00cf8 0xb8000080
write dmem 0xfee00cfc 0x00940100

write dmem 0xfec00cf8 0xc4000080
write dmem 0xfee00cfc 0x00003280

write dmem 0xfec00cf8 0xc4000080
write dmem 0xfee00cfc 0x00003290
