19d0fc811SDirk Behme /* 29d0fc811SDirk Behme * Configuration settings for the Gumstix Overo board. 39d0fc811SDirk Behme * 41a459660SWolfgang Denk * SPDX-License-Identifier: GPL-2.0+ 59d0fc811SDirk Behme */ 69d0fc811SDirk Behme 79d0fc811SDirk Behme #ifndef __CONFIG_H 89d0fc811SDirk Behme #define __CONFIG_H 99d0fc811SDirk Behme 10*29cc1d8eSAsh Charles #define CONFIG_NR_DRAM_BANKS 2 /* CS1 may or may not be populated */ 11*29cc1d8eSAsh Charles #define CONFIG_NAND 129d0fc811SDirk Behme 13*29cc1d8eSAsh Charles #include <configs/ti_omap3_common.h> 14cae377b5SVaibhav Hiremath 15*29cc1d8eSAsh Charles /* Display CPU and Board information */ 160f8d3eb9SAndreas Müller #define CONFIG_DISPLAY_CPUINFO 170f8d3eb9SAndreas Müller #define CONFIG_DISPLAY_BOARDINFO 186a6b62e3SSanjeev Premi 19*29cc1d8eSAsh Charles /* call misc_init_r */ 209d0fc811SDirk Behme #define CONFIG_MISC_INIT_R 219d0fc811SDirk Behme 22*29cc1d8eSAsh Charles /* pass the revision tag */ 230f8d3eb9SAndreas Müller #define CONFIG_REVISION_TAG 249d0fc811SDirk Behme 25*29cc1d8eSAsh Charles /* override size of malloc() pool */ 26*29cc1d8eSAsh Charles #undef CONFIG_SYS_MALLOC_LEN 27dbba3dafSAsh Charles #define CONFIG_ENV_SIZE (128 << 10) /* 128 KiB sector */ 28dbba3dafSAsh Charles /* Shift 128 << 15 provides 4 MiB heap to support UBI commands. 29dbba3dafSAsh Charles * Shift 128 << 10 provides 128 KiB heap for limited-memory devices. */ 30dbba3dafSAsh Charles #define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + (128 << 15)) 319d0fc811SDirk Behme 32*29cc1d8eSAsh Charles /* I2C Support */ 33*29cc1d8eSAsh Charles #define CONFIG_SYS_I2C_OMAP34XX 349d0fc811SDirk Behme 35*29cc1d8eSAsh Charles /* TWL4030 LED */ 36*29cc1d8eSAsh Charles #define CONFIG_TWL4030_LED 379d0fc811SDirk Behme 38*29cc1d8eSAsh Charles /* Initialize GPIOs by default */ 3906ae2b0cSAsh Charles #define CONFIG_OMAP3_GPIO_2 /* GPIO32..63 is in GPIO Bank 2 */ 4006ae2b0cSAsh Charles #define CONFIG_OMAP3_GPIO_3 /* GPIO64..95 is in GPIO Bank 3 */ 4106ae2b0cSAsh Charles #define CONFIG_OMAP3_GPIO_4 /* GPIO96..127 is in GPIO Bank 4 */ 4206ae2b0cSAsh Charles #define CONFIG_OMAP3_GPIO_5 /* GPIO128..159 is in GPIO Bank 5 */ 4306ae2b0cSAsh Charles #define CONFIG_OMAP3_GPIO_6 /* GPIO160..191 is in GPIO Bank 6 */ 4406ae2b0cSAsh Charles 459d0fc811SDirk Behme /* commands to include */ 4668b0fbf0SSteve Sakoman #define CONFIG_CMD_CACHE 479d0fc811SDirk Behme #undef CONFIG_CMD_FPGA /* FPGA configuration Support */ 489d0fc811SDirk Behme #undef CONFIG_CMD_IMI /* iminfo */ 499d0fc811SDirk Behme #undef CONFIG_CMD_NFS /* NFS support */ 509d0fc811SDirk Behme 51*29cc1d8eSAsh Charles #ifdef CONFIG_NAND 52dbba3dafSAsh Charles #define CONFIG_CMD_UBI /* UBI-formated MTD partition support */ 53dbba3dafSAsh Charles #define CONFIG_CMD_UBIFS /* Read-only UBI volume operations */ 54dbba3dafSAsh Charles 55dbba3dafSAsh Charles #define CONFIG_RBTREE /* required by CONFIG_CMD_UBI */ 56dbba3dafSAsh Charles #define CONFIG_LZO /* required by CONFIG_CMD_UBIFS */ 57dbba3dafSAsh Charles 58dbba3dafSAsh Charles #define CONFIG_MTD_PARTITIONS /* required for UBI partition support */ 59dbba3dafSAsh Charles 60dbba3dafSAsh Charles /* NAND block size is 128 KiB. Synchronize these values with 61dbba3dafSAsh Charles * overo_nand_partitions in mach-omap2/board-overo.c in Linux: 62dbba3dafSAsh Charles * xloader 4 * NAND_BLOCK_SIZE = 512 KiB 63dbba3dafSAsh Charles * uboot 14 * NAND_BLOCK_SIZE = 1792 KiB 64dbba3dafSAsh Charles * uboot environtment 2 * NAND_BLOCK_SIZE = 256 KiB 65e5c809d7SPeter A. Bigot * linux 64 * NAND_BLOCK_SIZE = 8 MiB 66dbba3dafSAsh Charles * rootfs remainder 67dbba3dafSAsh Charles */ 68dbba3dafSAsh Charles #define MTDIDS_DEFAULT "nand0=omap2-nand.0" 69dbba3dafSAsh Charles #define MTDPARTS_DEFAULT "mtdparts=omap2-nand.0:" \ 70dbba3dafSAsh Charles "512k(xloader)," \ 71dbba3dafSAsh Charles "1792k(u-boot)," \ 72dbba3dafSAsh Charles "256k(environ)," \ 73e5c809d7SPeter A. Bigot "8m(linux)," \ 74dbba3dafSAsh Charles "-(rootfs)" 75*29cc1d8eSAsh Charles #else /* CONFIG_NAND */ 76dbba3dafSAsh Charles #define MTDPARTS_DEFAULT 77*29cc1d8eSAsh Charles #endif /* CONFIG_NAND */ 78dbba3dafSAsh Charles 79*29cc1d8eSAsh Charles /* Board NAND Info. */ 800f8d3eb9SAndreas Müller #define CONFIG_SYS_NAND_QUIET_TEST 819d0fc811SDirk Behme #define CONFIG_SYS_NAND_ADDR NAND_BASE /* physical address */ 829d0fc811SDirk Behme /* to access nand */ 839d0fc811SDirk Behme /* Environment information */ 849d0fc811SDirk Behme #define CONFIG_EXTRA_ENV_SETTINGS \ 85*29cc1d8eSAsh Charles DEFAULT_LINUX_BOOT_ENV \ 86*29cc1d8eSAsh Charles "fdtfile=overo.dtb\0" \ 873c92c323SAsh Charles "bootdir=/boot\0" \ 883c92c323SAsh Charles "bootfile=zImage\0" \ 893c92c323SAsh Charles "usbtty=cdc_acm\0" \ 9075b988a2SPhilip Balister "console=ttyO2,115200n8\0" \ 913c92c323SAsh Charles "mpurate=auto\0" \ 92e6847dbaSPhilip Balister "optargs=\0" \ 9313d2cb98SSteve Sakoman "vram=12M\0" \ 9413d2cb98SSteve Sakoman "dvimode=1024x768MR-16@60\0" \ 9513d2cb98SSteve Sakoman "defaultdisplay=dvi\0" \ 96cd7c5726SSteve Sakoman "mmcdev=0\0" \ 9713d2cb98SSteve Sakoman "mmcroot=/dev/mmcblk0p2 rw\0" \ 9813d2cb98SSteve Sakoman "mmcrootfstype=ext3 rootwait\0" \ 99254973e6SSteve Sakoman "nandroot=ubi0:rootfs ubi.mtd=4\0" \ 100254973e6SSteve Sakoman "nandrootfstype=ubifs\0" \ 101dbba3dafSAsh Charles "mtdparts=" MTDPARTS_DEFAULT "\0" \ 1029d0fc811SDirk Behme "mmcargs=setenv bootargs console=${console} " \ 103e6847dbaSPhilip Balister "${optargs} " \ 1045af32460SSteve Sakoman "mpurate=${mpurate} " \ 10513d2cb98SSteve Sakoman "vram=${vram} " \ 10613d2cb98SSteve Sakoman "omapfb.mode=dvi:${dvimode} " \ 10713d2cb98SSteve Sakoman "omapdss.def_disp=${defaultdisplay} " \ 10813d2cb98SSteve Sakoman "root=${mmcroot} " \ 10913d2cb98SSteve Sakoman "rootfstype=${mmcrootfstype}\0" \ 1109d0fc811SDirk Behme "nandargs=setenv bootargs console=${console} " \ 111e6847dbaSPhilip Balister "${optargs} " \ 1125af32460SSteve Sakoman "mpurate=${mpurate} " \ 11313d2cb98SSteve Sakoman "vram=${vram} " \ 11413d2cb98SSteve Sakoman "omapfb.mode=dvi:${dvimode} " \ 11513d2cb98SSteve Sakoman "omapdss.def_disp=${defaultdisplay} " \ 11613d2cb98SSteve Sakoman "root=${nandroot} " \ 11713d2cb98SSteve Sakoman "rootfstype=${nandrootfstype}\0" \ 1183c92c323SAsh Charles "loadbootscript=load mmc ${mmcdev} ${loadaddr} boot.scr\0" \ 1199d0fc811SDirk Behme "bootscript=echo Running boot script from mmc ...; " \ 12074de7aefSWolfgang Denk "source ${loadaddr}\0" \ 1213c92c323SAsh Charles "loadbootenv=load mmc ${mmcdev} ${loadaddr} uEnv.txt\0" \ 1223c92c323SAsh Charles "importbootenv=echo Importing environment from mmc ...; " \ 1230b3fde11SAsh Charles "env import -t ${loadaddr} ${filesize}\0" \ 1243c92c323SAsh Charles "loaduimage=load mmc ${mmcdev} ${loadaddr} uImage\0" \ 1259d0fc811SDirk Behme "mmcboot=echo Booting from mmc...; " \ 1269d0fc811SDirk Behme "run mmcargs; " \ 1279d0fc811SDirk Behme "bootm ${loadaddr}\0" \ 1283c92c323SAsh Charles "loadzimage=load mmc ${mmcdev}:2 ${loadaddr} ${bootdir}/${bootfile}\0" \ 129*29cc1d8eSAsh Charles "loadfdt=load mmc ${mmcdev}:2 ${fdtaddr} ${bootdir}/${fdtfile}\0" \ 1303c92c323SAsh Charles "mmcbootfdt=echo Booting with DT from mmc ...; " \ 1313c92c323SAsh Charles "run mmcargs; " \ 132*29cc1d8eSAsh Charles "bootz ${loadaddr} - ${fdtaddr}\0" \ 1339d0fc811SDirk Behme "nandboot=echo Booting from nand ...; " \ 1349d0fc811SDirk Behme "run nandargs; " \ 135bcb2cf1bSAsh Charles "nand read ${loadaddr} linux; " \ 1369d0fc811SDirk Behme "bootm ${loadaddr}\0" \ 1379d0fc811SDirk Behme 1389d0fc811SDirk Behme #define CONFIG_BOOTCOMMAND \ 13966968110SAndrew Bradford "mmc dev ${mmcdev}; if mmc rescan; then " \ 1409d0fc811SDirk Behme "if run loadbootscript; then " \ 1419d0fc811SDirk Behme "run bootscript; " \ 1423c92c323SAsh Charles "fi;" \ 1430b3fde11SAsh Charles "if run loadbootenv; then " \ 1443c92c323SAsh Charles "echo Loaded environment from ${bootenv};" \ 1450b3fde11SAsh Charles "run importbootenv;" \ 1463c92c323SAsh Charles "fi;" \ 1473c92c323SAsh Charles "if test -n $uenvcmd; then " \ 1480b3fde11SAsh Charles "echo Running uenvcmd ...;" \ 1490b3fde11SAsh Charles "run uenvcmd;" \ 1500b3fde11SAsh Charles "fi;" \ 1519d0fc811SDirk Behme "if run loaduimage; then " \ 1529d0fc811SDirk Behme "run mmcboot;" \ 1533c92c323SAsh Charles "fi;" \ 1543c92c323SAsh Charles "if run loadzimage; then " \ 155*29cc1d8eSAsh Charles "if test -n $fdtfile; then " \ 1563c92c323SAsh Charles "if run loadfdt; then " \ 1573c92c323SAsh Charles "run mmcbootfdt;" \ 1589d0fc811SDirk Behme "fi;" \ 1599d0fc811SDirk Behme "fi;" \ 1603c92c323SAsh Charles "fi;" \ 1613c92c323SAsh Charles "fi;" \ 1623c92c323SAsh Charles "run nandboot; " \ 1639d0fc811SDirk Behme 1649d0fc811SDirk Behme /* 1659d0fc811SDirk Behme * Miscellaneous configurable options 1669d0fc811SDirk Behme */ 167*29cc1d8eSAsh Charles #undef CONFIG_SYS_PROMPT 1681270ec13SRobert P. J. Day #define CONFIG_SYS_PROMPT "Overo # " 169*29cc1d8eSAsh Charles 1709d0fc811SDirk Behme /* memtest works on */ 1719d0fc811SDirk Behme #define CONFIG_SYS_MEMTEST_START (OMAP34XX_SDRC_CS0) 1729d0fc811SDirk Behme #define CONFIG_SYS_MEMTEST_END (OMAP34XX_SDRC_CS0 + \ 1739d0fc811SDirk Behme 0x01F00000) /* 31MB */ 1749d0fc811SDirk Behme 175*29cc1d8eSAsh Charles /* FLASH and environment organization */ 1769d0fc811SDirk Behme /* Configure the PISMO */ 1779d0fc811SDirk Behme #define PISMO1_NAND_SIZE GPMC_SIZE_128M 1789d0fc811SDirk Behme #define PISMO1_ONEN_SIZE GPMC_SIZE_128M 1799d0fc811SDirk Behme 180*29cc1d8eSAsh Charles #if defined(CONFIG_NAND) 1816cbec7b3SLuca Ceresoli #define CONFIG_SYS_FLASH_BASE PISMO1_NAND_BASE 1826cbec7b3SLuca Ceresoli #endif 1839d0fc811SDirk Behme 1849d0fc811SDirk Behme /* Monitor at start of flash */ 1859d0fc811SDirk Behme #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_FLASH_BASE 1869d0fc811SDirk Behme #define CONFIG_SYS_ONENAND_BASE ONENAND_MAP 1879d0fc811SDirk Behme 1880f8d3eb9SAndreas Müller #define CONFIG_ENV_IS_IN_NAND 1899d0fc811SDirk Behme #define ONENAND_ENV_OFFSET 0x240000 /* environment starts here */ 1909d0fc811SDirk Behme #define SMNAND_ENV_OFFSET 0x240000 /* environment starts here */ 1919d0fc811SDirk Behme 1926cbec7b3SLuca Ceresoli #define CONFIG_SYS_ENV_SECT_SIZE (128 << 10) /* 128 KiB */ 1936cbec7b3SLuca Ceresoli #define CONFIG_ENV_OFFSET SMNAND_ENV_OFFSET 1949d0fc811SDirk Behme #define CONFIG_ENV_ADDR SMNAND_ENV_OFFSET 1959d0fc811SDirk Behme 196*29cc1d8eSAsh Charles /* Configure SMSC9211 ethernet */ 197df382626SOlof Johansson #if defined(CONFIG_CMD_NET) 1980f8d3eb9SAndreas Müller #define CONFIG_SMC911X 199df382626SOlof Johansson #define CONFIG_SMC911X_32_BIT 200df382626SOlof Johansson #define CONFIG_SMC911X_BASE 0x2C000000 201df382626SOlof Johansson #endif /* (CONFIG_CMD_NET) */ 202df382626SOlof Johansson 203*29cc1d8eSAsh Charles /* Initial RAM setup */ 20431bfcf1cSSteve Sakoman #define CONFIG_SYS_INIT_RAM_ADDR 0x4020f800 20531bfcf1cSSteve Sakoman #define CONFIG_SYS_INIT_RAM_SIZE 0x800 2068e40852fSAneesh V #define CONFIG_SYS_CACHELINE_SIZE 64 2078e40852fSAneesh V 208137703b8SAndreas Müller /* NAND boot config */ 209137703b8SAndreas Müller #define CONFIG_SYS_NAND_5_ADDR_CYCLE 210137703b8SAndreas Müller #define CONFIG_SYS_NAND_PAGE_COUNT 64 211137703b8SAndreas Müller #define CONFIG_SYS_NAND_PAGE_SIZE 2048 212137703b8SAndreas Müller #define CONFIG_SYS_NAND_OOBSIZE 64 213137703b8SAndreas Müller #define CONFIG_SYS_NAND_BLOCK_SIZE (128*1024) 214137703b8SAndreas Müller #define CONFIG_SYS_NAND_BAD_BLOCK_POS NAND_LARGE_BADBLOCK_POS 215137703b8SAndreas Müller #define CONFIG_SYS_NAND_ECCPOS {2, 3, 4, 5, 6, 7, 8, 9,\ 216137703b8SAndreas Müller 10, 11, 12, 13} 217137703b8SAndreas Müller #define CONFIG_SYS_NAND_ECCSIZE 512 218137703b8SAndreas Müller #define CONFIG_SYS_NAND_ECCBYTES 3 2193f719069Spekon gupta #define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_HAM1_CODE_HW 220137703b8SAndreas Müller #define CONFIG_SYS_NAND_U_BOOT_START CONFIG_SYS_TEXT_BASE 221137703b8SAndreas Müller #define CONFIG_SYS_NAND_U_BOOT_OFFS 0x80000 222137703b8SAndreas Müller 2239d0fc811SDirk Behme #endif /* __CONFIG_H */ 224