133b1d3f4SDaniel Gorsulowski /* 233b1d3f4SDaniel Gorsulowski * (C) Copyright 2007-2008 3c9e798d3SStelian Pop * Stelian Pop <stelian@popies.net> 433b1d3f4SDaniel Gorsulowski * Lead Tech Design <www.leadtechdesign.com> 533b1d3f4SDaniel Gorsulowski * 683bf0057SDaniel Gorsulowski * (C) Copyright 2009-2015 733b1d3f4SDaniel Gorsulowski * Daniel Gorsulowski <daniel.gorsulowski@esd.eu> 833b1d3f4SDaniel Gorsulowski * esd electronic system design gmbh <www.esd.eu> 933b1d3f4SDaniel Gorsulowski * 1033b1d3f4SDaniel Gorsulowski * Configuation settings for the esd MEESC board. 1133b1d3f4SDaniel Gorsulowski * 121a459660SWolfgang Denk * SPDX-License-Identifier: GPL-2.0+ 1333b1d3f4SDaniel Gorsulowski */ 1433b1d3f4SDaniel Gorsulowski 1533b1d3f4SDaniel Gorsulowski #ifndef __CONFIG_H 1633b1d3f4SDaniel Gorsulowski #define __CONFIG_H 1733b1d3f4SDaniel Gorsulowski 180cb77bfaSMatthias Fuchs /* 190cb77bfaSMatthias Fuchs * SoC must be defined first, before hardware.h is included. 200cb77bfaSMatthias Fuchs * In this case SoC is defined in boards.cfg. 210cb77bfaSMatthias Fuchs */ 220cb77bfaSMatthias Fuchs #include <asm/hardware.h> 230cb77bfaSMatthias Fuchs 240cb77bfaSMatthias Fuchs /* 250cb77bfaSMatthias Fuchs * Warning: changing CONFIG_SYS_TEXT_BASE requires 260cb77bfaSMatthias Fuchs * adapting the initial boot program. 270cb77bfaSMatthias Fuchs * Since the linker has to swallow that define, we must use a pure 280cb77bfaSMatthias Fuchs * hex number here! 290cb77bfaSMatthias Fuchs */ 3083bf0057SDaniel Gorsulowski #define CONFIG_SYS_TEXT_BASE 0x21F00000 310cb77bfaSMatthias Fuchs 320cb77bfaSMatthias Fuchs /* ARM asynchronous clock */ 330cb77bfaSMatthias Fuchs #define CONFIG_SYS_AT91_SLOW_CLOCK 32768 /* 32.768 kHz crystal */ 349f07dedeSDaniel Gorsulowski #define CONFIG_SYS_AT91_MAIN_CLOCK 16000000/* 16.0 MHz crystal */ 350cb77bfaSMatthias Fuchs 360cb77bfaSMatthias Fuchs /* Misc CPU related */ 370cb77bfaSMatthias Fuchs #define CONFIG_SKIP_LOWLEVEL_INIT 380cb77bfaSMatthias Fuchs #define CONFIG_ARCH_CPU_INIT 390cb77bfaSMatthias Fuchs #define CONFIG_SETUP_MEMORY_TAGS 400cb77bfaSMatthias Fuchs #define CONFIG_INITRD_TAG 410cb77bfaSMatthias Fuchs #define CONFIG_SERIAL_TAG 420cb77bfaSMatthias Fuchs #define CONFIG_REVISION_TAG 430cb77bfaSMatthias Fuchs #define CONFIG_CMDLINE_TAG /* enable passing of ATAGs */ 440cb77bfaSMatthias Fuchs #define CONFIG_MISC_INIT_R /* Call misc_init_r */ 4533b1d3f4SDaniel Gorsulowski 460cb77bfaSMatthias Fuchs #define CONFIG_PREBOOT /* enable preboot variable */ 4733b1d3f4SDaniel Gorsulowski 4833b1d3f4SDaniel Gorsulowski /* 4933b1d3f4SDaniel Gorsulowski * Hardware drivers 5033b1d3f4SDaniel Gorsulowski */ 5133b1d3f4SDaniel Gorsulowski 5233b1d3f4SDaniel Gorsulowski /* 5333b1d3f4SDaniel Gorsulowski * BOOTP options 5433b1d3f4SDaniel Gorsulowski */ 550cb77bfaSMatthias Fuchs #define CONFIG_BOOTP_BOOTFILESIZE 560cb77bfaSMatthias Fuchs #define CONFIG_BOOTP_BOOTPATH 570cb77bfaSMatthias Fuchs #define CONFIG_BOOTP_GATEWAY 580cb77bfaSMatthias Fuchs #define CONFIG_BOOTP_HOSTNAME 5933b1d3f4SDaniel Gorsulowski 600cb77bfaSMatthias Fuchs /* 610cb77bfaSMatthias Fuchs * SDRAM: 1 bank, min 32, max 128 MB 620cb77bfaSMatthias Fuchs * Initialized before u-boot gets started. 630cb77bfaSMatthias Fuchs */ 6483bf0057SDaniel Gorsulowski #define PHYS_SDRAM ATMEL_BASE_CS1 /* 0x20000000 */ 6583bf0057SDaniel Gorsulowski #define PHYS_SDRAM_SIZE 0x02000000 /* 32 MByte */ 6683bf0057SDaniel Gorsulowski 6733b1d3f4SDaniel Gorsulowski #define CONFIG_NR_DRAM_BANKS 1 6883bf0057SDaniel Gorsulowski #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM 6983bf0057SDaniel Gorsulowski #define CONFIG_SYS_SDRAM_SIZE PHYS_SDRAM_SIZE 700cb77bfaSMatthias Fuchs 710cb77bfaSMatthias Fuchs #define CONFIG_SYS_MEMTEST_START (CONFIG_SYS_SDRAM_BASE + 0x00100000) 720cb77bfaSMatthias Fuchs #define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_SDRAM_BASE + 0x01E00000) 730cb77bfaSMatthias Fuchs #define CONFIG_SYS_LOAD_ADDR (CONFIG_SYS_SDRAM_BASE + 0x00100000) 740cb77bfaSMatthias Fuchs 750cb77bfaSMatthias Fuchs /* 760cb77bfaSMatthias Fuchs * Initial stack pointer: 4k - GENERATED_GBL_DATA_SIZE in internal SRAM, 770cb77bfaSMatthias Fuchs * leaving the correct space for initial global data structure above 780cb77bfaSMatthias Fuchs * that address while providing maximum stack area below. 790cb77bfaSMatthias Fuchs */ 800cb77bfaSMatthias Fuchs #define CONFIG_SYS_INIT_SP_ADDR \ 81*a818704bSWenyou.Yang@microchip.com (ATMEL_BASE_SRAM0 + 16 * 1024 - GENERATED_GBL_DATA_SIZE) 8233b1d3f4SDaniel Gorsulowski 8333b1d3f4SDaniel Gorsulowski /* NAND flash */ 8433b1d3f4SDaniel Gorsulowski #ifdef CONFIG_CMD_NAND 8533b1d3f4SDaniel Gorsulowski # define CONFIG_SYS_MAX_NAND_DEVICE 1 8683bf0057SDaniel Gorsulowski # define CONFIG_SYS_NAND_BASE ATMEL_BASE_CS3 /* 0x40000000 */ 870cb77bfaSMatthias Fuchs # define CONFIG_SYS_NAND_DBW_8 8833b1d3f4SDaniel Gorsulowski # define CONFIG_SYS_NAND_MASK_ALE (1 << 21) 8933b1d3f4SDaniel Gorsulowski # define CONFIG_SYS_NAND_MASK_CLE (1 << 22) 90ac45bb16SAndreas Bießmann # define CONFIG_SYS_NAND_ENABLE_PIN GPIO_PIN_PD(15) 91ac45bb16SAndreas Bießmann # define CONFIG_SYS_NAND_READY_PIN GPIO_PIN_PA(22) 9233b1d3f4SDaniel Gorsulowski #endif 9333b1d3f4SDaniel Gorsulowski 9433b1d3f4SDaniel Gorsulowski /* Ethernet */ 950cb77bfaSMatthias Fuchs #define CONFIG_MACB 960cb77bfaSMatthias Fuchs #define CONFIG_RMII 9733b1d3f4SDaniel Gorsulowski #define CONFIG_NET_RETRY_COUNT 20 9833b1d3f4SDaniel Gorsulowski #undef CONFIG_RESET_PHY_R 9933b1d3f4SDaniel Gorsulowski 100a380279bSDaniel Gorsulowski /* hw-controller addresses */ 101a380279bSDaniel Gorsulowski #define CONFIG_ET1100_BASE 0x70000000 102a380279bSDaniel Gorsulowski 1030cb77bfaSMatthias Fuchs #ifdef CONFIG_SYS_USE_DATAFLASH 1040cb77bfaSMatthias Fuchs 105a380279bSDaniel Gorsulowski /* bootstrap + u-boot + env in dataflash on CS0 */ 10633b1d3f4SDaniel Gorsulowski #define CONFIG_ENV_OFFSET 0x4200 10733b1d3f4SDaniel Gorsulowski #define CONFIG_ENV_SIZE 0x4200 108*a818704bSWenyou.Yang@microchip.com #define CONFIG_ENV_SECT_SIZE 0x210 109*a818704bSWenyou.Yang@microchip.com #define CONFIG_ENV_SPI_MAX_HZ 15000000 11033b1d3f4SDaniel Gorsulowski 1110cb77bfaSMatthias Fuchs #elif CONFIG_SYS_USE_NANDFLASH 1120cb77bfaSMatthias Fuchs 1130cb77bfaSMatthias Fuchs /* bootstrap + u-boot + env + linux in nandflash */ 1140cb77bfaSMatthias Fuchs # define CONFIG_ENV_OFFSET 0xC0000 1150cb77bfaSMatthias Fuchs # define CONFIG_ENV_SIZE 0x20000 1160cb77bfaSMatthias Fuchs 1170cb77bfaSMatthias Fuchs #endif 11833b1d3f4SDaniel Gorsulowski 1190cb77bfaSMatthias Fuchs #define CONFIG_SYS_CBSIZE 512 1200cb77bfaSMatthias Fuchs #define CONFIG_SYS_LONGHELP 1210cb77bfaSMatthias Fuchs #define CONFIG_CMDLINE_EDITING 12283bf0057SDaniel Gorsulowski #define CONFIG_AUTO_COMPLETE 12333b1d3f4SDaniel Gorsulowski 12433b1d3f4SDaniel Gorsulowski /* 12533b1d3f4SDaniel Gorsulowski * Size of malloc() pool 12633b1d3f4SDaniel Gorsulowski */ 127a380279bSDaniel Gorsulowski #define CONFIG_SYS_MALLOC_LEN ROUND(3 * CONFIG_ENV_SIZE + \ 128a380279bSDaniel Gorsulowski 128*1024, 0x1000) 12933b1d3f4SDaniel Gorsulowski 13033b1d3f4SDaniel Gorsulowski #endif 131