1*550e3756STapani Utriainen /* 2*550e3756STapani Utriainen * Configuration settings for the TechNexion TAO-3530 SOM 3*550e3756STapani Utriainen * equipped on Thunder baseboard. 4*550e3756STapani Utriainen * 5*550e3756STapani Utriainen * Edward Lin <linuxfae@technexion.com> 6*550e3756STapani Utriainen * Tapani Utriainen <linuxfae@technexion.com> 7*550e3756STapani Utriainen * 8*550e3756STapani Utriainen * SPDX-License-Identifier: GPL-2.0+ 9*550e3756STapani Utriainen */ 10*550e3756STapani Utriainen 11*550e3756STapani Utriainen #ifndef __CONFIG_H 12*550e3756STapani Utriainen #define __CONFIG_H 13*550e3756STapani Utriainen 14*550e3756STapani Utriainen /* 15*550e3756STapani Utriainen * High Level Configuration Options 16*550e3756STapani Utriainen */ 17*550e3756STapani Utriainen #define CONFIG_ARMV7 /* This is an ARM V7 CPU core */ 18*550e3756STapani Utriainen #define CONFIG_OMAP /* in a TI OMAP core */ 19*550e3756STapani Utriainen #define CONFIG_OMAP34XX /* which is a 34XX */ 20*550e3756STapani Utriainen 21*550e3756STapani Utriainen #define CONFIG_OMAP_GPIO 22*550e3756STapani Utriainen #define CONFIG_OMAP_COMMON 23*550e3756STapani Utriainen 24*550e3756STapani Utriainen #define MACH_TYPE_OMAP3_TAO3530 2836 25*550e3756STapani Utriainen 26*550e3756STapani Utriainen #define CONFIG_SDRC /* Has an SDRC controller */ 27*550e3756STapani Utriainen 28*550e3756STapani Utriainen #include <asm/arch/cpu.h> /* get chip and board defs */ 29*550e3756STapani Utriainen #include <asm/arch/omap3.h> 30*550e3756STapani Utriainen 31*550e3756STapani Utriainen /* 32*550e3756STapani Utriainen * Display CPU and Board information 33*550e3756STapani Utriainen */ 34*550e3756STapani Utriainen #define CONFIG_DISPLAY_CPUINFO 35*550e3756STapani Utriainen #define CONFIG_DISPLAY_BOARDINFO 36*550e3756STapani Utriainen 37*550e3756STapani Utriainen /* Clock Defines */ 38*550e3756STapani Utriainen #define V_OSCK 26000000 /* Clock output from T2 */ 39*550e3756STapani Utriainen #define V_SCLK (V_OSCK >> 1) 40*550e3756STapani Utriainen 41*550e3756STapani Utriainen #define CONFIG_MISC_INIT_R 42*550e3756STapani Utriainen 43*550e3756STapani Utriainen #define CONFIG_OF_LIBFDT 44*550e3756STapani Utriainen 45*550e3756STapani Utriainen #define CONFIG_CMDLINE_TAG 46*550e3756STapani Utriainen #define CONFIG_SETUP_MEMORY_TAGS 47*550e3756STapani Utriainen #define CONFIG_INITRD_TAG 48*550e3756STapani Utriainen #define CONFIG_REVISION_TAG 49*550e3756STapani Utriainen 50*550e3756STapani Utriainen /* 51*550e3756STapani Utriainen * Size of malloc() pool 52*550e3756STapani Utriainen */ 53*550e3756STapani Utriainen #define CONFIG_SYS_MALLOC_LEN (4 << 20) 54*550e3756STapani Utriainen #define CONFIG_ENV_SIZE (128 << 10) /* 128 KiB sector */ 55*550e3756STapani Utriainen 56*550e3756STapani Utriainen /* 57*550e3756STapani Utriainen * Hardware drivers 58*550e3756STapani Utriainen */ 59*550e3756STapani Utriainen 60*550e3756STapani Utriainen /* 61*550e3756STapani Utriainen * NS16550 Configuration 62*550e3756STapani Utriainen */ 63*550e3756STapani Utriainen #define V_NS16550_CLK 48000000 /* 48MHz (APLL96/2) */ 64*550e3756STapani Utriainen 65*550e3756STapani Utriainen #define CONFIG_SYS_NS16550 66*550e3756STapani Utriainen #define CONFIG_SYS_NS16550_SERIAL 67*550e3756STapani Utriainen #define CONFIG_SYS_NS16550_REG_SIZE (-4) 68*550e3756STapani Utriainen #define CONFIG_SYS_NS16550_CLK V_NS16550_CLK 69*550e3756STapani Utriainen 70*550e3756STapani Utriainen /* 71*550e3756STapani Utriainen * select serial console configuration 72*550e3756STapani Utriainen */ 73*550e3756STapani Utriainen #define CONFIG_CONS_INDEX 3 74*550e3756STapani Utriainen #define CONFIG_SYS_NS16550_COM3 OMAP34XX_UART3 75*550e3756STapani Utriainen 76*550e3756STapani Utriainen /* allow to overwrite serial and ethaddr */ 77*550e3756STapani Utriainen #define CONFIG_ENV_OVERWRITE 78*550e3756STapani Utriainen #define CONFIG_BAUDRATE 115200 79*550e3756STapani Utriainen #define CONFIG_GENERIC_MMC 80*550e3756STapani Utriainen #define CONFIG_MMC 81*550e3756STapani Utriainen #define CONFIG_OMAP_HSMMC 82*550e3756STapani Utriainen #define CONFIG_DOS_PARTITION 83*550e3756STapani Utriainen 84*550e3756STapani Utriainen /* commands to include */ 85*550e3756STapani Utriainen #include <config_cmd_default.h> 86*550e3756STapani Utriainen 87*550e3756STapani Utriainen #define CONFIG_CMD_CACHE 88*550e3756STapani Utriainen #define CONFIG_CMD_EXT2 /* EXT2 Support */ 89*550e3756STapani Utriainen #define CONFIG_CMD_FAT /* FAT support */ 90*550e3756STapani Utriainen #define CONFIG_CMD_MTDPARTS /* Enable MTD parts commands */ 91*550e3756STapani Utriainen #define CONFIG_MTD_DEVICE /* needed for mtdparts commands */ 92*550e3756STapani Utriainen #define MTDIDS_DEFAULT "nand0=nand" 93*550e3756STapani Utriainen #define MTDPARTS_DEFAULT "mtdparts=nand:512k(x-loader),"\ 94*550e3756STapani Utriainen "1920k(u-boot),128k(u-boot-env),"\ 95*550e3756STapani Utriainen "4m(kernel),-(fs)" 96*550e3756STapani Utriainen 97*550e3756STapani Utriainen #define CONFIG_CMD_I2C /* I2C serial bus support */ 98*550e3756STapani Utriainen #define CONFIG_CMD_MMC /* MMC support */ 99*550e3756STapani Utriainen #define CONFIG_CMD_NAND /* NAND support */ 100*550e3756STapani Utriainen #define CONFIG_CMD_DHCP 101*550e3756STapani Utriainen #define CONFIG_CMD_PING 102*550e3756STapani Utriainen 103*550e3756STapani Utriainen #undef CONFIG_CMD_FLASH /* flinfo, erase, protect */ 104*550e3756STapani Utriainen #undef CONFIG_CMD_FPGA /* FPGA configuration Support */ 105*550e3756STapani Utriainen #undef CONFIG_CMD_IMI /* iminfo */ 106*550e3756STapani Utriainen #undef CONFIG_CMD_IMLS /* List all found images */ 107*550e3756STapani Utriainen 108*550e3756STapani Utriainen #define CONFIG_SYS_NO_FLASH 109*550e3756STapani Utriainen #define CONFIG_SYS_I2C 110*550e3756STapani Utriainen #define CONFIG_SYS_I2C_OMAP34XX 111*550e3756STapani Utriainen #define CONFIG_SYS_OMAP24_I2C_SPEED 100000 112*550e3756STapani Utriainen #define CONFIG_SYS_OMAP24_I2C_SLAVE 1 113*550e3756STapani Utriainen #define CONFIG_I2C_MULTI_BUS 114*550e3756STapani Utriainen 115*550e3756STapani Utriainen /* 116*550e3756STapani Utriainen * TWL4030 117*550e3756STapani Utriainen */ 118*550e3756STapani Utriainen #define CONFIG_TWL4030_POWER 119*550e3756STapani Utriainen #define CONFIG_TWL4030_LED 120*550e3756STapani Utriainen 121*550e3756STapani Utriainen /* 122*550e3756STapani Utriainen * Board NAND Info. 123*550e3756STapani Utriainen */ 124*550e3756STapani Utriainen #define CONFIG_SYS_NAND_QUIET_TEST 125*550e3756STapani Utriainen #define CONFIG_NAND_OMAP_GPMC 126*550e3756STapani Utriainen #define CONFIG_SYS_NAND_ADDR NAND_BASE /* physical address */ 127*550e3756STapani Utriainen /* to access nand */ 128*550e3756STapani Utriainen #define CONFIG_SYS_NAND_BASE NAND_BASE /* physical address */ 129*550e3756STapani Utriainen /* to access nand at */ 130*550e3756STapani Utriainen /* CS0 */ 131*550e3756STapani Utriainen #define GPMC_NAND_ECC_LP_x16_LAYOUT 132*550e3756STapani Utriainen 133*550e3756STapani Utriainen #define CONFIG_SYS_MAX_NAND_DEVICE 1 /* Max number of NAND */ 134*550e3756STapani Utriainen /* devices */ 135*550e3756STapani Utriainen /* Environment information */ 136*550e3756STapani Utriainen #define CONFIG_BOOTDELAY 3 137*550e3756STapani Utriainen 138*550e3756STapani Utriainen #define CONFIG_EXTRA_ENV_SETTINGS \ 139*550e3756STapani Utriainen "loadaddr=0x82000000\0" \ 140*550e3756STapani Utriainen "console=ttyO2,115200n8\0" \ 141*550e3756STapani Utriainen "mpurate=600\0" \ 142*550e3756STapani Utriainen "dvi_mode=omapfb.mode=dvi:1280x720-24@60\0" \ 143*550e3756STapani Utriainen "tv_mode=omapfb.mode=tv:ntsc\0" \ 144*550e3756STapani Utriainen "video_mode=omapdss.def_disp=lcd vram=6M omapfb.vram=0:2M,1:2M,2:2M\0" \ 145*550e3756STapani Utriainen "lcd_mode=omapfb.mode=lcd:800x480@60 \0" \ 146*550e3756STapani Utriainen "extra_options= \0" \ 147*550e3756STapani Utriainen "mem_size=mem=128M \0" \ 148*550e3756STapani Utriainen "mmcdev=0\0" \ 149*550e3756STapani Utriainen "mmcroot=/dev/mmcblk0p2 rw\0" \ 150*550e3756STapani Utriainen "mmcrootfstype=ext3 rootwait\0" \ 151*550e3756STapani Utriainen "nandroot=ubi0:rootfs ubi.mtd=4\0" \ 152*550e3756STapani Utriainen "nandrootfstype=ubifs\0" \ 153*550e3756STapani Utriainen "mmcargs=setenv bootargs console=${console} " \ 154*550e3756STapani Utriainen "${mem_size} " \ 155*550e3756STapani Utriainen "mpurate=${mpurate} " \ 156*550e3756STapani Utriainen "${video_mode} " \ 157*550e3756STapani Utriainen "root=${mmcroot} " \ 158*550e3756STapani Utriainen "rootfstype=${mmcrootfstype} " \ 159*550e3756STapani Utriainen "${extra_options}\0" \ 160*550e3756STapani Utriainen "nandargs=setenv bootargs console=${console} " \ 161*550e3756STapani Utriainen "${mem_size} " \ 162*550e3756STapani Utriainen "mpurate=${mpurate} " \ 163*550e3756STapani Utriainen "${video_mode} " \ 164*550e3756STapani Utriainen "${network_setting} " \ 165*550e3756STapani Utriainen "root=${nandroot} " \ 166*550e3756STapani Utriainen "rootfstype=${nandrootfstype} "\ 167*550e3756STapani Utriainen "${extra_options}\0" \ 168*550e3756STapani Utriainen "loadbootscript=fatload mmc ${mmcdev} ${loadaddr} boot.scr\0" \ 169*550e3756STapani Utriainen "bootscript=echo Running bootscript from mmc ...; " \ 170*550e3756STapani Utriainen "source ${loadaddr}\0" \ 171*550e3756STapani Utriainen "loaduimage=fatload mmc ${mmcdev} ${loadaddr} uImage\0" \ 172*550e3756STapani Utriainen "mmcboot=echo Booting from mmc ...; " \ 173*550e3756STapani Utriainen "run mmcargs; " \ 174*550e3756STapani Utriainen "bootm ${loadaddr}\0" \ 175*550e3756STapani Utriainen "nandboot=echo Booting from nand ...; " \ 176*550e3756STapani Utriainen "run nandargs; " \ 177*550e3756STapani Utriainen "nand read ${loadaddr} 280000 400000; " \ 178*550e3756STapani Utriainen "bootm ${loadaddr}\0" \ 179*550e3756STapani Utriainen 180*550e3756STapani Utriainen #define CONFIG_BOOTCOMMAND \ 181*550e3756STapani Utriainen "if mmc rescan ${mmcdev}; then " \ 182*550e3756STapani Utriainen "if run loadbootscript; then " \ 183*550e3756STapani Utriainen "run bootscript; " \ 184*550e3756STapani Utriainen "else " \ 185*550e3756STapani Utriainen "if run loaduimage; then " \ 186*550e3756STapani Utriainen "run mmcboot; " \ 187*550e3756STapani Utriainen "else run nandboot; " \ 188*550e3756STapani Utriainen "fi; " \ 189*550e3756STapani Utriainen "fi; " \ 190*550e3756STapani Utriainen "else run nandboot; fi" 191*550e3756STapani Utriainen 192*550e3756STapani Utriainen /* 193*550e3756STapani Utriainen * Miscellaneous configurable options 194*550e3756STapani Utriainen */ 195*550e3756STapani Utriainen #define CONFIG_SYS_LONGHELP /* undef to save memory */ 196*550e3756STapani Utriainen #define CONFIG_SYS_HUSH_PARSER /* use "hush" command parser */ 197*550e3756STapani Utriainen #define CONFIG_SYS_PROMPT "TAO-3530 # " 198*550e3756STapani Utriainen #define CONFIG_SYS_CBSIZE 256 /* Console I/O Buffer Size */ 199*550e3756STapani Utriainen 200*550e3756STapani Utriainen /* turn on command-line edit/hist/auto */ 201*550e3756STapani Utriainen #define CONFIG_CMDLINE_EDITING 202*550e3756STapani Utriainen #define CONFIG_COMMAND_HISTORY 203*550e3756STapani Utriainen #define CONFIG_AUTO_COMPLETE 204*550e3756STapani Utriainen 205*550e3756STapani Utriainen /* Print Buffer Size */ 206*550e3756STapani Utriainen #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + \ 207*550e3756STapani Utriainen sizeof(CONFIG_SYS_PROMPT) + 16) 208*550e3756STapani Utriainen #define CONFIG_SYS_MAXARGS 16 /* max number of command args */ 209*550e3756STapani Utriainen /* Boot Argument Buffer Size */ 210*550e3756STapani Utriainen #define CONFIG_SYS_BARGSIZE (CONFIG_SYS_CBSIZE) 211*550e3756STapani Utriainen 212*550e3756STapani Utriainen #define CONFIG_SYS_ALT_MEMTEST 1 213*550e3756STapani Utriainen #define CONFIG_SYS_MEMTEST_START (0x82000000) /* memtest */ 214*550e3756STapani Utriainen /* defaults */ 215*550e3756STapani Utriainen #define CONFIG_SYS_MEMTEST_END (0x83FFFFFF) /* 64MB */ 216*550e3756STapani Utriainen #define CONFIG_SYS_MEMTEST_SCRATCH (0x81000000) /* dummy address */ 217*550e3756STapani Utriainen 218*550e3756STapani Utriainen #define CONFIG_SYS_LOAD_ADDR (OMAP34XX_SDRC_CS0) /* default */ 219*550e3756STapani Utriainen /* load address */ 220*550e3756STapani Utriainen #define CONFIG_SYS_TEXT_BASE 0x80008000 221*550e3756STapani Utriainen 222*550e3756STapani Utriainen /* 223*550e3756STapani Utriainen * OMAP3 has 12 GP timers, they can be driven by the system clock 224*550e3756STapani Utriainen * (12/13/16.8/19.2/38.4MHz) or by 32KHz clock. We use 13MHz (V_SCLK). 225*550e3756STapani Utriainen * This rate is divided by a local divisor. 226*550e3756STapani Utriainen */ 227*550e3756STapani Utriainen #define CONFIG_SYS_TIMERBASE (OMAP34XX_GPT2) 228*550e3756STapani Utriainen #define CONFIG_SYS_PTV 2 /* Divisor: 2^(PTV+1) => 8 */ 229*550e3756STapani Utriainen 230*550e3756STapani Utriainen /* 231*550e3756STapani Utriainen * Stack sizes 232*550e3756STapani Utriainen * 233*550e3756STapani Utriainen * The stack sizes are set up in start.S using the settings below 234*550e3756STapani Utriainen */ 235*550e3756STapani Utriainen #define CONFIG_STACKSIZE (128 << 10) /* regular stack 128 KiB */ 236*550e3756STapani Utriainen 237*550e3756STapani Utriainen /* 238*550e3756STapani Utriainen * Physical Memory Map 239*550e3756STapani Utriainen */ 240*550e3756STapani Utriainen #define CONFIG_NR_DRAM_BANKS 2 /* CS1 may or may not be populated */ 241*550e3756STapani Utriainen #define PHYS_SDRAM_1 OMAP34XX_SDRC_CS0 242*550e3756STapani Utriainen #define PHYS_SDRAM_1_SIZE (32 << 20) /* at least 32 MiB */ 243*550e3756STapani Utriainen #define PHYS_SDRAM_2 OMAP34XX_SDRC_CS1 244*550e3756STapani Utriainen 245*550e3756STapani Utriainen /* 246*550e3756STapani Utriainen * FLASH and environment organization 247*550e3756STapani Utriainen */ 248*550e3756STapani Utriainen 249*550e3756STapani Utriainen /* **** PISMO SUPPORT *** */ 250*550e3756STapani Utriainen 251*550e3756STapani Utriainen /* Configure the PISMO */ 252*550e3756STapani Utriainen #define PISMO1_NAND_SIZE GPMC_SIZE_128M 253*550e3756STapani Utriainen #define PISMO1_ONEN_SIZE GPMC_SIZE_128M 254*550e3756STapani Utriainen 255*550e3756STapani Utriainen #define CONFIG_SYS_MONITOR_LEN (256 << 10) /* Reserve 2 sectors */ 256*550e3756STapani Utriainen #define CONFIG_SYS_FLASH_BASE PISMO1_NAND_BASE 257*550e3756STapani Utriainen 258*550e3756STapani Utriainen /* Monitor at start of flash */ 259*550e3756STapani Utriainen #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_FLASH_BASE 260*550e3756STapani Utriainen #define CONFIG_SYS_ONENAND_BASE ONENAND_MAP 261*550e3756STapani Utriainen 262*550e3756STapani Utriainen #define CONFIG_ENV_IS_IN_NAND 1 263*550e3756STapani Utriainen #define ONENAND_ENV_OFFSET 0x260000 /* environment starts here */ 264*550e3756STapani Utriainen #define SMNAND_ENV_OFFSET 0x260000 /* environment starts here */ 265*550e3756STapani Utriainen 266*550e3756STapani Utriainen #define CONFIG_SYS_ENV_SECT_SIZE (128 << 10) 267*550e3756STapani Utriainen #define CONFIG_ENV_OFFSET SMNAND_ENV_OFFSET 268*550e3756STapani Utriainen #define CONFIG_ENV_ADDR CONFIG_ENV_OFFSET 269*550e3756STapani Utriainen 270*550e3756STapani Utriainen #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM_1 271*550e3756STapani Utriainen #define CONFIG_SYS_INIT_RAM_ADDR 0x4020f800 272*550e3756STapani Utriainen #define CONFIG_SYS_INIT_RAM_SIZE 0x800 273*550e3756STapani Utriainen #define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_INIT_RAM_ADDR + \ 274*550e3756STapani Utriainen CONFIG_SYS_INIT_RAM_SIZE - \ 275*550e3756STapani Utriainen GENERATED_GBL_DATA_SIZE) 276*550e3756STapani Utriainen 277*550e3756STapani Utriainen #define CONFIG_OMAP3_SPI 278*550e3756STapani Utriainen 279*550e3756STapani Utriainen /* 280*550e3756STapani Utriainen * USB 281*550e3756STapani Utriainen * 282*550e3756STapani Utriainen * Currently only EHCI is enabled, the MUSB OTG controller 283*550e3756STapani Utriainen * is not enabled. 284*550e3756STapani Utriainen */ 285*550e3756STapani Utriainen 286*550e3756STapani Utriainen /* USB EHCI */ 287*550e3756STapani Utriainen #define CONFIG_CMD_USB 288*550e3756STapani Utriainen #define CONFIG_USB_EHCI 289*550e3756STapani Utriainen #define CONFIG_USB_EHCI_OMAP 290*550e3756STapani Utriainen #define CONFIG_OMAP_EHCI_PHY1_RESET_GPIO 162 291*550e3756STapani Utriainen 292*550e3756STapani Utriainen #define CONFIG_SYS_USB_EHCI_MAX_ROOT_PORTS 3 293*550e3756STapani Utriainen #define CONFIG_USB_HOST_ETHER 294*550e3756STapani Utriainen #define CONFIG_USB_ETHER_SMSC95XX 295*550e3756STapani Utriainen 296*550e3756STapani Utriainen #define CONFIG_USB_ETHER 297*550e3756STapani Utriainen #define CONFIG_USB_ETHER_RNDIS 298*550e3756STapani Utriainen #define CONFIG_USB_STORAGE 299*550e3756STapani Utriainen #define CONGIG_CMD_STORAGE 300*550e3756STapani Utriainen 301*550e3756STapani Utriainen #endif /* __CONFIG_H */ 302