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 1029cc1d8eSAsh Charles #define CONFIG_NR_DRAM_BANKS 2 /* CS1 may or may not be populated */ 1129cc1d8eSAsh Charles #define CONFIG_NAND 129d0fc811SDirk Behme 1329cc1d8eSAsh Charles #include <configs/ti_omap3_common.h> 14cae377b5SVaibhav Hiremath 1529cc1d8eSAsh Charles /* Display CPU and Board information */ 160f8d3eb9SAndreas Müller #define CONFIG_DISPLAY_CPUINFO 170f8d3eb9SAndreas Müller #define CONFIG_DISPLAY_BOARDINFO 186a6b62e3SSanjeev Premi 1929cc1d8eSAsh Charles /* call misc_init_r */ 209d0fc811SDirk Behme #define CONFIG_MISC_INIT_R 219d0fc811SDirk Behme 2229cc1d8eSAsh Charles /* pass the revision tag */ 230f8d3eb9SAndreas Müller #define CONFIG_REVISION_TAG 249d0fc811SDirk Behme 2529cc1d8eSAsh Charles /* override size of malloc() pool */ 2629cc1d8eSAsh 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 3229cc1d8eSAsh Charles /* I2C Support */ 3329cc1d8eSAsh Charles #define CONFIG_SYS_I2C_OMAP34XX 349d0fc811SDirk Behme 3529cc1d8eSAsh Charles /* TWL4030 LED */ 3629cc1d8eSAsh Charles #define CONFIG_TWL4030_LED 379d0fc811SDirk Behme 3829cc1d8eSAsh 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 5129cc1d8eSAsh 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)" 7529cc1d8eSAsh Charles #else /* CONFIG_NAND */ 76dbba3dafSAsh Charles #define MTDPARTS_DEFAULT 7729cc1d8eSAsh Charles #endif /* CONFIG_NAND */ 78dbba3dafSAsh Charles 7929cc1d8eSAsh 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 \ 8529cc1d8eSAsh Charles DEFAULT_LINUX_BOOT_ENV \ 863c92c323SAsh Charles "bootdir=/boot\0" \ 873c92c323SAsh Charles "bootfile=zImage\0" \ 883c92c323SAsh Charles "usbtty=cdc_acm\0" \ 8975b988a2SPhilip Balister "console=ttyO2,115200n8\0" \ 903c92c323SAsh Charles "mpurate=auto\0" \ 91e6847dbaSPhilip Balister "optargs=\0" \ 9213d2cb98SSteve Sakoman "vram=12M\0" \ 9313d2cb98SSteve Sakoman "dvimode=1024x768MR-16@60\0" \ 9413d2cb98SSteve Sakoman "defaultdisplay=dvi\0" \ 95cd7c5726SSteve Sakoman "mmcdev=0\0" \ 9613d2cb98SSteve Sakoman "mmcroot=/dev/mmcblk0p2 rw\0" \ 9713d2cb98SSteve Sakoman "mmcrootfstype=ext3 rootwait\0" \ 98254973e6SSteve Sakoman "nandroot=ubi0:rootfs ubi.mtd=4\0" \ 99254973e6SSteve Sakoman "nandrootfstype=ubifs\0" \ 100dbba3dafSAsh Charles "mtdparts=" MTDPARTS_DEFAULT "\0" \ 1019d0fc811SDirk Behme "mmcargs=setenv bootargs console=${console} " \ 102e6847dbaSPhilip Balister "${optargs} " \ 1035af32460SSteve Sakoman "mpurate=${mpurate} " \ 10413d2cb98SSteve Sakoman "vram=${vram} " \ 10513d2cb98SSteve Sakoman "omapfb.mode=dvi:${dvimode} " \ 10613d2cb98SSteve Sakoman "omapdss.def_disp=${defaultdisplay} " \ 10713d2cb98SSteve Sakoman "root=${mmcroot} " \ 10813d2cb98SSteve Sakoman "rootfstype=${mmcrootfstype}\0" \ 1099d0fc811SDirk Behme "nandargs=setenv bootargs console=${console} " \ 110e6847dbaSPhilip Balister "${optargs} " \ 1115af32460SSteve Sakoman "mpurate=${mpurate} " \ 11213d2cb98SSteve Sakoman "vram=${vram} " \ 11313d2cb98SSteve Sakoman "omapfb.mode=dvi:${dvimode} " \ 11413d2cb98SSteve Sakoman "omapdss.def_disp=${defaultdisplay} " \ 11513d2cb98SSteve Sakoman "root=${nandroot} " \ 11613d2cb98SSteve Sakoman "rootfstype=${nandrootfstype}\0" \ 1173c92c323SAsh Charles "loadbootscript=load mmc ${mmcdev} ${loadaddr} boot.scr\0" \ 1189d0fc811SDirk Behme "bootscript=echo Running boot script from mmc ...; " \ 11974de7aefSWolfgang Denk "source ${loadaddr}\0" \ 1203c92c323SAsh Charles "loadbootenv=load mmc ${mmcdev} ${loadaddr} uEnv.txt\0" \ 1213c92c323SAsh Charles "importbootenv=echo Importing environment from mmc ...; " \ 1220b3fde11SAsh Charles "env import -t ${loadaddr} ${filesize}\0" \ 1233c92c323SAsh Charles "loaduimage=load mmc ${mmcdev} ${loadaddr} uImage\0" \ 1249d0fc811SDirk Behme "mmcboot=echo Booting from mmc...; " \ 1259d0fc811SDirk Behme "run mmcargs; " \ 1269d0fc811SDirk Behme "bootm ${loadaddr}\0" \ 1273c92c323SAsh Charles "loadzimage=load mmc ${mmcdev}:2 ${loadaddr} ${bootdir}/${bootfile}\0" \ 12829cc1d8eSAsh Charles "loadfdt=load mmc ${mmcdev}:2 ${fdtaddr} ${bootdir}/${fdtfile}\0" \ 1293c92c323SAsh Charles "mmcbootfdt=echo Booting with DT from mmc ...; " \ 1303c92c323SAsh Charles "run mmcargs; " \ 13129cc1d8eSAsh Charles "bootz ${loadaddr} - ${fdtaddr}\0" \ 1329d0fc811SDirk Behme "nandboot=echo Booting from nand ...; " \ 1339d0fc811SDirk Behme "run nandargs; " \ 134bcb2cf1bSAsh Charles "nand read ${loadaddr} linux; " \ 1359d0fc811SDirk Behme "bootm ${loadaddr}\0" \ 1369d0fc811SDirk Behme 1379d0fc811SDirk Behme #define CONFIG_BOOTCOMMAND \ 13866968110SAndrew Bradford "mmc dev ${mmcdev}; if mmc rescan; then " \ 1399d0fc811SDirk Behme "if run loadbootscript; then " \ 1409d0fc811SDirk Behme "run bootscript; " \ 1413c92c323SAsh Charles "fi;" \ 1420b3fde11SAsh Charles "if run loadbootenv; then " \ 1433c92c323SAsh Charles "echo Loaded environment from ${bootenv};" \ 1440b3fde11SAsh Charles "run importbootenv;" \ 1453c92c323SAsh Charles "fi;" \ 1463c92c323SAsh Charles "if test -n $uenvcmd; then " \ 1470b3fde11SAsh Charles "echo Running uenvcmd ...;" \ 1480b3fde11SAsh Charles "run uenvcmd;" \ 1490b3fde11SAsh Charles "fi;" \ 1509d0fc811SDirk Behme "if run loaduimage; then " \ 1519d0fc811SDirk Behme "run mmcboot;" \ 1523c92c323SAsh Charles "fi;" \ 1533c92c323SAsh Charles "if run loadzimage; then " \ 15412cc5437SAsh Charles "if test $fdtfile; then " \ 15512cc5437SAsh Charles "setenv fdtfile omap3-${boardname}-${expansionname}.dtb;" \ 15612cc5437SAsh Charles "fi;" \ 1573c92c323SAsh Charles "if run loadfdt; then " \ 1583c92c323SAsh Charles "run mmcbootfdt;" \ 1599d0fc811SDirk Behme "fi;" \ 1609d0fc811SDirk Behme "fi;" \ 1613c92c323SAsh Charles "fi;" \ 1623c92c323SAsh Charles "run nandboot; " \ 1639d0fc811SDirk Behme 1649d0fc811SDirk Behme /* 1659d0fc811SDirk Behme * Miscellaneous configurable options 1669d0fc811SDirk Behme */ 16729cc1d8eSAsh Charles #undef CONFIG_SYS_PROMPT 1681270ec13SRobert P. J. Day #define CONFIG_SYS_PROMPT "Overo # " 16929cc1d8eSAsh 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 17529cc1d8eSAsh Charles /* FLASH and environment organization */ 17629cc1d8eSAsh Charles #if defined(CONFIG_NAND) 177222a3113Spekon gupta #define CONFIG_SYS_FLASH_BASE NAND_BASE 1786cbec7b3SLuca Ceresoli #endif 1799d0fc811SDirk Behme 1809d0fc811SDirk Behme /* Monitor at start of flash */ 1819d0fc811SDirk Behme #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_FLASH_BASE 1829d0fc811SDirk Behme #define CONFIG_SYS_ONENAND_BASE ONENAND_MAP 1839d0fc811SDirk Behme 1840f8d3eb9SAndreas Müller #define CONFIG_ENV_IS_IN_NAND 1859d0fc811SDirk Behme #define ONENAND_ENV_OFFSET 0x240000 /* environment starts here */ 1869d0fc811SDirk Behme #define SMNAND_ENV_OFFSET 0x240000 /* environment starts here */ 1879d0fc811SDirk Behme 1886cbec7b3SLuca Ceresoli #define CONFIG_SYS_ENV_SECT_SIZE (128 << 10) /* 128 KiB */ 1896cbec7b3SLuca Ceresoli #define CONFIG_ENV_OFFSET SMNAND_ENV_OFFSET 1909d0fc811SDirk Behme #define CONFIG_ENV_ADDR SMNAND_ENV_OFFSET 1919d0fc811SDirk Behme 19229cc1d8eSAsh Charles /* Configure SMSC9211 ethernet */ 193df382626SOlof Johansson #if defined(CONFIG_CMD_NET) 1940f8d3eb9SAndreas Müller #define CONFIG_SMC911X 195df382626SOlof Johansson #define CONFIG_SMC911X_32_BIT 196df382626SOlof Johansson #define CONFIG_SMC911X_BASE 0x2C000000 197df382626SOlof Johansson #endif /* (CONFIG_CMD_NET) */ 198df382626SOlof Johansson 19929cc1d8eSAsh Charles /* Initial RAM setup */ 20031bfcf1cSSteve Sakoman #define CONFIG_SYS_INIT_RAM_ADDR 0x4020f800 20131bfcf1cSSteve Sakoman #define CONFIG_SYS_INIT_RAM_SIZE 0x800 2028e40852fSAneesh V #define CONFIG_SYS_CACHELINE_SIZE 64 2038e40852fSAneesh V 204137703b8SAndreas Müller /* NAND boot config */ 205b80a6603Spekon gupta #define CONFIG_SYS_NAND_BUSWIDTH_16BIT 16 206137703b8SAndreas Müller #define CONFIG_SYS_NAND_5_ADDR_CYCLE 207137703b8SAndreas Müller #define CONFIG_SYS_NAND_PAGE_COUNT 64 208137703b8SAndreas Müller #define CONFIG_SYS_NAND_PAGE_SIZE 2048 209137703b8SAndreas Müller #define CONFIG_SYS_NAND_OOBSIZE 64 210137703b8SAndreas Müller #define CONFIG_SYS_NAND_BLOCK_SIZE (128*1024) 211137703b8SAndreas Müller #define CONFIG_SYS_NAND_BAD_BLOCK_POS NAND_LARGE_BADBLOCK_POS 212137703b8SAndreas Müller #define CONFIG_SYS_NAND_ECCPOS {2, 3, 4, 5, 6, 7, 8, 9,\ 213137703b8SAndreas Müller 10, 11, 12, 13} 214137703b8SAndreas Müller #define CONFIG_SYS_NAND_ECCSIZE 512 215137703b8SAndreas Müller #define CONFIG_SYS_NAND_ECCBYTES 3 2163f719069Spekon gupta #define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_HAM1_CODE_HW 217137703b8SAndreas Müller #define CONFIG_SYS_NAND_U_BOOT_START CONFIG_SYS_TEXT_BASE 218137703b8SAndreas Müller #define CONFIG_SYS_NAND_U_BOOT_OFFS 0x80000 219*434f2cfcSpekon gupta /* NAND: SPL falcon mode configs */ 220*434f2cfcSpekon gupta #ifdef CONFIG_SPL_OS_BOOT 221*434f2cfcSpekon gupta #define CONFIG_CMD_SPL_NAND_OFS 0x240000 222*434f2cfcSpekon gupta #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS 0x280000 223*434f2cfcSpekon gupta #define CONFIG_CMD_SPL_WRITE_SIZE 0x2000 224*434f2cfcSpekon gupta #endif 225137703b8SAndreas Müller 2269d0fc811SDirk Behme #endif /* __CONFIG_H */ 227