186887f8eSPeter Barada /* 286887f8eSPeter Barada * (C) Copyright 2011 Logic Product Development <www.logicpd.com> 386887f8eSPeter Barada * Peter Barada <peter.barada@logicpd.com> 486887f8eSPeter Barada * 586887f8eSPeter Barada * Configuration settings for the Logic OMAP35x/DM37x SOM LV/Torpedo 686887f8eSPeter Barada * reference boards. 786887f8eSPeter Barada * 81a459660SWolfgang Denk * SPDX-License-Identifier: GPL-2.0+ 986887f8eSPeter Barada */ 1086887f8eSPeter Barada 1186887f8eSPeter Barada #ifndef __CONFIG_H 1286887f8eSPeter Barada #define __CONFIG_H 1386887f8eSPeter Barada 1449c7303fSAdam Ford /* High Level Configuration Options */ 1586887f8eSPeter Barada 167b77b1f6SAdam Ford #define CONFIG_NR_DRAM_BANKS 2 /* CS1 may or may not be populated */ 1749c7303fSAdam Ford 187b77b1f6SAdam Ford #include <configs/ti_omap3_common.h> 1949c7303fSAdam Ford 20*15fde737SAdam Ford #ifdef CONFIG_SPL_BUILD 21*15fde737SAdam Ford /* 22*15fde737SAdam Ford * Disable MMC DM for SPL build and can be re-enabled after adding 23*15fde737SAdam Ford * DM support in SPL 24*15fde737SAdam Ford */ 25*15fde737SAdam Ford #undef CONFIG_DM_MMC 26*15fde737SAdam Ford #undef OMAP_HSMMC_USE_GPIO 27*15fde737SAdam Ford 28*15fde737SAdam Ford /* select serial console configuration for SPL */ 29*15fde737SAdam Ford #undef CONFIG_CONS_INDEX 30*15fde737SAdam Ford #define CONFIG_CONS_INDEX 1 31*15fde737SAdam Ford #define CONFIG_SYS_NS16550_COM1 OMAP34XX_UART1 32*15fde737SAdam Ford #endif 33*15fde737SAdam Ford 34*15fde737SAdam Ford 35fa2f81b0STom Rini /* 36fa2f81b0STom Rini * We are only ever GP parts and will utilize all of the "downloaded image" 37fa2f81b0STom Rini * area in SRAM which starts at 0x40200000 and ends at 0x4020FFFF (64KB) in 38fa2f81b0STom Rini * order to allow for BCH8 to fit in. 39fa2f81b0STom Rini */ 40f92dfc87SAdam Ford #undef CONFIG_SPL_TEXT_BASE 41*15fde737SAdam Ford #define CONFIG_SPL_FRAMEWORK 42f92dfc87SAdam Ford #define CONFIG_SPL_TEXT_BASE 0x40200000 43f92dfc87SAdam Ford 4486887f8eSPeter Barada #define CONFIG_MISC_INIT_R /* misc_init_r dumps the die id */ 4586887f8eSPeter Barada #define CONFIG_CMDLINE_TAG /* enable passing of ATAGs */ 4686887f8eSPeter Barada #define CONFIG_SETUP_MEMORY_TAGS 4786887f8eSPeter Barada #define CONFIG_INITRD_TAG 4886887f8eSPeter Barada #define CONFIG_REVISION_TAG 4986887f8eSPeter Barada 5049c7303fSAdam Ford /* Hardware drivers */ 5186887f8eSPeter Barada 5249c7303fSAdam Ford #define CONFIG_USB_OMAP3 5349c7303fSAdam Ford 5449c7303fSAdam Ford /* I2C */ 5549c7303fSAdam Ford #define CONFIG_SYS_I2C_EEPROM_ADDR 0x50 /* EEPROM AT24C64 */ 5686887f8eSPeter Barada 57588e41d2SAdam Ford /* USB */ 58588e41d2SAdam Ford #define CONFIG_USB_MUSB_OMAP2PLUS 59588e41d2SAdam Ford #define CONFIG_USB_MUSB_PIO_ONLY 60588e41d2SAdam Ford 6149c7303fSAdam Ford /* TWL4030 */ 62588e41d2SAdam Ford #define CONFIG_TWL4030_USB 637b77b1f6SAdam Ford 6449c7303fSAdam Ford /* Board NAND Info. */ 6549c7303fSAdam Ford #ifdef CONFIG_NAND 6686887f8eSPeter Barada #define CONFIG_SYS_NAND_ADDR NAND_BASE /* physical address */ 6786887f8eSPeter Barada /* to access nand */ 6886887f8eSPeter Barada #define CONFIG_SYS_MAX_NAND_DEVICE 1 /* Max number of */ 6986887f8eSPeter Barada /* NAND devices */ 7049c7303fSAdam Ford #define CONFIG_SYS_NAND_5_ADDR_CYCLE 7149c7303fSAdam Ford #define CONFIG_SYS_NAND_PAGE_COUNT 64 7249c7303fSAdam Ford #define CONFIG_SYS_NAND_PAGE_SIZE 2048 7349c7303fSAdam Ford #define CONFIG_SYS_NAND_OOBSIZE 64 7449c7303fSAdam Ford #define CONFIG_SYS_NAND_BLOCK_SIZE (128 * 1024) 7549c7303fSAdam Ford #define CONFIG_SYS_NAND_BAD_BLOCK_POS NAND_LARGE_BADBLOCK_POS 7649c7303fSAdam Ford #define CONFIG_SYS_NAND_ECCPOS {2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, \ 7749c7303fSAdam Ford 13, 14, 16, 17, 18, 19, 20, 21, 22, \ 7849c7303fSAdam Ford 23, 24, 25, 26, 27, 28, 30, 31, 32, \ 7949c7303fSAdam Ford 33, 34, 35, 36, 37, 38, 39, 40, 41, \ 8049c7303fSAdam Ford 42, 44, 45, 46, 47, 48, 49, 50, 51, \ 8149c7303fSAdam Ford 52, 53, 54, 55, 56} 827b77b1f6SAdam Ford 8349c7303fSAdam Ford #define CONFIG_SYS_NAND_ECCSIZE 512 8449c7303fSAdam Ford #define CONFIG_SYS_NAND_ECCBYTES 13 8549c7303fSAdam Ford #define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH8_CODE_HW_DETECTION_SW 8649c7303fSAdam Ford #define CONFIG_SYS_NAND_MAX_OOBFREE 2 8749c7303fSAdam Ford #define CONFIG_SYS_NAND_MAX_ECCPOS 56 8849c7303fSAdam Ford #endif 8986887f8eSPeter Barada 9086887f8eSPeter Barada /* Environment information */ 9186887f8eSPeter Barada 9286887f8eSPeter Barada #define CONFIG_PREBOOT \ 9386887f8eSPeter Barada "setenv preboot;" \ 9449c7303fSAdam Ford "nand unlock;" \ 9586887f8eSPeter Barada "saveenv;" 9686887f8eSPeter Barada 9786887f8eSPeter Barada #define CONFIG_EXTRA_ENV_SETTINGS \ 98bb5854c4SAdam Ford DEFAULT_LINUX_BOOT_ENV \ 9986887f8eSPeter Barada "mtdids=" MTDIDS_DEFAULT "\0" \ 10086887f8eSPeter Barada "mtdparts=" MTDPARTS_DEFAULT "\0" \ 10186887f8eSPeter Barada "mmcdev=0\0" \ 10249c7303fSAdam Ford "mmcroot=/dev/mmcblk0p2 rw\0" \ 10349c7303fSAdam Ford "mmcrootfstype=ext4 rootwait\0" \ 104a094c921SAdam Ford "nandroot=ubi0:rootfs rw ubi.mtd=fs noinitrd\0" \ 105a094c921SAdam Ford "nandrootfstype=ubifs rootwait\0" \ 10666968110SAndrew Bradford "autoboot=mmc dev ${mmcdev}; if mmc rescan; then " \ 10786887f8eSPeter Barada "if run loadbootscript; then " \ 10886887f8eSPeter Barada "run bootscript; " \ 10986887f8eSPeter Barada "else " \ 11086887f8eSPeter Barada "run defaultboot;" \ 11186887f8eSPeter Barada "fi; " \ 11286887f8eSPeter Barada "else run defaultboot; fi\0" \ 11386887f8eSPeter Barada "defaultboot=run mmcramboot\0" \ 11486887f8eSPeter Barada "consoledevice=ttyO0\0" \ 11586887f8eSPeter Barada "setconsole=setenv console ${consoledevice},${baudrate}n8\0" \ 11686887f8eSPeter Barada "dump_bootargs=echo 'Bootargs: '; echo $bootargs\0" \ 11786887f8eSPeter Barada "rotation=0\0" \ 11886887f8eSPeter Barada "vrfb_arg=if itest ${rotation} -ne 0; then " \ 11986887f8eSPeter Barada "setenv bootargs ${bootargs} omapfb.vrfb=y " \ 12086887f8eSPeter Barada "omapfb.rotate=${rotation}; " \ 12186887f8eSPeter Barada "fi\0" \ 12249c7303fSAdam Ford "optargs=ignore_loglevel early_printk no_console_suspend\0" \ 123476e16e8SAdam Ford "common_bootargs=run setconsole; setenv bootargs " \ 124476e16e8SAdam Ford "${bootargs} "\ 125476e16e8SAdam Ford "console=${console} " \ 126476e16e8SAdam Ford "${mtdparts} "\ 12749c7303fSAdam Ford "${optargs}; " \ 12886887f8eSPeter Barada "run vrfb_arg\0" \ 129bb5854c4SAdam Ford "loadbootscript=load mmc ${mmcdev} ${loadaddr} boot.scr\0" \ 13086887f8eSPeter Barada "bootscript=echo 'Running bootscript from mmc ...'; " \ 13186887f8eSPeter Barada "source ${loadaddr}\0" \ 132476e16e8SAdam Ford "loadimage=mmc rescan; " \ 133476e16e8SAdam Ford "load mmc ${mmcdev} ${loadaddr} ${bootfile}\0" \ 13486887f8eSPeter Barada "ramdisksize=64000\0" \ 13586887f8eSPeter Barada "ramdiskimage=rootfs.ext2.gz.uboot\0" \ 13649c7303fSAdam Ford "loadramdisk=mmc rescan; " \ 137bb5854c4SAdam Ford "load mmc ${mmcdev} ${rdaddr} ${ramdiskimage}\0" \ 138476e16e8SAdam Ford "ramargs=setenv bootargs "\ 13986887f8eSPeter Barada "root=/dev/ram rw ramdisk_size=${ramdisksize}\0" \ 140476e16e8SAdam Ford "mmcargs=setenv bootargs "\ 141476e16e8SAdam Ford "root=${mmcroot} rootfstype=${mmcrootfstype}\0" \ 142476e16e8SAdam Ford "nandargs=setenv bootargs "\ 143a094c921SAdam Ford "root=${nandroot} " \ 144a094c921SAdam Ford "rootfstype=${nandrootfstype}\0" \ 145476e16e8SAdam Ford "nfsargs=setenv serverip ${tftpserver}; " \ 146476e16e8SAdam Ford "setenv bootargs root=/dev/nfs " \ 147760d1afdSAdam Ford "nfsroot=${nfsrootpath} " \ 148760d1afdSAdam Ford "ip=${ipaddr}:${tftpserver}:${gatewayip}:${netmask}::eth0:off\0" \ 149760d1afdSAdam Ford "nfsrootpath=/opt/nfs-exports/omap\0" \ 150760d1afdSAdam Ford "autoload=no\0" \ 151bb5854c4SAdam Ford "loadfdt=mmc rescan; " \ 152bb5854c4SAdam Ford "load mmc ${mmcdev} ${fdtaddr} ${fdtimage}\0" \ 153476e16e8SAdam Ford "mmcbootcommon=echo Booting with DT from mmc${mmcdev} ...; " \ 15449c7303fSAdam Ford "run mmcargs; " \ 15549c7303fSAdam Ford "run common_bootargs; " \ 15649c7303fSAdam Ford "run dump_bootargs; " \ 157476e16e8SAdam Ford "run loadimage; " \ 158476e16e8SAdam Ford "run loadfdt;\0 " \ 159476e16e8SAdam Ford "mmcbootz=setenv bootfile zImage; " \ 160476e16e8SAdam Ford "run mmcbootcommon; "\ 16149c7303fSAdam Ford "bootz ${loadaddr} - ${fdtaddr}\0" \ 162476e16e8SAdam Ford "mmcboot=setenv bootfile uImage; "\ 163476e16e8SAdam Ford "run mmcbootcommon; "\ 164476e16e8SAdam Ford "bootm ${loadaddr} - ${fdtaddr}\0" \ 165476e16e8SAdam Ford "mmcrambootcommon=echo 'Booting kernel from MMC w/ramdisk...'; " \ 16686887f8eSPeter Barada "run ramargs; " \ 16786887f8eSPeter Barada "run common_bootargs; " \ 16886887f8eSPeter Barada "run dump_bootargs; " \ 169476e16e8SAdam Ford "run loadimage; " \ 170bb5854c4SAdam Ford "run loadfdt; " \ 171476e16e8SAdam Ford "run loadramdisk\0" \ 172476e16e8SAdam Ford "mmcramboot=setenv bootfile uImage; " \ 173476e16e8SAdam Ford "run mmcrambootcommon; " \ 174476e16e8SAdam Ford "bootm ${loadaddr} ${rdaddr} ${fdtimage}\0" \ 175476e16e8SAdam Ford "mmcrambootz=setenv bootfile zImage; " \ 176476e16e8SAdam Ford "run mmcrambootcommon; " \ 177476e16e8SAdam Ford "bootz ${loadaddr} ${rdaddr} ${fdtimage}\0" \ 17849c7303fSAdam Ford "tftpboot=echo 'Booting kernel/ramdisk rootfs from tftp...'; " \ 17949c7303fSAdam Ford "run ramargs; " \ 18049c7303fSAdam Ford "run common_bootargs; " \ 18149c7303fSAdam Ford "run dump_bootargs; " \ 182760d1afdSAdam Ford "tftpboot ${loadaddr} ${zimage}; " \ 183bb5854c4SAdam Ford "tftpboot ${rdaddr} ${ramdiskimage}; " \ 184bb5854c4SAdam Ford "bootm ${loadaddr} ${rdaddr}\0" \ 185760d1afdSAdam Ford "tftpbootz=echo 'Booting kernel NFS rootfs...'; " \ 186760d1afdSAdam Ford "dhcp;" \ 187760d1afdSAdam Ford "run nfsargs;" \ 188760d1afdSAdam Ford "run common_bootargs;" \ 189760d1afdSAdam Ford "run dump_bootargs;" \ 190760d1afdSAdam Ford "tftpboot $loadaddr zImage;" \ 191476e16e8SAdam Ford "bootz $loadaddr\0" \ 192476e16e8SAdam Ford "nandbootcommon=echo 'Booting kernel from NAND...';" \ 193476e16e8SAdam Ford "nand unlock;" \ 194476e16e8SAdam Ford "run nandargs;" \ 195476e16e8SAdam Ford "run common_bootargs;" \ 196476e16e8SAdam Ford "run dump_bootargs;" \ 197476e16e8SAdam Ford "nand read ${loadaddr} kernel;" \ 198476e16e8SAdam Ford "nand read ${fdtaddr} spl-os;\0" \ 199476e16e8SAdam Ford "nandbootz=run nandbootcommon; "\ 200476e16e8SAdam Ford "bootz ${loadaddr} - ${fdtaddr}\0"\ 201476e16e8SAdam Ford "nandboot=run nandbootcommon; "\ 202476e16e8SAdam Ford "bootm ${loadaddr} - ${fdtaddr}\0"\ 20386887f8eSPeter Barada 20486887f8eSPeter Barada #define CONFIG_BOOTCOMMAND \ 20586887f8eSPeter Barada "run autoboot" 20686887f8eSPeter Barada 20749c7303fSAdam Ford /* Miscellaneous configurable options */ 2087b77b1f6SAdam Ford 20986887f8eSPeter Barada /* memtest works on */ 21086887f8eSPeter Barada #define CONFIG_SYS_MEMTEST_START (OMAP34XX_SDRC_CS0) 21186887f8eSPeter Barada #define CONFIG_SYS_MEMTEST_END (OMAP34XX_SDRC_CS0 + \ 21286887f8eSPeter Barada 0x01F00000) /* 31MB */ 21386887f8eSPeter Barada 21449c7303fSAdam Ford /* FLASH and environment organization */ 21586887f8eSPeter Barada 21686887f8eSPeter Barada /* **** PISMO SUPPORT *** */ 21786887f8eSPeter Barada #if defined(CONFIG_CMD_NAND) 218222a3113Spekon gupta #define CONFIG_SYS_FLASH_BASE NAND_BASE 21986887f8eSPeter Barada #endif 22086887f8eSPeter Barada 22186887f8eSPeter Barada /* Monitor at start of flash */ 22286887f8eSPeter Barada #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_FLASH_BASE 22386887f8eSPeter Barada 22449c7303fSAdam Ford #define CONFIG_ENV_SIZE (128 << 10) /* 128 KiB */ 22586887f8eSPeter Barada #define SMNAND_ENV_OFFSET 0x260000 /* environment starts here */ 22686887f8eSPeter Barada 22786887f8eSPeter Barada #define CONFIG_SYS_ENV_SECT_SIZE (128 << 10) /* 128 KiB */ 22849c7303fSAdam Ford #define CONFIG_ENV_OFFSET SMNAND_ENV_OFFSET 22949c7303fSAdam Ford #define CONFIG_ENV_ADDR SMNAND_ENV_OFFSET 23086887f8eSPeter Barada 23149c7303fSAdam Ford /* SMSC922x Ethernet */ 23286887f8eSPeter Barada #if defined(CONFIG_CMD_NET) 23386887f8eSPeter Barada #define CONFIG_SMC911X 2341e1acc76SAdam Ford #define CONFIG_SMC911X_32_BIT 23586887f8eSPeter Barada #define CONFIG_SMC911X_BASE 0x08000000 23686887f8eSPeter Barada #endif /* (CONFIG_CMD_NET) */ 23786887f8eSPeter Barada 23849c7303fSAdam Ford /* Defines for SPL */ 23949c7303fSAdam Ford 24049c7303fSAdam Ford /* NAND: SPL falcon mode configs */ 24149c7303fSAdam Ford #ifdef CONFIG_SPL_OS_BOOT 24249c7303fSAdam Ford #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS 0x280000 24349c7303fSAdam Ford #endif 24449c7303fSAdam Ford 24586887f8eSPeter Barada #endif /* __CONFIG_H */ 246