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> 14ce170a1cSAsh Charles #undef CONFIG_SPL_MAX_SIZE 15ce170a1cSAsh Charles #define CONFIG_SPL_MAX_SIZE (64*1024) 16ce170a1cSAsh Charles #undef CONFIG_SPL_TEXT_BASE 17ce170a1cSAsh Charles #define CONFIG_SPL_TEXT_BASE 0x40200000 18ce170a1cSAsh Charles 19ce170a1cSAsh Charles #define CONFIG_BCH 20cae377b5SVaibhav Hiremath 2129cc1d8eSAsh Charles /* Display CPU and Board information */ 220f8d3eb9SAndreas Müller #define CONFIG_DISPLAY_CPUINFO 230f8d3eb9SAndreas Müller #define CONFIG_DISPLAY_BOARDINFO 246a6b62e3SSanjeev Premi 2529cc1d8eSAsh Charles /* call misc_init_r */ 269d0fc811SDirk Behme #define CONFIG_MISC_INIT_R 279d0fc811SDirk Behme 2829cc1d8eSAsh Charles /* pass the revision tag */ 290f8d3eb9SAndreas Müller #define CONFIG_REVISION_TAG 309d0fc811SDirk Behme 3129cc1d8eSAsh Charles /* override size of malloc() pool */ 3229cc1d8eSAsh Charles #undef CONFIG_SYS_MALLOC_LEN 33dbba3dafSAsh Charles #define CONFIG_ENV_SIZE (128 << 10) /* 128 KiB sector */ 34dbba3dafSAsh Charles /* Shift 128 << 15 provides 4 MiB heap to support UBI commands. 35dbba3dafSAsh Charles * Shift 128 << 10 provides 128 KiB heap for limited-memory devices. */ 36dbba3dafSAsh Charles #define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + (128 << 15)) 379d0fc811SDirk Behme 3829cc1d8eSAsh Charles /* I2C Support */ 3929cc1d8eSAsh Charles #define CONFIG_SYS_I2C_OMAP34XX 409d0fc811SDirk Behme 4129cc1d8eSAsh Charles /* TWL4030 LED */ 4229cc1d8eSAsh Charles #define CONFIG_TWL4030_LED 439d0fc811SDirk Behme 44f5c30c1bSStefan Herbrechtsmeier /* USB EHCI */ 45f5c30c1bSStefan Herbrechtsmeier #define CONFIG_USB_EHCI 46f5c30c1bSStefan Herbrechtsmeier #define CONFIG_USB_EHCI_OMAP 47f5c30c1bSStefan Herbrechtsmeier #define CONFIG_USB_STORAGE 48f5c30c1bSStefan Herbrechtsmeier #define CONFIG_OMAP_EHCI_PHY1_RESET_GPIO 183 49f5c30c1bSStefan Herbrechtsmeier #define CONFIG_SYS_USB_EHCI_MAX_ROOT_PORTS 3 50f5c30c1bSStefan Herbrechtsmeier 5129cc1d8eSAsh Charles /* Initialize GPIOs by default */ 5206ae2b0cSAsh Charles #define CONFIG_OMAP3_GPIO_2 /* GPIO32..63 is in GPIO Bank 2 */ 5306ae2b0cSAsh Charles #define CONFIG_OMAP3_GPIO_3 /* GPIO64..95 is in GPIO Bank 3 */ 5406ae2b0cSAsh Charles #define CONFIG_OMAP3_GPIO_4 /* GPIO96..127 is in GPIO Bank 4 */ 5506ae2b0cSAsh Charles #define CONFIG_OMAP3_GPIO_5 /* GPIO128..159 is in GPIO Bank 5 */ 5606ae2b0cSAsh Charles #define CONFIG_OMAP3_GPIO_6 /* GPIO160..191 is in GPIO Bank 6 */ 5706ae2b0cSAsh Charles 589d0fc811SDirk Behme /* commands to include */ 5968b0fbf0SSteve Sakoman #define CONFIG_CMD_CACHE 60f5c30c1bSStefan Herbrechtsmeier #define CONFIG_CMD_USB 619d0fc811SDirk Behme 6229cc1d8eSAsh Charles #ifdef CONFIG_NAND 63dbba3dafSAsh Charles #define CONFIG_CMD_UBI /* UBI-formated MTD partition support */ 64dbba3dafSAsh Charles #define CONFIG_CMD_UBIFS /* Read-only UBI volume operations */ 65dbba3dafSAsh Charles 66dbba3dafSAsh Charles #define CONFIG_RBTREE /* required by CONFIG_CMD_UBI */ 67dbba3dafSAsh Charles #define CONFIG_LZO /* required by CONFIG_CMD_UBIFS */ 68dbba3dafSAsh Charles 69dbba3dafSAsh Charles #define CONFIG_MTD_PARTITIONS /* required for UBI partition support */ 70dbba3dafSAsh Charles 71dbba3dafSAsh Charles /* NAND block size is 128 KiB. Synchronize these values with 72dbba3dafSAsh Charles * overo_nand_partitions in mach-omap2/board-overo.c in Linux: 73dbba3dafSAsh Charles * xloader 4 * NAND_BLOCK_SIZE = 512 KiB 74dbba3dafSAsh Charles * uboot 14 * NAND_BLOCK_SIZE = 1792 KiB 75dbba3dafSAsh Charles * uboot environtment 2 * NAND_BLOCK_SIZE = 256 KiB 76e5c809d7SPeter A. Bigot * linux 64 * NAND_BLOCK_SIZE = 8 MiB 77dbba3dafSAsh Charles * rootfs remainder 78dbba3dafSAsh Charles */ 79dbba3dafSAsh Charles #define MTDIDS_DEFAULT "nand0=omap2-nand.0" 80dbba3dafSAsh Charles #define MTDPARTS_DEFAULT "mtdparts=omap2-nand.0:" \ 81dbba3dafSAsh Charles "512k(xloader)," \ 82dbba3dafSAsh Charles "1792k(u-boot)," \ 83dbba3dafSAsh Charles "256k(environ)," \ 84e5c809d7SPeter A. Bigot "8m(linux)," \ 85dbba3dafSAsh Charles "-(rootfs)" 8629cc1d8eSAsh Charles #else /* CONFIG_NAND */ 87dbba3dafSAsh Charles #define MTDPARTS_DEFAULT 8829cc1d8eSAsh Charles #endif /* CONFIG_NAND */ 89dbba3dafSAsh Charles 9029cc1d8eSAsh Charles /* Board NAND Info. */ 910f8d3eb9SAndreas Müller #define CONFIG_SYS_NAND_QUIET_TEST 929d0fc811SDirk Behme #define CONFIG_SYS_NAND_ADDR NAND_BASE /* physical address */ 939d0fc811SDirk Behme /* to access nand */ 949d0fc811SDirk Behme /* Environment information */ 959d0fc811SDirk Behme #define CONFIG_EXTRA_ENV_SETTINGS \ 9629cc1d8eSAsh Charles DEFAULT_LINUX_BOOT_ENV \ 973c92c323SAsh Charles "bootdir=/boot\0" \ 983c92c323SAsh Charles "bootfile=zImage\0" \ 993c92c323SAsh Charles "usbtty=cdc_acm\0" \ 10075b988a2SPhilip Balister "console=ttyO2,115200n8\0" \ 1013c92c323SAsh Charles "mpurate=auto\0" \ 102e6847dbaSPhilip Balister "optargs=\0" \ 10313d2cb98SSteve Sakoman "vram=12M\0" \ 10413d2cb98SSteve Sakoman "dvimode=1024x768MR-16@60\0" \ 10513d2cb98SSteve Sakoman "defaultdisplay=dvi\0" \ 106cd7c5726SSteve Sakoman "mmcdev=0\0" \ 10713d2cb98SSteve Sakoman "mmcroot=/dev/mmcblk0p2 rw\0" \ 1081584e4f4SAdam YH Lee "mmcrootfstype=ext4 rootwait\0" \ 109254973e6SSteve Sakoman "nandroot=ubi0:rootfs ubi.mtd=4\0" \ 110254973e6SSteve Sakoman "nandrootfstype=ubifs\0" \ 111dbba3dafSAsh Charles "mtdparts=" MTDPARTS_DEFAULT "\0" \ 1129d0fc811SDirk Behme "mmcargs=setenv bootargs console=${console} " \ 113e6847dbaSPhilip Balister "${optargs} " \ 1145af32460SSteve Sakoman "mpurate=${mpurate} " \ 11513d2cb98SSteve Sakoman "vram=${vram} " \ 11613d2cb98SSteve Sakoman "omapfb.mode=dvi:${dvimode} " \ 11713d2cb98SSteve Sakoman "omapdss.def_disp=${defaultdisplay} " \ 11813d2cb98SSteve Sakoman "root=${mmcroot} " \ 11913d2cb98SSteve Sakoman "rootfstype=${mmcrootfstype}\0" \ 1209d0fc811SDirk Behme "nandargs=setenv bootargs console=${console} " \ 121e6847dbaSPhilip Balister "${optargs} " \ 1225af32460SSteve Sakoman "mpurate=${mpurate} " \ 12313d2cb98SSteve Sakoman "vram=${vram} " \ 12413d2cb98SSteve Sakoman "omapfb.mode=dvi:${dvimode} " \ 12513d2cb98SSteve Sakoman "omapdss.def_disp=${defaultdisplay} " \ 12613d2cb98SSteve Sakoman "root=${nandroot} " \ 12713d2cb98SSteve Sakoman "rootfstype=${nandrootfstype}\0" \ 1283c92c323SAsh Charles "loadbootscript=load mmc ${mmcdev} ${loadaddr} boot.scr\0" \ 1299d0fc811SDirk Behme "bootscript=echo Running boot script from mmc ...; " \ 13074de7aefSWolfgang Denk "source ${loadaddr}\0" \ 1313c92c323SAsh Charles "loadbootenv=load mmc ${mmcdev} ${loadaddr} uEnv.txt\0" \ 1323c92c323SAsh Charles "importbootenv=echo Importing environment from mmc ...; " \ 1330b3fde11SAsh Charles "env import -t ${loadaddr} ${filesize}\0" \ 1343c92c323SAsh Charles "loaduimage=load mmc ${mmcdev} ${loadaddr} uImage\0" \ 1359d0fc811SDirk Behme "mmcboot=echo Booting from mmc...; " \ 1369d0fc811SDirk Behme "run mmcargs; " \ 1379d0fc811SDirk Behme "bootm ${loadaddr}\0" \ 1383c92c323SAsh Charles "loadzimage=load mmc ${mmcdev}:2 ${loadaddr} ${bootdir}/${bootfile}\0" \ 13929cc1d8eSAsh Charles "loadfdt=load mmc ${mmcdev}:2 ${fdtaddr} ${bootdir}/${fdtfile}\0" \ 14088d89668SAsh Charles "loadubizimage=ubifsload ${loadaddr} ${bootdir}/${bootfile}\0" \ 14188d89668SAsh Charles "loadubifdt=ubifsload ${fdtaddr} ${bootdir}/${fdtfile}\0" \ 1423c92c323SAsh Charles "mmcbootfdt=echo Booting with DT from mmc ...; " \ 1433c92c323SAsh Charles "run mmcargs; " \ 14429cc1d8eSAsh Charles "bootz ${loadaddr} - ${fdtaddr}\0" \ 1459d0fc811SDirk Behme "nandboot=echo Booting from nand ...; " \ 1469d0fc811SDirk Behme "run nandargs; " \ 147f2565a55SStefan Herbrechtsmeier "if nand read ${loadaddr} linux; then " \ 148f2565a55SStefan Herbrechtsmeier "bootm ${loadaddr};" \ 149f2565a55SStefan Herbrechtsmeier "fi;\0" \ 15088d89668SAsh Charles "nanddtsboot=echo Booting from nand with DTS...; " \ 15188d89668SAsh Charles "run nandargs; " \ 15288d89668SAsh Charles "ubi part rootfs; "\ 15388d89668SAsh Charles "ubifsmount ubi0:rootfs; "\ 15488d89668SAsh Charles "run loadubifdt; "\ 15588d89668SAsh Charles "run loadubizimage; "\ 15688d89668SAsh Charles "bootz ${loadaddr} - ${fdtaddr}\0" \ 1579d0fc811SDirk Behme 1589d0fc811SDirk Behme #define CONFIG_BOOTCOMMAND \ 15966968110SAndrew Bradford "mmc dev ${mmcdev}; if mmc rescan; then " \ 1609d0fc811SDirk Behme "if run loadbootscript; then " \ 1619d0fc811SDirk Behme "run bootscript; " \ 1623c92c323SAsh Charles "fi;" \ 1630b3fde11SAsh Charles "if run loadbootenv; then " \ 1643c92c323SAsh Charles "echo Loaded environment from ${bootenv};" \ 1650b3fde11SAsh Charles "run importbootenv;" \ 1663c92c323SAsh Charles "fi;" \ 1673c92c323SAsh Charles "if test -n $uenvcmd; then " \ 1680b3fde11SAsh Charles "echo Running uenvcmd ...;" \ 1690b3fde11SAsh Charles "run uenvcmd;" \ 1700b3fde11SAsh Charles "fi;" \ 1719d0fc811SDirk Behme "if run loaduimage; then " \ 1729d0fc811SDirk Behme "run mmcboot;" \ 1733c92c323SAsh Charles "fi;" \ 1743c92c323SAsh Charles "if run loadzimage; then " \ 175115e71f7SStefan Herbrechtsmeier "if test -z \"${fdtfile}\"; then " \ 17612cc5437SAsh Charles "setenv fdtfile omap3-${boardname}-${expansionname}.dtb;" \ 17712cc5437SAsh Charles "fi;" \ 1783c92c323SAsh Charles "if run loadfdt; then " \ 1793c92c323SAsh Charles "run mmcbootfdt;" \ 1809d0fc811SDirk Behme "fi;" \ 1819d0fc811SDirk Behme "fi;" \ 1823c92c323SAsh Charles "fi;" \ 1833c92c323SAsh Charles "run nandboot; " \ 18488d89668SAsh Charles "if test -z \"${fdtfile}\"; then "\ 18588d89668SAsh Charles "setenv fdtfile omap3-${boardname}-${expansionname}.dtb;" \ 18688d89668SAsh Charles "fi;" \ 18788d89668SAsh Charles "run nanddtsboot; " \ 1889d0fc811SDirk Behme 1899d0fc811SDirk Behme /* 1909d0fc811SDirk Behme * Miscellaneous configurable options 1919d0fc811SDirk Behme */ 19229cc1d8eSAsh Charles #undef CONFIG_SYS_PROMPT 1931270ec13SRobert P. J. Day #define CONFIG_SYS_PROMPT "Overo # " 19429cc1d8eSAsh Charles 1959d0fc811SDirk Behme /* memtest works on */ 1969d0fc811SDirk Behme #define CONFIG_SYS_MEMTEST_START (OMAP34XX_SDRC_CS0) 1979d0fc811SDirk Behme #define CONFIG_SYS_MEMTEST_END (OMAP34XX_SDRC_CS0 + \ 1989d0fc811SDirk Behme 0x01F00000) /* 31MB */ 1999d0fc811SDirk Behme 20029cc1d8eSAsh Charles /* FLASH and environment organization */ 20129cc1d8eSAsh Charles #if defined(CONFIG_NAND) 202222a3113Spekon gupta #define CONFIG_SYS_FLASH_BASE NAND_BASE 2036cbec7b3SLuca Ceresoli #endif 2049d0fc811SDirk Behme 2059d0fc811SDirk Behme /* Monitor at start of flash */ 2069d0fc811SDirk Behme #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_FLASH_BASE 2079d0fc811SDirk Behme #define CONFIG_SYS_ONENAND_BASE ONENAND_MAP 2089d0fc811SDirk Behme 2090f8d3eb9SAndreas Müller #define CONFIG_ENV_IS_IN_NAND 2109d0fc811SDirk Behme #define ONENAND_ENV_OFFSET 0x240000 /* environment starts here */ 2119d0fc811SDirk Behme #define SMNAND_ENV_OFFSET 0x240000 /* environment starts here */ 2129d0fc811SDirk Behme 2136cbec7b3SLuca Ceresoli #define CONFIG_SYS_ENV_SECT_SIZE (128 << 10) /* 128 KiB */ 2146cbec7b3SLuca Ceresoli #define CONFIG_ENV_OFFSET SMNAND_ENV_OFFSET 2159d0fc811SDirk Behme #define CONFIG_ENV_ADDR SMNAND_ENV_OFFSET 2169d0fc811SDirk Behme 21729cc1d8eSAsh Charles /* Configure SMSC9211 ethernet */ 218df382626SOlof Johansson #if defined(CONFIG_CMD_NET) 2190f8d3eb9SAndreas Müller #define CONFIG_SMC911X 220df382626SOlof Johansson #define CONFIG_SMC911X_32_BIT 221df382626SOlof Johansson #define CONFIG_SMC911X_BASE 0x2C000000 222df382626SOlof Johansson #endif /* (CONFIG_CMD_NET) */ 223df382626SOlof Johansson 22429cc1d8eSAsh Charles /* Initial RAM setup */ 22531bfcf1cSSteve Sakoman #define CONFIG_SYS_INIT_RAM_ADDR 0x4020f800 22631bfcf1cSSteve Sakoman #define CONFIG_SYS_INIT_RAM_SIZE 0x800 2278e40852fSAneesh V #define CONFIG_SYS_CACHELINE_SIZE 64 2288e40852fSAneesh V 229137703b8SAndreas Müller /* NAND boot config */ 230*55f1b39fSStefano Babic #define CONFIG_SYS_NAND_BUSWIDTH_16BIT 231ce170a1cSAsh Charles #define CONFIG_SYS_NAND_MAX_ECCPOS 56 232137703b8SAndreas Müller #define CONFIG_SYS_NAND_5_ADDR_CYCLE 233137703b8SAndreas Müller #define CONFIG_SYS_NAND_PAGE_COUNT 64 234137703b8SAndreas Müller #define CONFIG_SYS_NAND_PAGE_SIZE 2048 235137703b8SAndreas Müller #define CONFIG_SYS_NAND_OOBSIZE 64 236137703b8SAndreas Müller #define CONFIG_SYS_NAND_BLOCK_SIZE (128*1024) 237137703b8SAndreas Müller #define CONFIG_SYS_NAND_BAD_BLOCK_POS NAND_LARGE_BADBLOCK_POS 238ce170a1cSAsh Charles #define CONFIG_SYS_NAND_ECCPOS {2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, \ 239ce170a1cSAsh Charles 13, 14, 16, 17, 18, 19, 20, 21, 22, \ 240ce170a1cSAsh Charles 23, 24, 25, 26, 27, 28, 30, 31, 32, \ 241ce170a1cSAsh Charles 33, 34, 35, 36, 37, 38, 39, 40, 41, \ 242ce170a1cSAsh Charles 42, 44, 45, 46, 47, 48, 49, 50, 51, \ 243ce170a1cSAsh Charles 52, 53, 54, 55, 56} 244137703b8SAndreas Müller #define CONFIG_SYS_NAND_ECCSIZE 512 245ce170a1cSAsh Charles #define CONFIG_SYS_NAND_ECCBYTES 13 246ce170a1cSAsh Charles #define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH8_CODE_HW_DETECTION_SW 247137703b8SAndreas Müller #define CONFIG_SYS_NAND_U_BOOT_START CONFIG_SYS_TEXT_BASE 248137703b8SAndreas Müller #define CONFIG_SYS_NAND_U_BOOT_OFFS 0x80000 249434f2cfcSpekon gupta /* NAND: SPL falcon mode configs */ 250434f2cfcSpekon gupta #ifdef CONFIG_SPL_OS_BOOT 251434f2cfcSpekon gupta #define CONFIG_CMD_SPL_NAND_OFS 0x240000 252434f2cfcSpekon gupta #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS 0x280000 253434f2cfcSpekon gupta #define CONFIG_CMD_SPL_WRITE_SIZE 0x2000 254434f2cfcSpekon gupta #endif 255137703b8SAndreas Müller 2569d0fc811SDirk Behme #endif /* __CONFIG_H */ 257