@ -27,16 +27,27 @@
/*
/*
* board / config . h - configuration options , board specific
* board / config . h - configuration options , board specific
*
*
* Note : my board is a " SBC 8260 H, V.1.1"
* " EP 8260 H, V.1.1"
* - 64 M 60 x Bus SDRAM
* - 64 M 60 x Bus SDRAM
* - 32 M Local Bus SDRAM
* - 32 M Local Bus SDRAM
* - 16 M Flash ( 4 x AM29DL323DB90WDI )
* - 16 M Flash ( 4 x AM29DL323DB90WDI )
* - 128 k NVRAM with RTC
* - 128 k NVRAM with RTC
*
* " EP8260 H2, V.1.3 " ( CFG_EP8260_H2 )
* - 300 MHz / 133 MHz / 66 MHz
* - 64 M 60 x Bus SDRAM
* - 32 M Local Bus SDRAM
* - 32 M Flash
* - 128 k NVRAM with RTC
*/
*/
# ifndef __CONFIG_H
# ifndef __CONFIG_H
# define __CONFIG_H
# define __CONFIG_H
/* Define this to enable support the EP8260 H2 version */
# define CFG_EP8260_H2 1
/* #undef CFG_EP8260_H2 */
/* What is the oscillator's (UX2) frequency in Hz? */
/* What is the oscillator's (UX2) frequency in Hz? */
# define CONFIG_8260_CLKIN (66 * 1000 * 1000)
# define CONFIG_8260_CLKIN (66 * 1000 * 1000)
@ -62,7 +73,11 @@
* 0x6 0x1 66 133 266
* 0x6 0x1 66 133 266
* 0x6 0x2 66 133 300
* 0x6 0x2 66 133 300
*/
*/
# define CFG_SBC_MODCK_H 0x05
# ifdef CFG_EP8260_H2
# define CFG_SBC_MODCK_H (HRCW_MODCK_H0110)
# else
# define CFG_SBC_MODCK_H (HRCW_MODCK_H0110)
# endif
/* Define this if you want to boot from 0x00000100. If you don't define
/* Define this if you want to boot from 0x00000100. If you don't define
* this , you will need to program the bootloader to 0xfff00000 , and
* this , you will need to program the bootloader to 0xfff00000 , and
@ -84,8 +99,13 @@
* The main FLASH is whichever is connected to * CS0 . U - Boot expects
* The main FLASH is whichever is connected to * CS0 . U - Boot expects
* this to be the SIMM .
* this to be the SIMM .
*/
*/
# ifdef CFG_EP8260_H2
# define CFG_FLASH0_BASE 0xFE000000
# define CFG_FLASH0_SIZE 32
# else
# define CFG_FLASH0_BASE 0xFF000000
# define CFG_FLASH0_BASE 0xFF000000
# define CFG_FLASH0_SIZE 16
# define CFG_FLASH0_SIZE 16
# endif
/* What should the base address of the secondary FLASH be and how big
/* What should the base address of the secondary FLASH be and how big
* is it ( in Mbytes ) ? The secondary FLASH is whichever is connected
* is it ( in Mbytes ) ? The secondary FLASH is whichever is connected
@ -125,7 +145,7 @@
/* What should be the base address of NVRAM and how big is
/* What should be the base address of NVRAM and how big is
* it ( in Bytes )
* it ( in Bytes )
*/
*/
# define CFG_NVRAM_BASE_ADDR 0xFa 080000
# define CFG_NVRAM_BASE_ADDR 0xFA 080000
# define CFG_NVRAM_SIZE (128*1024)-16
# define CFG_NVRAM_SIZE (128*1024)-16
/* The RTC is a Dallas DS1556
/* The RTC is a Dallas DS1556
@ -237,8 +257,11 @@
# define CONFIG_ENV_OVERWRITE
# define CONFIG_ENV_OVERWRITE
/* What should the console's baud rate be? */
/* What should the console's baud rate be? */
/* #define CONFIG_BAUDRATE 57600 */
# ifdef CFG_EP8260_H2
# define CONFIG_BAUDRATE 9600
# else
# define CONFIG_BAUDRATE 115200
# define CONFIG_BAUDRATE 115200
# endif
/* Ethernet MAC address */
/* Ethernet MAC address */
# define CONFIG_ETHADDR 00:10:EC:00:30:8C
# define CONFIG_ETHADDR 00:10:EC:00:30:8C
@ -297,6 +320,7 @@
CFG_CMD_VFD | \
CFG_CMD_VFD | \
CFG_CMD_XIMG ) )
CFG_CMD_XIMG ) )
/* Where do the internal registers live? */
/* Where do the internal registers live? */
# define CFG_IMMR 0xF0000000
# define CFG_IMMR 0xF0000000
# define CFG_DEFAULT_IMMR 0x00010000
# define CFG_DEFAULT_IMMR 0x00010000
@ -371,21 +395,22 @@
# define CFG_SBC_HRCW_BOOT_FLAGS (0x00000000)
# define CFG_SBC_HRCW_BOOT_FLAGS (0x00000000)
# endif /* defined(CFG_SBC_BOOT_LOW) */
# endif /* defined(CFG_SBC_BOOT_LOW) */
/* get the HRCW ISB field from CFG_IMMR */
# ifdef CFG_EP8260_H2
/*
/* get the HRCW ISB field from CFG_DEFAULT_IMMR */
# define CFG_SBC_HRCW_IMMR ( ((CFG_IMMR & 0x10000000) >> 10) |\
# define CFG_SBC_HRCW_IMMR ( ((CFG_DEFAULT_ IMMR & 0x10000000) >> 10) |\
( ( CFG_IMMR & 0x01000000 ) > > 7 ) | \
( ( CFG_DEFAULT_ IMMR & 0x01000000 ) > > 7 ) | \
( ( CFG_IMMR & 0x00100000 ) > > 4 ) )
( ( CFG_DEFAULT_ IMMR & 0x00100000 ) > > 4 ) )
# define CFG_HRCW_MASTER (HRCW_EBM |\
# define CFG_HRCW_MASTER (HRCW_EBM |\
HRCW_L2CPC01 | \
HRCW_L2CPC01 | \
CFG_SBC_HRCW_IMMR | \
CFG_SBC_HRCW_IMMR | \
HRCW_APPC10 | \
HRCW_APPC10 | \
HRCW_CS10PC01 | \
HRCW_CS10PC01 | \
HRCW_MODCK_H0101 | \
CFG_SBC_MODCK_H | \
CFG_SBC_HRCW_BOOT_FLAGS )
CFG_SBC_HRCW_BOOT_FLAGS )
*/
# else
# define CFG_HRCW_MASTER 0x10400245
# define CFG_HRCW_MASTER 0x10400245
# endif
/* no slaves */
/* no slaves */
# define CFG_HRCW_SLAVE1 0
# define CFG_HRCW_SLAVE1 0
@ -432,7 +457,11 @@
* FLASH and environment organization
* FLASH and environment organization
*/
*/
# define CFG_MAX_FLASH_BANKS 1 /* max number of memory banks */
# define CFG_MAX_FLASH_BANKS 1 /* max number of memory banks */
# ifdef CFG_EP8260_H2
# define CFG_MAX_FLASH_SECT 128 /* max number of sectors on one chip */
# else
# define CFG_MAX_FLASH_SECT 71 /* max number of sectors on one chip */
# define CFG_MAX_FLASH_SECT 71 /* max number of sectors on one chip */
# endif
# define CFG_FLASH_ERASE_TOUT 8000 /* Timeout for Flash Erase (in ms) */
# define CFG_FLASH_ERASE_TOUT 8000 /* Timeout for Flash Erase (in ms) */
# define CFG_FLASH_WRITE_TOUT 1 /* Timeout for Flash Write (in ms) */
# define CFG_FLASH_WRITE_TOUT 1 /* Timeout for Flash Write (in ms) */
@ -504,40 +533,48 @@
* BCR - Bus Configuration 4 - 25
* BCR - Bus Configuration 4 - 25
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
*/
*/
/*#define CFG_BCR (BCR_EBM |\
# define CFG_BCR (BCR_EBM |\
BCR_PLDP | \
BCR_PLDP | \
BCR_EAV | \
BCR_EAV | \
BCR_NPQM1 )
BCR_NPQM0 )
*/
# define CFG_BCR 0x80C08000
/*-----------------------------------------------------------------------
/*-----------------------------------------------------------------------
* SIUMCR - SIU Module Configuration 4 - 31
* SIUMCR - SIU Module Configuration 4 - 31
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
*/
*/
# define CFG_SIUMCR (SIUMCR_L2CPC01 |\
# define CFG_SIUMCR (SIUMCR_L2CPC01 |\
SIUMCR_APPC10 | \
SIUMCR_APPC10 | \
SIUMCR_CS10PC01 )
SIUMCR_CS10PC01 )
/*-----------------------------------------------------------------------
/*-----------------------------------------------------------------------
* SYPCR - System Protection Control 11 - 9
* SYPCR - System Protection Control 11 - 9
* SYPCR can only be written once after reset !
* SYPCR can only be written once after reset !
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
* Watchdog & Bus Monitor Timer max , 60 x Bus Monitor enable
* Watchdog & Bus Monitor Timer max , 60 x Bus Monitor enable
*/
*/
# ifdef CFG_EP8260_H2
/* TBD: Find out why setting the BMT to 0xff causes the FCC to
* generate TX buffer underrun errors for large packets under
* Linux
*/
# define CFG_SYPCR_BMT 0x00000600
# else
# define CFG_SYPCR_BMT SYPCR_BMT
# endif
# ifdef CFG_LSDRAM
# ifdef CFG_LSDRAM
# define CFG_SYPCR (SYPCR_SWTC |\
# define CFG_SYPCR (SYPCR_SWTC |\
SYPCR_BMT | \
CFG_ SYPCR_BMT | \
SYPCR_PBME | \
SYPCR_PBME | \
SYPCR_LBME | \
SYPCR_LBME | \
SYPCR_SWP )
SYPCR_SWP )
# else
# else
# define CFG_SYPCR (SYPCR_SWTC |\
# define CFG_SYPCR (SYPCR_SWTC |\
SYPCR_BMT | \
CFG_ SYPCR_BMT | \
SYPCR_PBME | \
SYPCR_PBME | \
SYPCR_SWP )
SYPCR_SWP )
# endif
# endif
/*-----------------------------------------------------------------------
/*-----------------------------------------------------------------------
* TMCNTSC - Time Counter Status and Control 4 - 40
* TMCNTSC - Time Counter Status and Control 4 - 40
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@ -555,10 +592,14 @@
* Clear Periodic Interrupt Status , Set 32 KHz timersclk , and enable
* Clear Periodic Interrupt Status , Set 32 KHz timersclk , and enable
* Periodic timer
* Periodic timer
*/
*/
/*#define CFG_PISCR (PISCR_PS |\
# ifdef CFG_EP8260_H2
# define CFG_PISCR (PISCR_PS |\
PISCR_PTF | \
PISCR_PTF | \
PISCR_PTE ) */
PISCR_PTE )
# else
# define CFG_PISCR 0
# define CFG_PISCR 0
# endif
/*-----------------------------------------------------------------------
/*-----------------------------------------------------------------------
* SCCR - System Clock Control 9 - 8
* SCCR - System Clock Control 9 - 8
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@ -616,7 +657,7 @@
# define CFG_OR0_PRELIM (MEG_TO_AM(CFG_FLASH0_SIZE) |\
# define CFG_OR0_PRELIM (MEG_TO_AM(CFG_FLASH0_SIZE) |\
ORxG_CSNT | \
ORxG_CSNT | \
ORxG_ACS_DIV1 | \
ORxG_ACS_DIV1 | \
ORxG_SCY_6 _CLK | \
ORxG_SCY_8 _CLK | \
ORxG_EHTR )
ORxG_EHTR )
/* Bank 1 - SDRAM
/* Bank 1 - SDRAM
@ -632,9 +673,13 @@
ORxS_ROWST_PBI1_A6 | \
ORxS_ROWST_PBI1_A6 | \
ORxS_NUMR_12 )
ORxS_NUMR_12 )
# ifdef CFG_EP8260_H2
# define CFG_PSDMR 0xC34E246E
# else
# define CFG_PSDMR 0xC34E2462
# define CFG_PSDMR 0xC34E2462
# define CFG_PSRT 0x64
# endif
# define CFG_PSRT 0x64
# ifdef CFG_LSDRAM
# ifdef CFG_LSDRAM
/* Bank 2 - SDRAM
/* Bank 2 - SDRAM
@ -673,6 +718,7 @@
*/
*/
# define CFG_OR4_PRELIM 0xfff00854
# define CFG_OR4_PRELIM 0xfff00854
# ifdef _NOT_USED_SINCE_NOT_WORKING_
/* Bank 8 - On board registers
/* Bank 8 - On board registers
* PCMCIA ( currently not working ! )
* PCMCIA ( currently not working ! )
*/
*/
@ -686,6 +732,7 @@
ORxG_ACS_DIV1 | \
ORxG_ACS_DIV1 | \
ORxG_SETA | \
ORxG_SETA | \
ORxG_SCY_10_CLK )
ORxG_SCY_10_CLK )
# endif
/*
/*
* Internal Definitions
* Internal Definitions