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 */ 119d0fc811SDirk Behme 1229cc1d8eSAsh Charles #include <configs/ti_omap3_common.h> 13*fa2f81b0STom Rini /* 14*fa2f81b0STom Rini * We are only ever GP parts and will utilize all of the "downloaded image" 15*fa2f81b0STom Rini * area in SRAM which starts at 0x40200000 and ends at 0x4020FFFF (64KB). 16*fa2f81b0STom Rini */ 17ce170a1cSAsh Charles #undef CONFIG_SPL_TEXT_BASE 18ce170a1cSAsh Charles #define CONFIG_SPL_TEXT_BASE 0x40200000 19ce170a1cSAsh Charles 2029cc1d8eSAsh Charles /* call misc_init_r */ 219d0fc811SDirk Behme #define CONFIG_MISC_INIT_R 229d0fc811SDirk Behme 2329cc1d8eSAsh Charles /* pass the revision tag */ 240f8d3eb9SAndreas Müller #define CONFIG_REVISION_TAG 259d0fc811SDirk Behme 2629cc1d8eSAsh Charles /* override size of malloc() pool */ 2729cc1d8eSAsh Charles #undef CONFIG_SYS_MALLOC_LEN 28dbba3dafSAsh Charles #define CONFIG_ENV_SIZE (128 << 10) /* 128 KiB sector */ 29dbba3dafSAsh Charles /* Shift 128 << 15 provides 4 MiB heap to support UBI commands. 30dbba3dafSAsh Charles * Shift 128 << 10 provides 128 KiB heap for limited-memory devices. */ 31dbba3dafSAsh Charles #define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + (128 << 15)) 329d0fc811SDirk Behme 3329cc1d8eSAsh Charles /* I2C Support */ 349d0fc811SDirk Behme 3529cc1d8eSAsh Charles /* TWL4030 LED */ 3629cc1d8eSAsh Charles #define CONFIG_TWL4030_LED 379d0fc811SDirk Behme 38f5c30c1bSStefan Herbrechtsmeier /* USB EHCI */ 39f5c30c1bSStefan Herbrechtsmeier #define CONFIG_OMAP_EHCI_PHY1_RESET_GPIO 183 40f5c30c1bSStefan Herbrechtsmeier 419d0fc811SDirk Behme /* commands to include */ 429d0fc811SDirk Behme 4329cc1d8eSAsh Charles #ifdef CONFIG_NAND 44dbba3dafSAsh Charles /* NAND block size is 128 KiB. Synchronize these values with 45dbba3dafSAsh Charles * overo_nand_partitions in mach-omap2/board-overo.c in Linux: 46dbba3dafSAsh Charles * xloader 4 * NAND_BLOCK_SIZE = 512 KiB 47dbba3dafSAsh Charles * uboot 14 * NAND_BLOCK_SIZE = 1792 KiB 48dbba3dafSAsh Charles * uboot environtment 2 * NAND_BLOCK_SIZE = 256 KiB 49e5c809d7SPeter A. Bigot * linux 64 * NAND_BLOCK_SIZE = 8 MiB 50dbba3dafSAsh Charles * rootfs remainder 51dbba3dafSAsh Charles */ 52dbba3dafSAsh Charles #define MTDIDS_DEFAULT "nand0=omap2-nand.0" 53dbba3dafSAsh Charles #define MTDPARTS_DEFAULT "mtdparts=omap2-nand.0:" \ 54dbba3dafSAsh Charles "512k(xloader)," \ 55dbba3dafSAsh Charles "1792k(u-boot)," \ 56dbba3dafSAsh Charles "256k(environ)," \ 57e5c809d7SPeter A. Bigot "8m(linux)," \ 58dbba3dafSAsh Charles "-(rootfs)" 5929cc1d8eSAsh Charles #else /* CONFIG_NAND */ 60dbba3dafSAsh Charles #define MTDPARTS_DEFAULT 6129cc1d8eSAsh Charles #endif /* CONFIG_NAND */ 62dbba3dafSAsh Charles 6329cc1d8eSAsh Charles /* Board NAND Info. */ 649d0fc811SDirk Behme #define CONFIG_SYS_NAND_ADDR NAND_BASE /* physical address */ 659d0fc811SDirk Behme /* to access nand */ 669d0fc811SDirk Behme /* Environment information */ 679d0fc811SDirk Behme #define CONFIG_EXTRA_ENV_SETTINGS \ 6829cc1d8eSAsh Charles DEFAULT_LINUX_BOOT_ENV \ 693c92c323SAsh Charles "bootdir=/boot\0" \ 703c92c323SAsh Charles "bootfile=zImage\0" \ 713c92c323SAsh Charles "usbtty=cdc_acm\0" \ 7275b988a2SPhilip Balister "console=ttyO2,115200n8\0" \ 733c92c323SAsh Charles "mpurate=auto\0" \ 74e6847dbaSPhilip Balister "optargs=\0" \ 7513d2cb98SSteve Sakoman "vram=12M\0" \ 7613d2cb98SSteve Sakoman "dvimode=1024x768MR-16@60\0" \ 7713d2cb98SSteve Sakoman "defaultdisplay=dvi\0" \ 78cd7c5726SSteve Sakoman "mmcdev=0\0" \ 7913d2cb98SSteve Sakoman "mmcroot=/dev/mmcblk0p2 rw\0" \ 801584e4f4SAdam YH Lee "mmcrootfstype=ext4 rootwait\0" \ 81254973e6SSteve Sakoman "nandroot=ubi0:rootfs ubi.mtd=4\0" \ 82254973e6SSteve Sakoman "nandrootfstype=ubifs\0" \ 83dbba3dafSAsh Charles "mtdparts=" MTDPARTS_DEFAULT "\0" \ 849d0fc811SDirk Behme "mmcargs=setenv bootargs console=${console} " \ 85e6847dbaSPhilip Balister "${optargs} " \ 865af32460SSteve Sakoman "mpurate=${mpurate} " \ 8713d2cb98SSteve Sakoman "vram=${vram} " \ 8813d2cb98SSteve Sakoman "omapfb.mode=dvi:${dvimode} " \ 8913d2cb98SSteve Sakoman "omapdss.def_disp=${defaultdisplay} " \ 9013d2cb98SSteve Sakoman "root=${mmcroot} " \ 9113d2cb98SSteve Sakoman "rootfstype=${mmcrootfstype}\0" \ 929d0fc811SDirk Behme "nandargs=setenv bootargs console=${console} " \ 93e6847dbaSPhilip Balister "${optargs} " \ 945af32460SSteve Sakoman "mpurate=${mpurate} " \ 9513d2cb98SSteve Sakoman "vram=${vram} " \ 9613d2cb98SSteve Sakoman "omapfb.mode=dvi:${dvimode} " \ 9713d2cb98SSteve Sakoman "omapdss.def_disp=${defaultdisplay} " \ 9813d2cb98SSteve Sakoman "root=${nandroot} " \ 9913d2cb98SSteve Sakoman "rootfstype=${nandrootfstype}\0" \ 1003c92c323SAsh Charles "loadbootscript=load mmc ${mmcdev} ${loadaddr} boot.scr\0" \ 1019d0fc811SDirk Behme "bootscript=echo Running boot script from mmc ...; " \ 10274de7aefSWolfgang Denk "source ${loadaddr}\0" \ 1033c92c323SAsh Charles "loadbootenv=load mmc ${mmcdev} ${loadaddr} uEnv.txt\0" \ 1043c92c323SAsh Charles "importbootenv=echo Importing environment from mmc ...; " \ 1050b3fde11SAsh Charles "env import -t ${loadaddr} ${filesize}\0" \ 1063c92c323SAsh Charles "loaduimage=load mmc ${mmcdev} ${loadaddr} uImage\0" \ 1079d0fc811SDirk Behme "mmcboot=echo Booting from mmc...; " \ 1089d0fc811SDirk Behme "run mmcargs; " \ 1099d0fc811SDirk Behme "bootm ${loadaddr}\0" \ 1103c92c323SAsh Charles "loadzimage=load mmc ${mmcdev}:2 ${loadaddr} ${bootdir}/${bootfile}\0" \ 11129cc1d8eSAsh Charles "loadfdt=load mmc ${mmcdev}:2 ${fdtaddr} ${bootdir}/${fdtfile}\0" \ 11288d89668SAsh Charles "loadubizimage=ubifsload ${loadaddr} ${bootdir}/${bootfile}\0" \ 11388d89668SAsh Charles "loadubifdt=ubifsload ${fdtaddr} ${bootdir}/${fdtfile}\0" \ 1143c92c323SAsh Charles "mmcbootfdt=echo Booting with DT from mmc ...; " \ 1153c92c323SAsh Charles "run mmcargs; " \ 11629cc1d8eSAsh Charles "bootz ${loadaddr} - ${fdtaddr}\0" \ 1179d0fc811SDirk Behme "nandboot=echo Booting from nand ...; " \ 1189d0fc811SDirk Behme "run nandargs; " \ 119f2565a55SStefan Herbrechtsmeier "if nand read ${loadaddr} linux; then " \ 120f2565a55SStefan Herbrechtsmeier "bootm ${loadaddr};" \ 121f2565a55SStefan Herbrechtsmeier "fi;\0" \ 12288d89668SAsh Charles "nanddtsboot=echo Booting from nand with DTS...; " \ 12388d89668SAsh Charles "run nandargs; " \ 12488d89668SAsh Charles "ubi part rootfs; "\ 12588d89668SAsh Charles "ubifsmount ubi0:rootfs; "\ 12688d89668SAsh Charles "run loadubifdt; "\ 12788d89668SAsh Charles "run loadubizimage; "\ 12888d89668SAsh Charles "bootz ${loadaddr} - ${fdtaddr}\0" \ 1299d0fc811SDirk Behme 1309d0fc811SDirk Behme #define CONFIG_BOOTCOMMAND \ 13166968110SAndrew Bradford "mmc dev ${mmcdev}; if mmc rescan; then " \ 1329d0fc811SDirk Behme "if run loadbootscript; then " \ 1339d0fc811SDirk Behme "run bootscript; " \ 1343c92c323SAsh Charles "fi;" \ 1350b3fde11SAsh Charles "if run loadbootenv; then " \ 1363c92c323SAsh Charles "echo Loaded environment from ${bootenv};" \ 1370b3fde11SAsh Charles "run importbootenv;" \ 1383c92c323SAsh Charles "fi;" \ 1393c92c323SAsh Charles "if test -n $uenvcmd; then " \ 1400b3fde11SAsh Charles "echo Running uenvcmd ...;" \ 1410b3fde11SAsh Charles "run uenvcmd;" \ 1420b3fde11SAsh Charles "fi;" \ 1439d0fc811SDirk Behme "if run loaduimage; then " \ 1449d0fc811SDirk Behme "run mmcboot;" \ 1453c92c323SAsh Charles "fi;" \ 1463c92c323SAsh Charles "if run loadzimage; then " \ 147115e71f7SStefan Herbrechtsmeier "if test -z \"${fdtfile}\"; then " \ 14812cc5437SAsh Charles "setenv fdtfile omap3-${boardname}-${expansionname}.dtb;" \ 14912cc5437SAsh Charles "fi;" \ 1503c92c323SAsh Charles "if run loadfdt; then " \ 1513c92c323SAsh Charles "run mmcbootfdt;" \ 1529d0fc811SDirk Behme "fi;" \ 1539d0fc811SDirk Behme "fi;" \ 1543c92c323SAsh Charles "fi;" \ 1553c92c323SAsh Charles "run nandboot; " \ 15688d89668SAsh Charles "if test -z \"${fdtfile}\"; then "\ 15788d89668SAsh Charles "setenv fdtfile omap3-${boardname}-${expansionname}.dtb;" \ 15888d89668SAsh Charles "fi;" \ 15988d89668SAsh Charles "run nanddtsboot; " \ 1609d0fc811SDirk Behme 1619d0fc811SDirk Behme /* memtest works on */ 1629d0fc811SDirk Behme #define CONFIG_SYS_MEMTEST_START (OMAP34XX_SDRC_CS0) 1639d0fc811SDirk Behme #define CONFIG_SYS_MEMTEST_END (OMAP34XX_SDRC_CS0 + \ 1649d0fc811SDirk Behme 0x01F00000) /* 31MB */ 1659d0fc811SDirk Behme 16629cc1d8eSAsh Charles /* FLASH and environment organization */ 16729cc1d8eSAsh Charles #if defined(CONFIG_NAND) 168222a3113Spekon gupta #define CONFIG_SYS_FLASH_BASE NAND_BASE 1696cbec7b3SLuca Ceresoli #endif 1709d0fc811SDirk Behme 1719d0fc811SDirk Behme /* Monitor at start of flash */ 1729d0fc811SDirk Behme #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_FLASH_BASE 1739d0fc811SDirk Behme #define CONFIG_SYS_ONENAND_BASE ONENAND_MAP 1749d0fc811SDirk Behme 1759d0fc811SDirk Behme #define ONENAND_ENV_OFFSET 0x240000 /* environment starts here */ 1769d0fc811SDirk Behme #define SMNAND_ENV_OFFSET 0x240000 /* environment starts here */ 1779d0fc811SDirk Behme 1786cbec7b3SLuca Ceresoli #define CONFIG_SYS_ENV_SECT_SIZE (128 << 10) /* 128 KiB */ 1796cbec7b3SLuca Ceresoli #define CONFIG_ENV_OFFSET SMNAND_ENV_OFFSET 1809d0fc811SDirk Behme #define CONFIG_ENV_ADDR SMNAND_ENV_OFFSET 1819d0fc811SDirk Behme 18229cc1d8eSAsh Charles /* Configure SMSC9211 ethernet */ 183df382626SOlof Johansson #if defined(CONFIG_CMD_NET) 1840f8d3eb9SAndreas Müller #define CONFIG_SMC911X 185df382626SOlof Johansson #define CONFIG_SMC911X_32_BIT 186df382626SOlof Johansson #define CONFIG_SMC911X_BASE 0x2C000000 187df382626SOlof Johansson #endif /* (CONFIG_CMD_NET) */ 188df382626SOlof Johansson 18929cc1d8eSAsh Charles /* Initial RAM setup */ 19031bfcf1cSSteve Sakoman #define CONFIG_SYS_INIT_RAM_ADDR 0x4020f800 19131bfcf1cSSteve Sakoman #define CONFIG_SYS_INIT_RAM_SIZE 0x800 1928e40852fSAneesh V 193137703b8SAndreas Müller /* NAND boot config */ 194ce170a1cSAsh Charles #define CONFIG_SYS_NAND_MAX_ECCPOS 56 195137703b8SAndreas Müller #define CONFIG_SYS_NAND_5_ADDR_CYCLE 196137703b8SAndreas Müller #define CONFIG_SYS_NAND_PAGE_COUNT 64 197137703b8SAndreas Müller #define CONFIG_SYS_NAND_PAGE_SIZE 2048 198137703b8SAndreas Müller #define CONFIG_SYS_NAND_OOBSIZE 64 199137703b8SAndreas Müller #define CONFIG_SYS_NAND_BLOCK_SIZE (128*1024) 200137703b8SAndreas Müller #define CONFIG_SYS_NAND_BAD_BLOCK_POS NAND_LARGE_BADBLOCK_POS 201ce170a1cSAsh Charles #define CONFIG_SYS_NAND_ECCPOS {2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, \ 202ce170a1cSAsh Charles 13, 14, 16, 17, 18, 19, 20, 21, 22, \ 203ce170a1cSAsh Charles 23, 24, 25, 26, 27, 28, 30, 31, 32, \ 204ce170a1cSAsh Charles 33, 34, 35, 36, 37, 38, 39, 40, 41, \ 205ce170a1cSAsh Charles 42, 44, 45, 46, 47, 48, 49, 50, 51, \ 206ce170a1cSAsh Charles 52, 53, 54, 55, 56} 207137703b8SAndreas Müller #define CONFIG_SYS_NAND_ECCSIZE 512 208ce170a1cSAsh Charles #define CONFIG_SYS_NAND_ECCBYTES 13 209ce170a1cSAsh Charles #define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH8_CODE_HW_DETECTION_SW 210137703b8SAndreas Müller #define CONFIG_SYS_NAND_U_BOOT_START CONFIG_SYS_TEXT_BASE 211137703b8SAndreas Müller #define CONFIG_SYS_NAND_U_BOOT_OFFS 0x80000 212434f2cfcSpekon gupta /* NAND: SPL falcon mode configs */ 213434f2cfcSpekon gupta #ifdef CONFIG_SPL_OS_BOOT 214434f2cfcSpekon gupta #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS 0x280000 215434f2cfcSpekon gupta #endif 216137703b8SAndreas Müller 2179d0fc811SDirk Behme #endif /* __CONFIG_H */ 218