17237d22bSSergey Kostanbaev /* 2*a187559eSBin Meng * U-Boot - Configuration file for Cirrus Logic EDB93xx boards 37237d22bSSergey Kostanbaev */ 47237d22bSSergey Kostanbaev 57237d22bSSergey Kostanbaev #ifndef __CONFIG_H 67237d22bSSergey Kostanbaev #define __CONFIG_H 77237d22bSSergey Kostanbaev 87237d22bSSergey Kostanbaev #ifdef CONFIG_MK_edb9301 97237d22bSSergey Kostanbaev #define CONFIG_EDB9301 107237d22bSSergey Kostanbaev #elif defined(CONFIG_MK_edb9302) 117237d22bSSergey Kostanbaev #define CONFIG_EDB9302 127237d22bSSergey Kostanbaev #elif defined(CONFIG_MK_edb9302a) 137237d22bSSergey Kostanbaev #define CONFIG_EDB9302A 147237d22bSSergey Kostanbaev #elif defined(CONFIG_MK_edb9307) 157237d22bSSergey Kostanbaev #define CONFIG_EDB9307 167237d22bSSergey Kostanbaev #elif defined(CONFIG_MK_edb9307a) 177237d22bSSergey Kostanbaev #define CONFIG_EDB9307A 187237d22bSSergey Kostanbaev #elif defined(CONFIG_MK_edb9312) 197237d22bSSergey Kostanbaev #define CONFIG_EDB9312 207237d22bSSergey Kostanbaev #elif defined(CONFIG_MK_edb9315) 217237d22bSSergey Kostanbaev #define CONFIG_EDB9315 227237d22bSSergey Kostanbaev #elif defined(CONFIG_MK_edb9315a) 237237d22bSSergey Kostanbaev #define CONFIG_EDB9315A 247237d22bSSergey Kostanbaev #else 257237d22bSSergey Kostanbaev #error "no board defined" 267237d22bSSergey Kostanbaev #endif 277237d22bSSergey Kostanbaev 287237d22bSSergey Kostanbaev /* Initial environment and monitor configuration options. */ 297237d22bSSergey Kostanbaev #define CONFIG_CMDLINE_TAG 1 307237d22bSSergey Kostanbaev #define CONFIG_INITRD_TAG 1 317237d22bSSergey Kostanbaev #define CONFIG_SETUP_MEMORY_TAGS 1 327237d22bSSergey Kostanbaev #define CONFIG_BOOTFILE "edb93xx.img" 337237d22bSSergey Kostanbaev 347237d22bSSergey Kostanbaev #define CONFIG_SYS_LDSCRIPT "board/cirrus/edb93xx/u-boot.lds" 357237d22bSSergey Kostanbaev 367237d22bSSergey Kostanbaev #ifdef CONFIG_EDB9301 377237d22bSSergey Kostanbaev #define CONFIG_MACH_TYPE MACH_TYPE_EDB9301 387237d22bSSergey Kostanbaev #define CONFIG_ENV_SECT_SIZE 0x00020000 397237d22bSSergey Kostanbaev #elif defined(CONFIG_EDB9302) 407237d22bSSergey Kostanbaev #define CONFIG_EP9302 417237d22bSSergey Kostanbaev #define CONFIG_MACH_TYPE MACH_TYPE_EDB9302 427237d22bSSergey Kostanbaev #define CONFIG_ENV_SECT_SIZE 0x00020000 437237d22bSSergey Kostanbaev #elif defined(CONFIG_EDB9302A) 447237d22bSSergey Kostanbaev #define CONFIG_EP9302 457237d22bSSergey Kostanbaev #define CONFIG_MACH_TYPE MACH_TYPE_EDB9302A 467237d22bSSergey Kostanbaev #define CONFIG_ENV_SECT_SIZE 0x00020000 477237d22bSSergey Kostanbaev #elif defined(CONFIG_EDB9307) 487237d22bSSergey Kostanbaev #define CONFIG_EP9307 497237d22bSSergey Kostanbaev #define CONFIG_MACH_TYPE MACH_TYPE_EDB9307 507237d22bSSergey Kostanbaev #define CONFIG_ENV_SECT_SIZE 0x00040000 517237d22bSSergey Kostanbaev #elif defined(CONFIG_EDB9307A) 527237d22bSSergey Kostanbaev #define CONFIG_EP9307 537237d22bSSergey Kostanbaev #define CONFIG_MACH_TYPE MACH_TYPE_EDB9307A 547237d22bSSergey Kostanbaev #define CONFIG_ENV_SECT_SIZE 0x00020000 557237d22bSSergey Kostanbaev #elif defined(CONFIG_EDB9312) 567237d22bSSergey Kostanbaev #define CONFIG_EP9312 577237d22bSSergey Kostanbaev #define CONFIG_MACH_TYPE MACH_TYPE_EDB9312 587237d22bSSergey Kostanbaev #define CONFIG_ENV_SECT_SIZE 0x00040000 597237d22bSSergey Kostanbaev #elif defined(CONFIG_EDB9315) 607237d22bSSergey Kostanbaev #define CONFIG_EP9315 617237d22bSSergey Kostanbaev #define CONFIG_MACH_TYPE MACH_TYPE_EDB9315 627237d22bSSergey Kostanbaev #define CONFIG_ENV_SECT_SIZE 0x00040000 637237d22bSSergey Kostanbaev #elif defined(CONFIG_EDB9315A) 647237d22bSSergey Kostanbaev #define CONFIG_EP9315 657237d22bSSergey Kostanbaev #define CONFIG_MACH_TYPE MACH_TYPE_EDB9315A 667237d22bSSergey Kostanbaev #define CONFIG_ENV_SECT_SIZE 0x00020000 677237d22bSSergey Kostanbaev #else 687237d22bSSergey Kostanbaev #error "no board defined" 697237d22bSSergey Kostanbaev #endif 707237d22bSSergey Kostanbaev 717237d22bSSergey Kostanbaev /* High-level configuration options */ 72f2168440SMasahiro Yamada #define CONFIG_EP93XX 1 /* This is a Cirrus Logic 93xx SoC */ 737237d22bSSergey Kostanbaev 747237d22bSSergey Kostanbaev #define CONFIG_SYS_CLK_FREQ 14745600 /* EP93xx has a 14.7456 clock */ 757237d22bSSergey Kostanbaev 767237d22bSSergey Kostanbaev /* Monitor configuration */ 777237d22bSSergey Kostanbaev 787237d22bSSergey Kostanbaev #define CONFIG_SYS_CBSIZE 1024 /* Console I/O buffer size */ 797237d22bSSergey Kostanbaev 807237d22bSSergey Kostanbaev /* Serial port hardware configuration */ 817237d22bSSergey Kostanbaev #define CONFIG_SYS_BAUDRATE_TABLE {9600, 19200, 38400, 57600, \ 827237d22bSSergey Kostanbaev 115200, 230400} 837237d22bSSergey Kostanbaev #define CONFIG_SYS_SERIAL0 0x808C0000 847237d22bSSergey Kostanbaev #define CONFIG_SYS_SERIAL1 0x808D0000 857237d22bSSergey Kostanbaev /*#define CONFIG_PL01x_PORTS {(void *)CONFIG_SYS_SERIAL0, \ 867237d22bSSergey Kostanbaev (void *)CONFIG_SYS_SERIAL1} */ 877237d22bSSergey Kostanbaev 887237d22bSSergey Kostanbaev #define CONFIG_PL01x_PORTS {(void *)CONFIG_SYS_SERIAL0} 897237d22bSSergey Kostanbaev 907237d22bSSergey Kostanbaev /* Status LED */ 917237d22bSSergey Kostanbaev /* Optional value */ 927237d22bSSergey Kostanbaev 937237d22bSSergey Kostanbaev /* Network hardware configuration */ 947237d22bSSergey Kostanbaev #define CONFIG_DRIVER_EP93XX_MAC 957237d22bSSergey Kostanbaev #define CONFIG_MII_SUPPRESS_PREAMBLE 967237d22bSSergey Kostanbaev #undef CONFIG_NETCONSOLE 977237d22bSSergey Kostanbaev 987237d22bSSergey Kostanbaev /* SDRAM configuration */ 997237d22bSSergey Kostanbaev #if defined(CONFIG_EDB9301) || defined(CONFIG_EDB9302) || \ 1007237d22bSSergey Kostanbaev defined(CONFIG_EDB9307) || defined CONFIG_EDB9312 || \ 1017237d22bSSergey Kostanbaev defined(CONFIG_EDB9315) 1027237d22bSSergey Kostanbaev /* 1037237d22bSSergey Kostanbaev * EDB9301/2 has 4 banks of SDRAM consisting of 1x Samsung K4S561632E-TC75 1047237d22bSSergey Kostanbaev * 256 Mbit SDRAM on a 16-bit data bus, for a total of 32MB of SDRAM. We set 1057237d22bSSergey Kostanbaev * the SROMLL bit on the processor, resulting in this non-contiguous memory map. 1067237d22bSSergey Kostanbaev * 1077237d22bSSergey Kostanbaev * The EDB9307, EDB9312, and EDB9315 have 2 banks of SDRAM consisting of 1087237d22bSSergey Kostanbaev * 2x Samsung K4S561632E-TC75 256 Mbit on a 32-bit data bus, for a total of 1097237d22bSSergey Kostanbaev * 64 MB of SDRAM. 1107237d22bSSergey Kostanbaev */ 1117237d22bSSergey Kostanbaev 1127237d22bSSergey Kostanbaev #define CONFIG_EDB93XX_SDCS3 1137237d22bSSergey Kostanbaev 1147237d22bSSergey Kostanbaev #elif defined(CONFIG_EDB9302A) || \ 1157237d22bSSergey Kostanbaev defined(CONFIG_EDB9307A) || defined(CONFIG_EDB9315A) 1167237d22bSSergey Kostanbaev /* 1177237d22bSSergey Kostanbaev * EDB9302a has 4 banks of SDRAM consisting of 1x Samsung K4S561632E-TC75 1187237d22bSSergey Kostanbaev * 256 Mbit SDRAM on a 16-bit data bus, for a total of 32MB of SDRAM. We set 1197237d22bSSergey Kostanbaev * the SROMLL bit on the processor, resulting in this non-contiguous memory map. 1207237d22bSSergey Kostanbaev * 1217237d22bSSergey Kostanbaev * The EDB9307A and EDB9315A have 2 banks of SDRAM consisting of 2x Samsung 1227237d22bSSergey Kostanbaev * K4S561632E-TC75 256 Mbit on a 32-bit data bus, for a total of 64 MB of SDRAM. 1237237d22bSSergey Kostanbaev */ 1247237d22bSSergey Kostanbaev #define CONFIG_EDB93XX_SDCS0 1257237d22bSSergey Kostanbaev 1267237d22bSSergey Kostanbaev #else 1277237d22bSSergey Kostanbaev #error "no SDCS configuration for this board" 1287237d22bSSergey Kostanbaev #endif 1297237d22bSSergey Kostanbaev 1307237d22bSSergey Kostanbaev #if defined(CONFIG_EDB93XX_SDCS3) 1317237d22bSSergey Kostanbaev #define CONFIG_SYS_LOAD_ADDR 0x01000000 /* Default load address */ 1327237d22bSSergey Kostanbaev #define PHYS_SDRAM_1 0x00000000 1337237d22bSSergey Kostanbaev #elif defined(CONFIG_EDB93XX_SDCS0) 1347237d22bSSergey Kostanbaev #define CONFIG_SYS_LOAD_ADDR 0xc1000000 /* Default load address */ 1357237d22bSSergey Kostanbaev #define PHYS_SDRAM_1 0xc0000000 1367237d22bSSergey Kostanbaev #endif 1377237d22bSSergey Kostanbaev 1387237d22bSSergey Kostanbaev #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM_1 1397237d22bSSergey Kostanbaev 1407237d22bSSergey Kostanbaev #define CONFIG_SYS_INIT_SP_ADDR \ 1417237d22bSSergey Kostanbaev (CONFIG_SYS_SDRAM_BASE + 32*1024 - GENERATED_GBL_DATA_SIZE) 1427237d22bSSergey Kostanbaev 1437237d22bSSergey Kostanbaev /* Must match kernel config */ 1447237d22bSSergey Kostanbaev #define LINUX_BOOT_PARAM_ADDR (PHYS_SDRAM_1 + 0x100) 1457237d22bSSergey Kostanbaev 1467237d22bSSergey Kostanbaev /* Run-time memory allocatons */ 1477237d22bSSergey Kostanbaev #define CONFIG_SYS_GBL_DATA_SIZE 128 1487237d22bSSergey Kostanbaev 1497237d22bSSergey Kostanbaev #define CONFIG_SYS_MALLOC_LEN (512 * 1024) 1507237d22bSSergey Kostanbaev 1517237d22bSSergey Kostanbaev /* ----------------------------------------------------------------------------- 1527237d22bSSergey Kostanbaev * FLASH and environment organization 1537237d22bSSergey Kostanbaev * 1547237d22bSSergey Kostanbaev * The EDB9301, EDB9302(a), EDB9307a, EDB9315a have 1 bank of flash memory at 1557237d22bSSergey Kostanbaev * 0x60000000 consisting of 1x Intel TE28F128J3C-150 128 Mbit flash on a 16-bit 1567237d22bSSergey Kostanbaev * data bus, for a total of 16 MB of CFI-compatible flash. 1577237d22bSSergey Kostanbaev * 1587237d22bSSergey Kostanbaev * The EDB9307, EDB9312, and EDB9315 have 1 bank of flash memory at 1597237d22bSSergey Kostanbaev * 0x60000000 consisting of 2x Micron MT28F128J3-12 128 Mbit flash on a 32-bit 1607237d22bSSergey Kostanbaev * data bus, for a total of 32 MB of CFI-compatible flash. 1617237d22bSSergey Kostanbaev * 1627237d22bSSergey Kostanbaev * 1637237d22bSSergey Kostanbaev * EDB9301/02(a)7a/15a EDB9307/12/15 1647237d22bSSergey Kostanbaev * 0x60000000 - 0x0003FFFF u-boot u-boot 1657237d22bSSergey Kostanbaev * 0x60040000 - 0x0005FFFF environment #1 environment #1 1667237d22bSSergey Kostanbaev * 0x60060000 - 0x0007FFFF environment #2 environment #1 (continued) 1677237d22bSSergey Kostanbaev * 0x60080000 - 0x0009FFFF unused environment #2 1687237d22bSSergey Kostanbaev * 0x600A0000 - 0x000BFFFF unused environment #2 (continued) 1697237d22bSSergey Kostanbaev * 0x600C0000 - 0x00FFFFFF unused unused 1707237d22bSSergey Kostanbaev * 0x61000000 - 0x01FFFFFF not present unused 1717237d22bSSergey Kostanbaev */ 1727237d22bSSergey Kostanbaev 1737237d22bSSergey Kostanbaev #define CONFIG_SYS_MAX_FLASH_BANKS 1 1747237d22bSSergey Kostanbaev #define CONFIG_SYS_MAX_FLASH_SECT (256+8) 1757237d22bSSergey Kostanbaev 1767237d22bSSergey Kostanbaev #define PHYS_FLASH_1 CONFIG_SYS_TEXT_BASE 1777237d22bSSergey Kostanbaev #define CONFIG_SYS_FLASH_BASE CONFIG_SYS_TEXT_BASE 1787237d22bSSergey Kostanbaev 1797237d22bSSergey Kostanbaev #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_FLASH_BASE 1807237d22bSSergey Kostanbaev #define CONFIG_SYS_MONITOR_LEN (256 * 1024) 1817237d22bSSergey Kostanbaev 1827237d22bSSergey Kostanbaev #define CONFIG_ENV_OVERWRITE /* Vendor params unprotected */ 1837237d22bSSergey Kostanbaev 1847237d22bSSergey Kostanbaev #define CONFIG_ENV_ADDR 0x60040000 1857237d22bSSergey Kostanbaev #define CONFIG_ENV_ADDR_REDUND (CONFIG_ENV_ADDR + CONFIG_ENV_SECT_SIZE) 1867237d22bSSergey Kostanbaev 1877237d22bSSergey Kostanbaev #define CONFIG_ENV_SIZE CONFIG_ENV_SECT_SIZE 1887237d22bSSergey Kostanbaev #define CONFIG_ENV_SIZE_REDUND CONFIG_ENV_SIZE 1897237d22bSSergey Kostanbaev 1907237d22bSSergey Kostanbaev #define CONFIG_USB_OHCI_NEW 1917237d22bSSergey Kostanbaev #define CONFIG_USB_OHCI_EP93XX 1927237d22bSSergey Kostanbaev #define CONFIG_SYS_USB_OHCI_CPU_INIT 1937237d22bSSergey Kostanbaev #define CONFIG_SYS_USB_OHCI_MAX_ROOT_PORTS 3 1947237d22bSSergey Kostanbaev #define CONFIG_SYS_USB_OHCI_SLOT_NAME "ep93xx-ohci" 1957237d22bSSergey Kostanbaev #define CONFIG_SYS_USB_OHCI_REGS_BASE 0x80020000 1967237d22bSSergey Kostanbaev 1977237d22bSSergey Kostanbaev /* Define to disable flash configuration*/ 1987237d22bSSergey Kostanbaev /* #define CONFIG_EP93XX_NO_FLASH_CFG */ 1997237d22bSSergey Kostanbaev 2007237d22bSSergey Kostanbaev /* Define this for indusrial rated chips */ 2017237d22bSSergey Kostanbaev /* #define CONFIG_EDB93XX_INDUSTRIAL */ 2027237d22bSSergey Kostanbaev 2037237d22bSSergey Kostanbaev #endif /* !defined (__CONFIG_H) */ 204