mirror of
				https://github.com/smaeul/u-boot.git
				synced 2025-11-03 21:48:15 +00:00 
			
		
		
		
	Remove platform CONFIG_SYS_HZ definition for configs a-z*. Signed-off-by: Rob Herring <rob.herring@calxeda.com>
		
			
				
	
	
		
			483 lines
		
	
	
		
			17 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			483 lines
		
	
	
		
			17 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/*
 | 
						|
 * (C) Copyright 2000-2005
 | 
						|
 * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
 | 
						|
 *
 | 
						|
 * SPDX-License-Identifier:	GPL-2.0+
 | 
						|
 */
 | 
						|
 | 
						|
/*
 | 
						|
 * board/config.h - configuration options, board specific
 | 
						|
 */
 | 
						|
 | 
						|
#ifndef __CONFIG_H
 | 
						|
#define __CONFIG_H
 | 
						|
 | 
						|
/*
 | 
						|
 * High Level Configuration Options
 | 
						|
 * (easy to change)
 | 
						|
 */
 | 
						|
 | 
						|
#define CONFIG_MPC860		1
 | 
						|
#define CONFIG_MPC860T		1
 | 
						|
#define CONFIG_MPC862		1       /* enable 862 since the         */
 | 
						|
#define CONFIG_MPC857		1       /* 857 is a variant of the 862  */
 | 
						|
 | 
						|
#define CONFIG_UC100		1	/* ...on a UC100 module	        */
 | 
						|
 | 
						|
#define	CONFIG_SYS_TEXT_BASE	0x40700000
 | 
						|
 | 
						|
#define MPC8XX_FACT		4		/* Multiply by 4	*/
 | 
						|
#define MPC8XX_XIN		25000000	/* 25.0 MHz in		*/
 | 
						|
#define CONFIG_8xx_GCLK_FREQ	(MPC8XX_FACT * MPC8XX_XIN)
 | 
						|
				    /* define if cant' use get_gclk_freq */
 | 
						|
 | 
						|
#define	CONFIG_8xx_CONS_SMC1	1	/* Console is on SMC1		*/
 | 
						|
#undef	CONFIG_8xx_CONS_SMC2
 | 
						|
#undef	CONFIG_8xx_CONS_NONE
 | 
						|
 | 
						|
#define CONFIG_MISC_INIT_R	1	/* call misc_init_r()		*/
 | 
						|
 | 
						|
#define CONFIG_BAUDRATE		115200	/* console baudrate = 115kbps	*/
 | 
						|
 | 
						|
#define	CONFIG_BOOTCOUNT_LIMIT
 | 
						|
 | 
						|
#define CONFIG_BOOTDELAY	5	/* autoboot after 5 seconds	*/
 | 
						|
 | 
						|
#define CONFIG_BOARD_TYPES	1	/* support board types		*/
 | 
						|
 | 
						|
#define CONFIG_PREBOOT	"echo;"	\
 | 
						|
	"echo Type \\\"run flash_nfs\\\" to mount root filesystem over NFS;" \
 | 
						|
	"echo"
 | 
						|
 | 
						|
#undef	CONFIG_BOOTARGS
 | 
						|
 | 
						|
#define	CONFIG_EXTRA_ENV_SETTINGS					\
 | 
						|
	"netdev=eth0\0"							\
 | 
						|
	"nfsargs=setenv bootargs root=/dev/nfs rw "			\
 | 
						|
		"nfsroot=${serverip}:${rootpath}\0"			\
 | 
						|
	"ramargs=setenv bootargs root=/dev/ram rw\0"			\
 | 
						|
	"addip=setenv bootargs ${bootargs} "				\
 | 
						|
		"ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}"	\
 | 
						|
		":${hostname}:${netdev}:off panic=1\0"			\
 | 
						|
	"addtty=setenv bootargs ${bootargs} console=ttyS0,${baudrate}\0"\
 | 
						|
	"flash_nfs=run nfsargs addip addtty;"				\
 | 
						|
		"bootm ${kernel_addr}\0"				\
 | 
						|
	"flash_self=run ramargs addip addtty;"				\
 | 
						|
		"bootm ${kernel_addr} ${ramdisk_addr}\0"		\
 | 
						|
	"net_nfs=tftp 200000 ${bootfile};run nfsargs addip addtty;"     \
 | 
						|
		"bootm\0"						\
 | 
						|
	"rootpath=/opt/eldk/ppc_8xx\0"					\
 | 
						|
	"bootfile=/tftpboot/uc100/uImage\0"				\
 | 
						|
	"kernel_addr=40000000\0"					\
 | 
						|
	"ramdisk_addr=40100000\0"					\
 | 
						|
	"load=tftp 100000 /tftpboot/uc100/u-boot.bin\0"			\
 | 
						|
	"update=protect off 40700000 4073ffff;era 40700000 4073ffff;"	\
 | 
						|
		"cp.b 100000 40700000 ${filesize};"			\
 | 
						|
		"setenv filesize;saveenv\0"				\
 | 
						|
	""
 | 
						|
#define CONFIG_BOOTCOMMAND	"run flash_self"
 | 
						|
 | 
						|
#define CONFIG_LOADS_ECHO	1	/* echo on for serial download	*/
 | 
						|
#undef	CONFIG_SYS_LOADS_BAUD_CHANGE		/* don't allow baudrate change	*/
 | 
						|
 | 
						|
#undef	CONFIG_WATCHDOG			/* watchdog disabled		*/
 | 
						|
 | 
						|
#undef CONFIG_STATUS_LED                /* no status-led                */
 | 
						|
 | 
						|
/*
 | 
						|
 * BOOTP options
 | 
						|
 */
 | 
						|
#define CONFIG_BOOTP_SUBNETMASK
 | 
						|
#define CONFIG_BOOTP_GATEWAY
 | 
						|
#define CONFIG_BOOTP_HOSTNAME
 | 
						|
#define CONFIG_BOOTP_BOOTPATH
 | 
						|
#define CONFIG_BOOTP_BOOTFILESIZE
 | 
						|
 | 
						|
 | 
						|
#define CONFIG_MAC_PARTITION
 | 
						|
#define CONFIG_DOS_PARTITION
 | 
						|
 | 
						|
#undef CONFIG_RTC_MPC8xx
 | 
						|
#define CONFIG_SYS_I2C_RTC_ADDR	0x51	/* PCF8563 RTC			*/
 | 
						|
#define CONFIG_RTC_PCF8563		/* use Philips PCF8563 RTC	*/
 | 
						|
 | 
						|
/*
 | 
						|
 * Power On Self Test support
 | 
						|
 */
 | 
						|
#define CONFIG_POST	      ( CONFIG_SYS_POST_CACHE		| \
 | 
						|
				CONFIG_SYS_POST_MEMORY		| \
 | 
						|
				CONFIG_SYS_POST_CPU		| \
 | 
						|
				CONFIG_SYS_POST_UART		| \
 | 
						|
				CONFIG_SYS_POST_SPR )
 | 
						|
#undef  CONFIG_POST
 | 
						|
 | 
						|
 | 
						|
/*
 | 
						|
 * Command line configuration.
 | 
						|
 */
 | 
						|
#include <config_cmd_default.h>
 | 
						|
 | 
						|
#define CONFIG_CMD_ASKENV
 | 
						|
#define CONFIG_CMD_DATE
 | 
						|
#define CONFIG_CMD_DHCP
 | 
						|
#define CONFIG_CMD_EEPROM
 | 
						|
#define CONFIG_CMD_ELF
 | 
						|
#define CONFIG_CMD_FAT
 | 
						|
#define CONFIG_CMD_I2C
 | 
						|
#define CONFIG_CMD_IDE
 | 
						|
#define CONFIG_CMD_MII
 | 
						|
#define CONFIG_CMD_NFS
 | 
						|
#define CONFIG_CMD_PING
 | 
						|
#define CONFIG_CMD_SNTP
 | 
						|
 | 
						|
#ifdef CONFIG_POST
 | 
						|
#define CONFIG_CMD_DIAG
 | 
						|
#endif
 | 
						|
 | 
						|
 | 
						|
#define CONFIG_NETCONSOLE
 | 
						|
 | 
						|
/*
 | 
						|
 * Miscellaneous configurable options
 | 
						|
 */
 | 
						|
#define	CONFIG_SYS_LONGHELP			/* undef to save memory		*/
 | 
						|
 | 
						|
#if 0
 | 
						|
#define	CONFIG_SYS_HUSH_PARSER		1	/* use "hush" command parser	*/
 | 
						|
#endif
 | 
						|
 | 
						|
#if defined(CONFIG_CMD_KGDB)
 | 
						|
#define	CONFIG_SYS_CBSIZE		1024	/* Console I/O Buffer Size	*/
 | 
						|
#else
 | 
						|
#define	CONFIG_SYS_CBSIZE		256	/* Console I/O Buffer Size	*/
 | 
						|
#endif
 | 
						|
#define	CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16) /* Print Buffer Size */
 | 
						|
#define	CONFIG_SYS_MAXARGS		16	/* max number of command args	*/
 | 
						|
#define CONFIG_SYS_BARGSIZE	CONFIG_SYS_CBSIZE	/* Boot Argument Buffer Size	*/
 | 
						|
 | 
						|
#define CONFIG_SYS_MEMTEST_START	0x0400000	/* memtest works on	*/
 | 
						|
#define CONFIG_SYS_MEMTEST_END		0x0C00000	/* 4 ... 12 MB in DRAM	*/
 | 
						|
 | 
						|
#define	CONFIG_SYS_LOAD_ADDR		0x100000	/* default load address	*/
 | 
						|
 | 
						|
#define CONFIG_AUTO_COMPLETE	1       /* add autocompletion support   */
 | 
						|
 | 
						|
/*
 | 
						|
 * Low Level Configuration Settings
 | 
						|
 * (address mappings, register initial values, etc.)
 | 
						|
 * You should know what you are doing if you make changes here.
 | 
						|
 */
 | 
						|
/*-----------------------------------------------------------------------
 | 
						|
 * Internal Memory Mapped Register
 | 
						|
 */
 | 
						|
#define CONFIG_SYS_IMMR		0xF0000000
 | 
						|
 | 
						|
/*-----------------------------------------------------------------------
 | 
						|
 * Definitions for initial stack pointer and data area (in DPRAM)
 | 
						|
 */
 | 
						|
#define CONFIG_SYS_INIT_RAM_ADDR	CONFIG_SYS_IMMR
 | 
						|
#define	CONFIG_SYS_INIT_RAM_SIZE	0x2F00	/* Size of used area in DPRAM	*/
 | 
						|
#define CONFIG_SYS_GBL_DATA_OFFSET	(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
 | 
						|
#define	CONFIG_SYS_INIT_SP_OFFSET	CONFIG_SYS_GBL_DATA_OFFSET
 | 
						|
 | 
						|
/*-----------------------------------------------------------------------
 | 
						|
 * Start addresses for the final memory configuration
 | 
						|
 * (Set up by the startup code)
 | 
						|
 * Please note that CONFIG_SYS_SDRAM_BASE _must_ start at 0
 | 
						|
 */
 | 
						|
#define	CONFIG_SYS_SDRAM_BASE		0x00000000
 | 
						|
#define CONFIG_SYS_FLASH_BASE		0x40000000
 | 
						|
#define	CONFIG_SYS_MONITOR_LEN		(256 << 10)	/* Reserve 256 kB for Monitor	*/
 | 
						|
#define CONFIG_SYS_MONITOR_BASE	(CONFIG_SYS_FLASH_BASE+0x00700000) /* resetvec fff00100*/
 | 
						|
#define	CONFIG_SYS_MALLOC_LEN		(128 << 10)	/* Reserve 128 kB for malloc()	*/
 | 
						|
 | 
						|
/*-----------------------------------------------------------------------
 | 
						|
 * Address accessed to reset the board - must not be mapped/assigned
 | 
						|
 */
 | 
						|
#define CONFIG_SYS_RESET_ADDRESS       0x90000000
 | 
						|
 | 
						|
/*
 | 
						|
 * For booting Linux, the board info and command line data
 | 
						|
 * have to be in the first 8 MB of memory, since this is
 | 
						|
 * the maximum mapped by the Linux kernel during initialization.
 | 
						|
 */
 | 
						|
#define	CONFIG_SYS_BOOTMAPSZ		(8 << 20)	/* Initial Memory map for Linux	*/
 | 
						|
 | 
						|
/*-----------------------------------------------------------------------
 | 
						|
 * FLASH organization
 | 
						|
 */
 | 
						|
#define CONFIG_SYS_FLASH_CFI				/* The flash is CFI compatible  */
 | 
						|
#define CONFIG_FLASH_CFI_DRIVER			/* Use common CFI driver        */
 | 
						|
#define CONFIG_SYS_FLASH_CFI_AMD_RESET	1		/* AMD RESET for STM 29W320DB!  */
 | 
						|
 | 
						|
#define CONFIG_SYS_MAX_FLASH_BANKS	1	/* max number of memory banks		*/
 | 
						|
#define CONFIG_SYS_MAX_FLASH_SECT	256	/* max number of sectors on one chip	*/
 | 
						|
 | 
						|
#define CONFIG_SYS_FLASH_ERASE_TOUT	120000	/* Timeout for Flash Erase (in ms)	*/
 | 
						|
#define CONFIG_SYS_FLASH_WRITE_TOUT	500	/* Timeout for Flash Write (in ms)	*/
 | 
						|
 | 
						|
#define CONFIG_SYS_FLASH_EMPTY_INFO		/* print 'E' for empty sector on flinfo */
 | 
						|
 | 
						|
#define	CONFIG_ENV_IS_IN_FLASH	1
 | 
						|
#define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE+CONFIG_SYS_MONITOR_LEN)
 | 
						|
#define CONFIG_ENV_SECT_SIZE	0x20000	/* size of one complete sector		*/
 | 
						|
#define	CONFIG_ENV_SIZE		0x4000	/* Total Size of Environment Sector	*/
 | 
						|
 | 
						|
/* Address and size of Redundant Environment Sector	*/
 | 
						|
#define CONFIG_ENV_ADDR_REDUND	(CONFIG_ENV_ADDR+CONFIG_ENV_SECT_SIZE)
 | 
						|
#define CONFIG_ENV_SIZE_REDUND	(CONFIG_ENV_SIZE)
 | 
						|
 | 
						|
/*-----------------------------------------------------------------------
 | 
						|
 * Cache Configuration
 | 
						|
 */
 | 
						|
#define CONFIG_SYS_CACHELINE_SIZE	16	/* For all MPC8xx CPUs			*/
 | 
						|
#if defined(CONFIG_CMD_KGDB)
 | 
						|
#define CONFIG_SYS_CACHELINE_SHIFT	4	/* log base 2 of the above value	*/
 | 
						|
#endif
 | 
						|
 | 
						|
/*-----------------------------------------------------------------------
 | 
						|
 * SYPCR - System Protection Control				11-9
 | 
						|
 * SYPCR can only be written once after reset!
 | 
						|
 *-----------------------------------------------------------------------
 | 
						|
 * Software & Bus Monitor Timer max, Bus Monitor enable, SW Watchdog freeze
 | 
						|
 */
 | 
						|
#if defined(CONFIG_WATCHDOG)
 | 
						|
#define CONFIG_SYS_SYPCR	(SYPCR_SWTC | SYPCR_BMT | SYPCR_BME | SYPCR_SWF | \
 | 
						|
			 SYPCR_SWE  | SYPCR_SWRI| SYPCR_SWP)
 | 
						|
#else
 | 
						|
#define CONFIG_SYS_SYPCR	(SYPCR_SWTC | SYPCR_BMT | SYPCR_BME | SYPCR_SWF | SYPCR_SWP)
 | 
						|
#endif
 | 
						|
 | 
						|
/*-----------------------------------------------------------------------
 | 
						|
 * SIUMCR - SIU Module Configuration				11-6
 | 
						|
 *-----------------------------------------------------------------------
 | 
						|
 * PCMCIA config., multi-function pin tri-state
 | 
						|
 */
 | 
						|
#define CONFIG_SYS_SIUMCR	(SIUMCR_FRC | SIUMCR_DBGC00 | SIUMCR_DBPC00 | SIUMCR_MLRC01)
 | 
						|
 | 
						|
/*-----------------------------------------------------------------------
 | 
						|
 * TBSCR - Time Base Status and Control				11-26
 | 
						|
 *-----------------------------------------------------------------------
 | 
						|
 * Clear Reference Interrupt Status, Timebase freezing enabled
 | 
						|
 */
 | 
						|
#define CONFIG_SYS_TBSCR	(TBSCR_REFA | TBSCR_REFB | TBSCR_TBF)
 | 
						|
 | 
						|
/*-----------------------------------------------------------------------
 | 
						|
 * RTCSC - Real-Time Clock Status and Control Register		11-27
 | 
						|
 *-----------------------------------------------------------------------
 | 
						|
 */
 | 
						|
#define CONFIG_SYS_RTCSC	(RTCSC_SEC | RTCSC_ALR | RTCSC_RTF| RTCSC_RTE)
 | 
						|
 | 
						|
/*-----------------------------------------------------------------------
 | 
						|
 * PISCR - Periodic Interrupt Status and Control		11-31
 | 
						|
 *-----------------------------------------------------------------------
 | 
						|
 * Clear Periodic Interrupt Status, Interrupt Timer freezing enabled
 | 
						|
 */
 | 
						|
#define CONFIG_SYS_PISCR	(PISCR_PS | PISCR_PITF)
 | 
						|
 | 
						|
/*-----------------------------------------------------------------------
 | 
						|
 * PLPRCR - PLL, Low-Power, and Reset Control Register		15-30
 | 
						|
 *-----------------------------------------------------------------------
 | 
						|
 * Reset PLL lock status sticky bit, timer expired status bit and timer
 | 
						|
 * interrupt status bit
 | 
						|
 */
 | 
						|
#define CONFIG_SYS_PLPRCR	(((MPC8XX_FACT-1) << PLPRCR_MF_SHIFT) |	\
 | 
						|
				PLPRCR_SPLSS | PLPRCR_TEXPS | PLPRCR_TMIST)
 | 
						|
 | 
						|
/*-----------------------------------------------------------------------
 | 
						|
 * SCCR - System Clock and reset Control Register		15-27
 | 
						|
 *-----------------------------------------------------------------------
 | 
						|
 * Set clock output, timebase and RTC source and divider,
 | 
						|
 * power management and some other internal clocks
 | 
						|
 */
 | 
						|
#define SCCR_MASK	0x00000000
 | 
						|
#define CONFIG_SYS_SCCR        (SCCR_EBDF11)
 | 
						|
 | 
						|
/*-----------------------------------------------------------------------
 | 
						|
 * PCMCIA stuff
 | 
						|
 *-----------------------------------------------------------------------
 | 
						|
 *
 | 
						|
 */
 | 
						|
#define CONFIG_SYS_PCMCIA_MEM_ADDR	(0xE0000000)
 | 
						|
#define CONFIG_SYS_PCMCIA_MEM_SIZE	( 64 << 20 )
 | 
						|
#define CONFIG_SYS_PCMCIA_DMA_ADDR	(0xE4000000)
 | 
						|
#define CONFIG_SYS_PCMCIA_DMA_SIZE	( 64 << 20 )
 | 
						|
#define CONFIG_SYS_PCMCIA_ATTRB_ADDR	(0xE8000000)
 | 
						|
#define CONFIG_SYS_PCMCIA_ATTRB_SIZE	( 64 << 20 )
 | 
						|
#define CONFIG_SYS_PCMCIA_IO_ADDR	(0xEC000000)
 | 
						|
#define CONFIG_SYS_PCMCIA_IO_SIZE	( 64 << 20 )
 | 
						|
 | 
						|
/*-----------------------------------------------------------------------
 | 
						|
 * IDE/ATA stuff (Supports IDE harddisk on PCMCIA Adapter)
 | 
						|
 *-----------------------------------------------------------------------
 | 
						|
 */
 | 
						|
 | 
						|
#define CONFIG_IDE_PREINIT	1	/* Use preinit IDE hook */
 | 
						|
#define	CONFIG_IDE_8xx_PCCARD	1	/* Use IDE with PC Card	Adapter	*/
 | 
						|
 | 
						|
#undef	CONFIG_IDE_8xx_DIRECT		/* Direct IDE    not supported	*/
 | 
						|
#undef	CONFIG_IDE_LED			/* LED   for ide not supported	*/
 | 
						|
#undef	CONFIG_IDE_RESET		/* reset for ide not supported	*/
 | 
						|
 | 
						|
#define CONFIG_SYS_IDE_MAXBUS		1	/* max. 1 IDE bus		*/
 | 
						|
#define CONFIG_SYS_IDE_MAXDEVICE	1	/* max. 1 drive per IDE bus	*/
 | 
						|
 | 
						|
#define CONFIG_SYS_ATA_IDE0_OFFSET	0x0000
 | 
						|
 | 
						|
#define CONFIG_SYS_ATA_BASE_ADDR	CONFIG_SYS_PCMCIA_MEM_ADDR
 | 
						|
 | 
						|
/* Offset for data I/O			*/
 | 
						|
#define CONFIG_SYS_ATA_DATA_OFFSET	(CONFIG_SYS_PCMCIA_MEM_SIZE + 0x320)
 | 
						|
 | 
						|
/* Offset for normal register accesses	*/
 | 
						|
#define CONFIG_SYS_ATA_REG_OFFSET	(2 * CONFIG_SYS_PCMCIA_MEM_SIZE + 0x320)
 | 
						|
 | 
						|
/* Offset for alternate registers	*/
 | 
						|
#define CONFIG_SYS_ATA_ALT_OFFSET	0x0100
 | 
						|
 | 
						|
/*-----------------------------------------------------------------------
 | 
						|
 *
 | 
						|
 *-----------------------------------------------------------------------
 | 
						|
 *
 | 
						|
 */
 | 
						|
#define CONFIG_SYS_DER	0
 | 
						|
 | 
						|
/*
 | 
						|
 * Init Memory Controller:
 | 
						|
 *
 | 
						|
 * BR0/1 and OR0/1 (FLASH)
 | 
						|
 */
 | 
						|
 | 
						|
#define FLASH_BASE0_PRELIM	0x40000000	/* FLASH bank #0	*/
 | 
						|
#define FLASH_BASE1_PRELIM	0x60000000	/* FLASH bank #0	*/
 | 
						|
 | 
						|
/* used to re-map FLASH both when starting from SRAM or FLASH:
 | 
						|
 * restrict access enough to keep SRAM working (if any)
 | 
						|
 * but not too much to meddle with FLASH accesses
 | 
						|
 */
 | 
						|
#define CONFIG_SYS_REMAP_OR_AM		0x80000000	/* OR addr mask */
 | 
						|
#define CONFIG_SYS_PRELIM_OR_AM	0xFF800000	/* OR addr mask */
 | 
						|
 | 
						|
/*
 | 
						|
 * FLASH timing:
 | 
						|
 */
 | 
						|
#define CONFIG_SYS_OR_TIMING_FLASH	(0x00000d24)
 | 
						|
 | 
						|
#define CONFIG_SYS_OR0_REMAP	(CONFIG_SYS_REMAP_OR_AM  | CONFIG_SYS_OR_TIMING_FLASH)
 | 
						|
#define CONFIG_SYS_OR0_PRELIM	(CONFIG_SYS_PRELIM_OR_AM | CONFIG_SYS_OR_TIMING_FLASH)
 | 
						|
#define CONFIG_SYS_BR0_PRELIM	((FLASH_BASE0_PRELIM & BR_BA_MSK) | BR_V )
 | 
						|
 | 
						|
#define CONFIG_SYS_BR1_PRELIM  0x00000081  /* Chip select for SDRAM (32 Bit, UPMA) */
 | 
						|
#define CONFIG_SYS_OR1_PRELIM  0xfc000a00
 | 
						|
#define CONFIG_SYS_BR2_PRELIM  0x80000001  /* Chip select for SRAM (32 Bit, GPCM) */
 | 
						|
#define CONFIG_SYS_OR2_PRELIM  0xfff00d24
 | 
						|
#define CONFIG_SYS_BR3_PRELIM  0x80600401  /* Chip select for Display (8 Bit, GPCM) */
 | 
						|
#define CONFIG_SYS_OR3_PRELIM  0xffff8f44
 | 
						|
#define CONFIG_SYS_BR4_PRELIM  0xc05108c1  /* Chip select for Interbus MPM (16 Bit, UPMB) */
 | 
						|
#define CONFIG_SYS_OR4_PRELIM  0xffff0300
 | 
						|
#define CONFIG_SYS_BR5_PRELIM  0xc0500401  /* Chip select for Interbus Status (8 Bit, GPCM) */
 | 
						|
#define CONFIG_SYS_OR5_PRELIM  0xffff8db0
 | 
						|
 | 
						|
/*
 | 
						|
 * Memory Periodic Timer Prescaler
 | 
						|
 *
 | 
						|
 * The Divider for PTA (refresh timer) configuration is based on an
 | 
						|
 * example SDRAM configuration (64 MBit, one bank). The adjustment to
 | 
						|
 * the number of chip selects (NCS) and the actually needed refresh
 | 
						|
 * rate is done by setting MPTPR.
 | 
						|
 *
 | 
						|
 * PTA is calculated from
 | 
						|
 *	PTA = (gclk * Trefresh) / ((2 ^ (2 * DFBRG)) * PTP * NCS)
 | 
						|
 *
 | 
						|
 *	gclk	  CPU clock (not bus clock!)
 | 
						|
 *	Trefresh  Refresh cycle * 4 (four word bursts used)
 | 
						|
 *
 | 
						|
 * 4096  Rows from SDRAM example configuration
 | 
						|
 * 1000  factor s -> ms
 | 
						|
 *   32  PTP (pre-divider from MPTPR) from SDRAM example configuration
 | 
						|
 *    4  Number of refresh cycles per period
 | 
						|
 *   64  Refresh cycle in ms per number of rows
 | 
						|
 * --------------------------------------------
 | 
						|
 * Divider = 4096 * 32 * 1000 / (4 * 64) = 512000
 | 
						|
 *
 | 
						|
 *  50 MHz =>  50.000.000 / Divider =  98
 | 
						|
 *  66 Mhz =>  66.000.000 / Divider = 129
 | 
						|
 *  80 Mhz =>  80.000.000 / Divider = 156
 | 
						|
 * 100 Mhz => 100.000.000 / Divider = 195
 | 
						|
 */
 | 
						|
 | 
						|
#define CONFIG_SYS_PTA_PER_CLK	((4096 * 32 * 1000) / (4 * 64))
 | 
						|
#define CONFIG_SYS_MAMR_PTA	98
 | 
						|
 | 
						|
/*
 | 
						|
 * For 16 MBit, refresh rates could be 31.3 us
 | 
						|
 * (= 64 ms / 2K = 125 / quad bursts).
 | 
						|
 * For a simpler initialization, 15.6 us is used instead.
 | 
						|
 *
 | 
						|
 * #define CONFIG_SYS_MPTPR_2BK_2K	MPTPR_PTP_DIV32		for 2 banks
 | 
						|
 * #define CONFIG_SYS_MPTPR_1BK_2K	MPTPR_PTP_DIV64		for 1 bank
 | 
						|
 */
 | 
						|
#define CONFIG_SYS_MPTPR_2BK_4K	MPTPR_PTP_DIV16		/* setting for 2 banks	*/
 | 
						|
#define CONFIG_SYS_MPTPR_1BK_4K	MPTPR_PTP_DIV32		/* setting for 1 bank	*/
 | 
						|
 | 
						|
/* refresh rate 7.8 us (= 64 ms / 8K = 31.2 / quad bursts) for 256 MBit		*/
 | 
						|
#define CONFIG_SYS_MPTPR_2BK_8K	MPTPR_PTP_DIV8		/* setting for 2 banks	*/
 | 
						|
#define CONFIG_SYS_MPTPR_1BK_8K	MPTPR_PTP_DIV16		/* setting for 1 bank	*/
 | 
						|
 | 
						|
/*
 | 
						|
 * MAMR settings for SDRAM
 | 
						|
 */
 | 
						|
 | 
						|
/* 8 column SDRAM */
 | 
						|
#define CONFIG_SYS_MAMR_8COL	((CONFIG_SYS_MAMR_PTA << MAMR_PTA_SHIFT)  | MAMR_PTAE	    |	\
 | 
						|
			 MAMR_AMA_TYPE_0 | MAMR_DSA_1_CYCL | MAMR_G0CLA_A11 |	\
 | 
						|
			 MAMR_RLFA_1X	 | MAMR_WLFA_1X	   | MAMR_TLFA_4X)
 | 
						|
/* 9 column SDRAM */
 | 
						|
#define CONFIG_SYS_MAMR_9COL	((CONFIG_SYS_MAMR_PTA << MAMR_PTA_SHIFT)  | MAMR_PTAE	    |	\
 | 
						|
			 MAMR_AMA_TYPE_1 | MAMR_DSA_1_CYCL | MAMR_G0CLA_A10 |	\
 | 
						|
			 MAMR_RLFA_1X	 | MAMR_WLFA_1X	   | MAMR_TLFA_4X)
 | 
						|
 | 
						|
#define	CONFIG_SYS_MAMR_VAL	0x30904114	/* for SDRAM */
 | 
						|
#define	CONFIG_SYS_MBMR_VAL	0xff001111	/* for Interbus-MPM */
 | 
						|
 | 
						|
/*-----------------------------------------------------------------------
 | 
						|
 * I2C stuff
 | 
						|
 */
 | 
						|
 | 
						|
/* enable I2C and select the hardware/software driver */
 | 
						|
#define CONFIG_SYS_I2C
 | 
						|
#define CONFIG_SYS_I2C_SOFT		/* I2C bit-banged */
 | 
						|
#define CONFIG_SYS_I2C_SOFT_SPEED	93000 /* 93 kHz is supposed to work */
 | 
						|
#define CONFIG_SYS_I2C_SOFT_SLAVE	0xFE
 | 
						|
/*
 | 
						|
 * Software (bit-bang) I2C driver configuration
 | 
						|
 */
 | 
						|
#define PB_SCL		0x00000020	/* PB 26 */
 | 
						|
#define PB_SDA		0x00000010	/* PB 27 */
 | 
						|
 | 
						|
#define I2C_INIT	(immr->im_cpm.cp_pbdir |=  PB_SCL)
 | 
						|
#define I2C_ACTIVE	(immr->im_cpm.cp_pbdir |=  PB_SDA)
 | 
						|
#define I2C_TRISTATE	(immr->im_cpm.cp_pbdir &= ~PB_SDA)
 | 
						|
#define I2C_READ	((immr->im_cpm.cp_pbdat & PB_SDA) != 0)
 | 
						|
#define I2C_SDA(bit)	if(bit) immr->im_cpm.cp_pbdat |=  PB_SDA; \
 | 
						|
			else    immr->im_cpm.cp_pbdat &= ~PB_SDA
 | 
						|
#define I2C_SCL(bit)	if(bit) immr->im_cpm.cp_pbdat |=  PB_SCL; \
 | 
						|
			else    immr->im_cpm.cp_pbdat &= ~PB_SCL
 | 
						|
#define I2C_DELAY	udelay(2)	/* 1/4 I2C clock duration */
 | 
						|
 | 
						|
/*-----------------------------------------------------------------------
 | 
						|
 * I2C EEPROM (24C164)
 | 
						|
 */
 | 
						|
#define CONFIG_SYS_I2C_EEPROM_ADDR	0x58	/* EEPROM AT24C164		*/
 | 
						|
#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN	1
 | 
						|
#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS	10	/* takes up to 10 msec	*/
 | 
						|
#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS	4
 | 
						|
 | 
						|
#define	CONFIG_FEC_ENET		1	/* use FEC ethernet  */
 | 
						|
#define FEC_ENET
 | 
						|
#define CONFIG_MII
 | 
						|
#define CONFIG_MII_INIT		1
 | 
						|
#define CONFIG_SYS_DISCOVER_PHY	1
 | 
						|
 | 
						|
#endif	/* __CONFIG_H */
 |