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 1849c7303fSAdam Ford /* 1949c7303fSAdam Ford * 1MB into the SDRAM to allow for SPL's bss at the beginning of SDRAM 2049c7303fSAdam Ford * 64 bytes before this address should be set aside for u-boot.img's 2149c7303fSAdam Ford * header. That is 0x800FFFC0--0x80100000 should not be used for any 2249c7303fSAdam Ford * other needs. We use this rather than the inherited defines from 2349c7303fSAdam Ford * ti_armv7_common.h for backwards compatibility. 2449c7303fSAdam Ford */ 2549c7303fSAdam Ford #define CONFIG_SYS_TEXT_BASE 0x80100000 2649c7303fSAdam Ford #define CONFIG_SPL_BSS_START_ADDR 0x80000000 2749c7303fSAdam Ford #define CONFIG_SPL_BSS_MAX_SIZE (512 << 10) /* 512 KB */ 2849c7303fSAdam Ford #define CONFIG_SYS_SPL_MALLOC_START 0x80208000 2949c7303fSAdam Ford #define CONFIG_SYS_SPL_MALLOC_SIZE 0x100000 3086887f8eSPeter Barada 317b77b1f6SAdam Ford #include <configs/ti_omap3_common.h> 3249c7303fSAdam Ford 3349c7303fSAdam Ford /* Display CPU and Board information */ 347b77b1f6SAdam Ford 3586887f8eSPeter Barada #define CONFIG_DISPLAY_CPUINFO 3686887f8eSPeter Barada #define CONFIG_DISPLAY_BOARDINFO 3786887f8eSPeter Barada 3886887f8eSPeter Barada #define CONFIG_MISC_INIT_R /* misc_init_r dumps the die id */ 3986887f8eSPeter Barada #define CONFIG_CMDLINE_TAG /* enable passing of ATAGs */ 4086887f8eSPeter Barada #define CONFIG_SETUP_MEMORY_TAGS 4186887f8eSPeter Barada #define CONFIG_INITRD_TAG 4286887f8eSPeter Barada #define CONFIG_REVISION_TAG 4386887f8eSPeter Barada #define CONFIG_CMDLINE_EDITING /* cmd line edit/history */ 4486887f8eSPeter Barada #define CONFIG_ZERO_BOOTDELAY_CHECK /* check keypress w/no delay */ 4586887f8eSPeter Barada 4649c7303fSAdam Ford /* Hardware drivers */ 4786887f8eSPeter Barada 48b99353b8SAdam Ford /* GPIO banks */ 49b99353b8SAdam Ford #define CONFIG_OMAP3_GPIO_6 /* GPIO160..191 is in GPIO bank 6 */ 50b99353b8SAdam Ford 5149c7303fSAdam Ford #define CONFIG_USB_OMAP3 5249c7303fSAdam Ford 5349c7303fSAdam Ford /* select serial console configuration */ 547b77b1f6SAdam Ford #undef CONFIG_CONS_INDEX 5586887f8eSPeter Barada #define CONFIG_CONS_INDEX 1 5686887f8eSPeter Barada #define CONFIG_SYS_NS16550_COM1 OMAP34XX_UART1 5786887f8eSPeter Barada #define CONFIG_SERIAL1 1 /* UART1 on OMAP Logic boards */ 5886887f8eSPeter Barada 5986887f8eSPeter Barada /* commands to include */ 6049c7303fSAdam Ford #define CONFIG_CMD_NAND 6186887f8eSPeter Barada #define CONFIG_CMD_CACHE 6249c7303fSAdam Ford #define CONFIG_CMD_EXT2 6349c7303fSAdam Ford #define CONFIG_CMD_FAT 6449c7303fSAdam Ford #define CONFIG_CMD_MTDPARTS 6586887f8eSPeter Barada #define CONFIG_CMD_NAND_LOCK_UNLOCK /* nand (un)lock commands */ 6686887f8eSPeter Barada #define CONFIG_CMD_PING 6786887f8eSPeter Barada #define CONFIG_CMD_DHCP 6886887f8eSPeter Barada 6949c7303fSAdam Ford #define CONFIG_YAFFS2 7086887f8eSPeter Barada 7149c7303fSAdam Ford /* I2C */ 726789e84eSHeiko Schocher #define CONFIG_SYS_I2C_OMAP34XX 7349c7303fSAdam Ford #define CONFIG_SYS_I2C_EEPROM_ADDR 0x50 /* EEPROM AT24C64 */ 7449c7303fSAdam Ford #define EXPANSION_EEPROM_I2C_BUS 2 /* I2C Bus for AT24C64 */ 7549c7303fSAdam Ford #define CONFIG_OMAP3_LOGIC_USE_NEW_PRODUCT_ID 7686887f8eSPeter Barada 77*588e41d2SAdam Ford /* USB */ 78*588e41d2SAdam Ford #define CONFIG_USB_MUSB_GADGET 79*588e41d2SAdam Ford #define CONFIG_USB_MUSB_OMAP2PLUS 80*588e41d2SAdam Ford #define CONFIG_USB_MUSB_PIO_ONLY 81*588e41d2SAdam Ford #define CONFIG_USB_GADGET_DUALSPEED 82*588e41d2SAdam Ford #define CONFIG_USB_ETHER 83*588e41d2SAdam Ford #define CONFIG_USB_ETHER_RNDIS 84*588e41d2SAdam Ford #define CONFIG_USB_GADGET 85*588e41d2SAdam Ford #define CONFIG_USB_GADGET_VBUS_DRAW 0 86*588e41d2SAdam Ford #define CONFIG_USB_GADGET_DOWNLOAD 87*588e41d2SAdam Ford #define CONFIG_G_DNL_VENDOR_NUM 0x0451 88*588e41d2SAdam Ford #define CONFIG_G_DNL_PRODUCT_NUM 0xd022 89*588e41d2SAdam Ford #define CONFIG_G_DNL_MANUFACTURER "TI" 90*588e41d2SAdam Ford #define CONFIG_USB_FUNCTION_FASTBOOT 91*588e41d2SAdam Ford #define CONFIG_CMD_FASTBOOT 92*588e41d2SAdam Ford #define CONFIG_ANDROID_BOOT_IMAGE 93*588e41d2SAdam Ford #define CONFIG_FASTBOOT_BUF_ADDR CONFIG_SYS_LOAD_ADDR 94*588e41d2SAdam Ford #define CONFIG_FASTBOOT_BUF_SIZE 0x07000000 95*588e41d2SAdam Ford #define CONFIG_SYS_CACHELINE_SIZE 64 96*588e41d2SAdam Ford 9749c7303fSAdam Ford /* TWL4030 */ 9849c7303fSAdam Ford #define CONFIG_TWL4030_PWM 99*588e41d2SAdam Ford #define CONFIG_TWL4030_USB 1007b77b1f6SAdam Ford 10149c7303fSAdam Ford /* Board NAND Info. */ 10249c7303fSAdam Ford #ifdef CONFIG_NAND 10386887f8eSPeter Barada #define CONFIG_NAND_OMAP_GPMC 10449c7303fSAdam Ford 10549c7303fSAdam Ford #define CONFIG_CMD_UBI /* UBI-formated MTD partition support */ 10649c7303fSAdam Ford #define CONFIG_CMD_UBIFS /* Read-only UBI volume operations */ 10749c7303fSAdam Ford #define CONFIG_RBTREE /* required by CONFIG_CMD_UBI */ 10849c7303fSAdam Ford #define CONFIG_LZO /* required by CONFIG_CMD_UBIFS */ 10949c7303fSAdam Ford 11086887f8eSPeter Barada #define CONFIG_SYS_NAND_ADDR NAND_BASE /* physical address */ 11186887f8eSPeter Barada /* to access nand */ 11286887f8eSPeter Barada #define CONFIG_SYS_MAX_NAND_DEVICE 1 /* Max number of */ 11386887f8eSPeter Barada /* NAND devices */ 11455f1b39fSStefano Babic #define CONFIG_SYS_NAND_BUSWIDTH_16BIT 11549c7303fSAdam Ford #define CONFIG_SYS_NAND_5_ADDR_CYCLE 11649c7303fSAdam Ford #define CONFIG_SYS_NAND_PAGE_COUNT 64 11749c7303fSAdam Ford #define CONFIG_SYS_NAND_PAGE_SIZE 2048 11849c7303fSAdam Ford #define CONFIG_SYS_NAND_OOBSIZE 64 11949c7303fSAdam Ford #define CONFIG_SYS_NAND_BLOCK_SIZE (128 * 1024) 12049c7303fSAdam Ford #define CONFIG_SYS_NAND_BAD_BLOCK_POS NAND_LARGE_BADBLOCK_POS 12149c7303fSAdam Ford #define CONFIG_SYS_NAND_ECCPOS {2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, \ 12249c7303fSAdam Ford 13, 14, 16, 17, 18, 19, 20, 21, 22, \ 12349c7303fSAdam Ford 23, 24, 25, 26, 27, 28, 30, 31, 32, \ 12449c7303fSAdam Ford 33, 34, 35, 36, 37, 38, 39, 40, 41, \ 12549c7303fSAdam Ford 42, 44, 45, 46, 47, 48, 49, 50, 51, \ 12649c7303fSAdam Ford 52, 53, 54, 55, 56} 1277b77b1f6SAdam Ford 12849c7303fSAdam Ford #define CONFIG_SYS_NAND_ECCSIZE 512 12949c7303fSAdam Ford #define CONFIG_SYS_NAND_ECCBYTES 13 13049c7303fSAdam Ford #define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH8_CODE_HW_DETECTION_SW 13149c7303fSAdam Ford #define CONFIG_BCH 13249c7303fSAdam Ford #define CONFIG_SYS_NAND_MAX_OOBFREE 2 13349c7303fSAdam Ford #define CONFIG_SYS_NAND_MAX_ECCPOS 56 13449c7303fSAdam Ford #define CONFIG_SYS_NAND_U_BOOT_OFFS 0x80000 13549c7303fSAdam Ford #define CONFIG_MTD_DEVICE /* needed for mtdparts commands */ 13649c7303fSAdam Ford #define CONFIG_MTD_PARTITIONS /* required for UBI partition support */ 13749c7303fSAdam Ford #define MTDIDS_DEFAULT "nand0=omap2-nand.0" 13849c7303fSAdam Ford #define MTDPARTS_DEFAULT "mtdparts=omap2-nand.0:512k(MLO),"\ 13949c7303fSAdam Ford "1920k(u-boot),128k(u-boot-env),"\ 14049c7303fSAdam Ford "4m(kernel),-(fs)" 14149c7303fSAdam Ford #endif 14286887f8eSPeter Barada 14386887f8eSPeter Barada /* Environment information */ 14486887f8eSPeter Barada 14586887f8eSPeter Barada /* 14686887f8eSPeter Barada * PREBOOT assumes the 4.3" display is attached. User can interrupt 14786887f8eSPeter Barada * and modify display variable to suit their needs. 14886887f8eSPeter Barada */ 14986887f8eSPeter Barada #define CONFIG_PREBOOT \ 15086887f8eSPeter Barada "echo ======================NOTICE============================;"\ 15186887f8eSPeter Barada "echo \"The u-boot environment is not set.\";" \ 15286887f8eSPeter Barada "echo \"If using a display a valid display varible for your panel\";" \ 15386887f8eSPeter Barada "echo \"needs to be set.\";" \ 15486887f8eSPeter Barada "echo \"Valid display options are:\";" \ 15586887f8eSPeter Barada "echo \" 2 == LQ121S1DG31 TFT SVGA (12.1) Sharp\";" \ 15686887f8eSPeter Barada "echo \" 3 == LQ036Q1DA01 TFT QVGA (3.6) Sharp w/ASIC\";" \ 15786887f8eSPeter Barada "echo \" 5 == LQ064D343 TFT VGA (6.4) Sharp\";" \ 15886887f8eSPeter Barada "echo \" 7 == LQ10D368 TFT VGA (10.4) Sharp\";" \ 15986887f8eSPeter Barada "echo \" 15 == LQ043T1DG01 TFT WQVGA (4.3) Sharp (DEFAULT)\";" \ 16086887f8eSPeter Barada "echo \" vga[-dvi or -hdmi] LCD VGA 640x480\";" \ 16186887f8eSPeter Barada "echo \" svga[-dvi or -hdmi] LCD SVGA 800x600\";" \ 16286887f8eSPeter Barada "echo \" xga[-dvi or -hdmi] LCD XGA 1024x768\";" \ 16386887f8eSPeter Barada "echo \" 720p[-dvi or -hdmi] LCD 720P 1280x720\";" \ 16486887f8eSPeter Barada "echo \"Defaulting to 4.3 LCD panel (display=15).\";" \ 16586887f8eSPeter Barada "setenv display 15;" \ 16686887f8eSPeter Barada "setenv preboot;" \ 16749c7303fSAdam Ford "nand unlock;" \ 16886887f8eSPeter Barada "saveenv;" 16986887f8eSPeter Barada 17086887f8eSPeter Barada #define CONFIG_EXTRA_ENV_SETTINGS \ 17186887f8eSPeter Barada "loadaddr=0x81000000\0" \ 17249c7303fSAdam Ford "uimage=uImage\0" \ 17349c7303fSAdam Ford "zimage=zImage\0" \ 17486887f8eSPeter Barada "mtdids=" MTDIDS_DEFAULT "\0" \ 17586887f8eSPeter Barada "mtdparts=" MTDPARTS_DEFAULT "\0" \ 17686887f8eSPeter Barada "mmcdev=0\0" \ 17749c7303fSAdam Ford "mmcroot=/dev/mmcblk0p2 rw\0" \ 17849c7303fSAdam Ford "mmcrootfstype=ext4 rootwait\0" \ 17966968110SAndrew Bradford "autoboot=mmc dev ${mmcdev}; if mmc rescan; then " \ 18086887f8eSPeter Barada "if run loadbootscript; then " \ 18186887f8eSPeter Barada "run bootscript; " \ 18286887f8eSPeter Barada "else " \ 18386887f8eSPeter Barada "run defaultboot;" \ 18486887f8eSPeter Barada "fi; " \ 18586887f8eSPeter Barada "else run defaultboot; fi\0" \ 18686887f8eSPeter Barada "defaultboot=run mmcramboot\0" \ 18786887f8eSPeter Barada "consoledevice=ttyO0\0" \ 18886887f8eSPeter Barada "display=15\0" \ 18986887f8eSPeter Barada "setconsole=setenv console ${consoledevice},${baudrate}n8\0" \ 19086887f8eSPeter Barada "dump_bootargs=echo 'Bootargs: '; echo $bootargs\0" \ 19186887f8eSPeter Barada "rotation=0\0" \ 19286887f8eSPeter Barada "vrfb_arg=if itest ${rotation} -ne 0; then " \ 19386887f8eSPeter Barada "setenv bootargs ${bootargs} omapfb.vrfb=y " \ 19486887f8eSPeter Barada "omapfb.rotate=${rotation}; " \ 19586887f8eSPeter Barada "fi\0" \ 19649c7303fSAdam Ford "optargs=ignore_loglevel early_printk no_console_suspend\0" \ 19786887f8eSPeter Barada "addmtdparts=setenv bootargs ${bootargs} ${mtdparts}\0" \ 19886887f8eSPeter Barada "common_bootargs=setenv bootargs ${bootargs} display=${display} " \ 19949c7303fSAdam Ford "${optargs};" \ 20086887f8eSPeter Barada "run addmtdparts; " \ 20186887f8eSPeter Barada "run vrfb_arg\0" \ 20286887f8eSPeter Barada "loadbootscript=fatload mmc ${mmcdev} ${loadaddr} boot.scr\0" \ 20386887f8eSPeter Barada "bootscript=echo 'Running bootscript from mmc ...'; " \ 20486887f8eSPeter Barada "source ${loadaddr}\0" \ 20549c7303fSAdam Ford "loaduimage=mmc rescan; " \ 20649c7303fSAdam Ford "fatload mmc ${mmcdev} ${loadaddr} ${uimage}\0" \ 20749c7303fSAdam Ford "loadzimage=mmc rescan; " \ 20849c7303fSAdam Ford "fatload mmc ${mmcdev} ${loadaddr} ${zimage}\0" \ 20986887f8eSPeter Barada "ramdisksize=64000\0" \ 21086887f8eSPeter Barada "ramdiskaddr=0x82000000\0" \ 21186887f8eSPeter Barada "ramdiskimage=rootfs.ext2.gz.uboot\0" \ 21249c7303fSAdam Ford "loadramdisk=mmc rescan; " \ 21349c7303fSAdam Ford "fatload mmc ${mmcdev} ${ramdiskaddr} ${ramdiskimage}\0" \ 21486887f8eSPeter Barada "ramargs=run setconsole; setenv bootargs console=${console} " \ 21586887f8eSPeter Barada "root=/dev/ram rw ramdisk_size=${ramdisksize}\0" \ 21649c7303fSAdam Ford "mmcargs=run setconsole; setenv bootargs console=${console} " \ 21749c7303fSAdam Ford "${optargs} " \ 21849c7303fSAdam Ford "root=${mmcroot} " \ 21949c7303fSAdam Ford "rootfstype=${mmcrootfstype}\0" \ 22049c7303fSAdam Ford "fdtaddr=0x86000000\0" \ 22149c7303fSAdam Ford "loadfdtimage=mmc rescan; " \ 22249c7303fSAdam Ford "fatload mmc ${mmcdev} ${fdtaddr} ${fdtimage}\0" \ 22349c7303fSAdam Ford "mmcbootz=echo Booting with DT from mmc${mmcdev} ...; " \ 22449c7303fSAdam Ford "run mmcargs; " \ 22549c7303fSAdam Ford "run common_bootargs; " \ 22649c7303fSAdam Ford "run dump_bootargs; " \ 22749c7303fSAdam Ford "run loadzimage; " \ 22849c7303fSAdam Ford "run loadfdtimage; " \ 22949c7303fSAdam Ford "bootz ${loadaddr} - ${fdtaddr}\0" \ 23049c7303fSAdam Ford "mmcramboot=echo 'Booting uImage kernel from mmc w/ramdisk...'; " \ 23186887f8eSPeter Barada "run ramargs; " \ 23286887f8eSPeter Barada "run common_bootargs; " \ 23386887f8eSPeter Barada "run dump_bootargs; " \ 23486887f8eSPeter Barada "run loaduimage; " \ 23549c7303fSAdam Ford "run loadramdisk; " \ 23686887f8eSPeter Barada "bootm ${loadaddr} ${ramdiskaddr}\0" \ 23749c7303fSAdam Ford "mmcrambootz=echo 'Booting zImage kernel from mmc w/ramdisk...'; " \ 23886887f8eSPeter Barada "run ramargs; " \ 23986887f8eSPeter Barada "run common_bootargs; " \ 24086887f8eSPeter Barada "run dump_bootargs; " \ 24149c7303fSAdam Ford "run loadzimage; " \ 24249c7303fSAdam Ford "run loadramdisk; " \ 24349c7303fSAdam Ford "run loadfdtimage; " \ 24449c7303fSAdam Ford "bootz ${loadaddr} ${ramdiskaddr} ${fdtaddr}\0; " \ 24549c7303fSAdam Ford "tftpboot=echo 'Booting kernel/ramdisk rootfs from tftp...'; " \ 24649c7303fSAdam Ford "run ramargs; " \ 24749c7303fSAdam Ford "run common_bootargs; " \ 24849c7303fSAdam Ford "run dump_bootargs; " \ 24949c7303fSAdam Ford "tftpboot ${loadaddr} ${uimage}; " \ 25086887f8eSPeter Barada "tftpboot ${ramdiskaddr} ${ramdiskimage}; " \ 25186887f8eSPeter Barada "bootm ${loadaddr} ${ramdiskaddr}\0" 25286887f8eSPeter Barada 25386887f8eSPeter Barada #define CONFIG_BOOTCOMMAND \ 25486887f8eSPeter Barada "run autoboot" 25586887f8eSPeter Barada 25649c7303fSAdam Ford /* Miscellaneous configurable options */ 25786887f8eSPeter Barada #define CONFIG_AUTO_COMPLETE 2587b77b1f6SAdam Ford 25986887f8eSPeter Barada /* memtest works on */ 26086887f8eSPeter Barada #define CONFIG_SYS_MEMTEST_START (OMAP34XX_SDRC_CS0) 26186887f8eSPeter Barada #define CONFIG_SYS_MEMTEST_END (OMAP34XX_SDRC_CS0 + \ 26286887f8eSPeter Barada 0x01F00000) /* 31MB */ 26386887f8eSPeter Barada 26449c7303fSAdam Ford /* FLASH and environment organization */ 26586887f8eSPeter Barada 26686887f8eSPeter Barada /* **** PISMO SUPPORT *** */ 26786887f8eSPeter Barada #if defined(CONFIG_CMD_NAND) 268222a3113Spekon gupta #define CONFIG_SYS_FLASH_BASE NAND_BASE 26986887f8eSPeter Barada #elif defined(CONFIG_CMD_ONENAND) 270222a3113Spekon gupta #define CONFIG_SYS_FLASH_BASE ONENAND_MAP 27186887f8eSPeter Barada #endif 27286887f8eSPeter Barada 27386887f8eSPeter Barada /* Monitor at start of flash */ 27486887f8eSPeter Barada #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_FLASH_BASE 27586887f8eSPeter Barada 27649c7303fSAdam Ford #define CONFIG_ENV_IS_IN_NAND 1 27749c7303fSAdam Ford #define CONFIG_ENV_SIZE (128 << 10) /* 128 KiB */ 27849c7303fSAdam Ford #define ONENAND_ENV_OFFSET 0x260000 /* environment starts here */ 27986887f8eSPeter Barada #define SMNAND_ENV_OFFSET 0x260000 /* environment starts here */ 28086887f8eSPeter Barada 28186887f8eSPeter Barada #define CONFIG_SYS_ENV_SECT_SIZE (128 << 10) /* 128 KiB */ 28249c7303fSAdam Ford #define CONFIG_ENV_OFFSET SMNAND_ENV_OFFSET 28349c7303fSAdam Ford #define CONFIG_ENV_ADDR SMNAND_ENV_OFFSET 28486887f8eSPeter Barada 28586887f8eSPeter Barada 28649c7303fSAdam Ford /* SMSC922x Ethernet */ 28786887f8eSPeter Barada #if defined(CONFIG_CMD_NET) 28886887f8eSPeter Barada #define CONFIG_SMC911X 28986887f8eSPeter Barada #define CONFIG_SMC911X_16_BIT 29086887f8eSPeter Barada #define CONFIG_SMC911X_BASE 0x08000000 29186887f8eSPeter Barada #endif /* (CONFIG_CMD_NET) */ 29286887f8eSPeter Barada 29349c7303fSAdam Ford /* Defines for SPL */ 29449c7303fSAdam Ford 29549c7303fSAdam Ford #define CONFIG_SPL_OMAP3_ID_NAND 29649c7303fSAdam Ford 29749c7303fSAdam Ford /* NAND: SPL falcon mode configs */ 29849c7303fSAdam Ford #ifdef CONFIG_SPL_OS_BOOT 29949c7303fSAdam Ford #define CONFIG_CMD_SPL_NAND_OFS 0x240000 30049c7303fSAdam Ford #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS 0x280000 30149c7303fSAdam Ford #define CONFIG_CMD_SPL_WRITE_SIZE 0x2000 30249c7303fSAdam Ford #endif 30349c7303fSAdam Ford 30486887f8eSPeter Barada #endif /* __CONFIG_H */ 305