1c35d7cf0SFrederik Kriewitz /* 2c35d7cf0SFrederik Kriewitz * (C) Copyright 2006-2008 3c35d7cf0SFrederik Kriewitz * Texas Instruments. 4c35d7cf0SFrederik Kriewitz * Richard Woodruff <r-woodruff2@ti.com> 5c35d7cf0SFrederik Kriewitz * Syed Mohammed Khasim <x0khasim@ti.com> 6c35d7cf0SFrederik Kriewitz * 7c35d7cf0SFrederik Kriewitz * (C) Copyright 2009 8c35d7cf0SFrederik Kriewitz * Frederik Kriewitz <frederik@kriewitz.eu> 9c35d7cf0SFrederik Kriewitz * 10c35d7cf0SFrederik Kriewitz * Configuration settings for the DevKit8000 board. 11c35d7cf0SFrederik Kriewitz * 121a459660SWolfgang Denk * SPDX-License-Identifier: GPL-2.0+ 13c35d7cf0SFrederik Kriewitz */ 14c35d7cf0SFrederik Kriewitz 15c35d7cf0SFrederik Kriewitz #ifndef __CONFIG_H 16c35d7cf0SFrederik Kriewitz #define __CONFIG_H 17c35d7cf0SFrederik Kriewitz 18c35d7cf0SFrederik Kriewitz /* High Level Configuration Options */ 192d52a9a3SSimon Schwarz #define CONFIG_MACH_TYPE MACH_TYPE_DEVKIT8000 20308252adSMarek Vasut 215183b7ecSSimon Schwarz /* 225183b7ecSSimon Schwarz * 1MB into the SDRAM to allow for SPL's bss at the beginning of SDRAM 235183b7ecSSimon Schwarz * 64 bytes before this address should be set aside for u-boot.img's 245183b7ecSSimon Schwarz * header. That is 0x800FFFC0--0x80100000 should not be used for any 255183b7ecSSimon Schwarz * other needs. 265183b7ecSSimon Schwarz */ 275183b7ecSSimon Schwarz #define CONFIG_SYS_TEXT_BASE 0x80100000 2866fca016SThomas Weber 29875e4154SAnthoine Bourgeois #define CONFIG_SPL_BSS_START_ADDR 0x80000500 /* leave space for bootargs*/ 30875e4154SAnthoine Bourgeois #define CONFIG_SPL_BSS_MAX_SIZE 0x80000 31875e4154SAnthoine Bourgeois 32875e4154SAnthoine Bourgeois #define CONFIG_SYS_SPL_MALLOC_START 0x80208000 33875e4154SAnthoine Bourgeois #define CONFIG_SYS_SPL_MALLOC_SIZE 0x100000 /* 1 MB */ 34cae377b5SVaibhav Hiremath 35875e4154SAnthoine Bourgeois /* Physical Memory Map */ 36875e4154SAnthoine Bourgeois #define CONFIG_NR_DRAM_BANKS 2 /* CS1 may or may not be populated */ 37875e4154SAnthoine Bourgeois 38*a91ef4adSAnthoine Bourgeois #include <configs/ti_omap3_common.h> 39875e4154SAnthoine Bourgeois 40c35d7cf0SFrederik Kriewitz #define CONFIG_MISC_INIT_R 41c35d7cf0SFrederik Kriewitz 42c35d7cf0SFrederik Kriewitz #define CONFIG_REVISION_TAG 1 43c35d7cf0SFrederik Kriewitz 44c35d7cf0SFrederik Kriewitz /* Size of malloc() pool */ 459c44ddccSSandeep Paulraj #define CONFIG_ENV_SIZE (128 << 10) /* 128 KiB */ 46c35d7cf0SFrederik Kriewitz /* Sector */ 47875e4154SAnthoine Bourgeois #undef CONFIG_SYS_MALLOC_LEN 489c44ddccSSandeep Paulraj #define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + (128 << 10)) 49c35d7cf0SFrederik Kriewitz 50c35d7cf0SFrederik Kriewitz /* Hardware drivers */ 51c35d7cf0SFrederik Kriewitz /* DM9000 */ 52c35d7cf0SFrederik Kriewitz #define CONFIG_NET_RETRY_COUNT 20 53c35d7cf0SFrederik Kriewitz #define CONFIG_DRIVER_DM9000 1 54c35d7cf0SFrederik Kriewitz #define CONFIG_DM9000_BASE 0x2c000000 55c35d7cf0SFrederik Kriewitz #define DM9000_IO CONFIG_DM9000_BASE 56c35d7cf0SFrederik Kriewitz #define DM9000_DATA (CONFIG_DM9000_BASE + 0x400) 57c35d7cf0SFrederik Kriewitz #define CONFIG_DM9000_USE_16BIT 1 58c35d7cf0SFrederik Kriewitz #define CONFIG_DM9000_NO_SROM 1 59c35d7cf0SFrederik Kriewitz #undef CONFIG_DM9000_DEBUG 60c35d7cf0SFrederik Kriewitz 61c35d7cf0SFrederik Kriewitz /* TWL4030 */ 62c35d7cf0SFrederik Kriewitz #define CONFIG_TWL4030_LED 1 63c35d7cf0SFrederik Kriewitz 64c35d7cf0SFrederik Kriewitz /* Board NAND Info */ 65c35d7cf0SFrederik Kriewitz #define MTDIDS_DEFAULT "nand0=nand" 66c35d7cf0SFrederik Kriewitz #define MTDPARTS_DEFAULT "mtdparts=nand:" \ 67c35d7cf0SFrederik Kriewitz "512k(x-loader)," \ 68c35d7cf0SFrederik Kriewitz "1920k(u-boot)," \ 69c35d7cf0SFrederik Kriewitz "128k(u-boot-env)," \ 70c35d7cf0SFrederik Kriewitz "4m(kernel)," \ 71c35d7cf0SFrederik Kriewitz "-(fs)" 72c35d7cf0SFrederik Kriewitz 73c35d7cf0SFrederik Kriewitz #define CONFIG_SYS_NAND_ADDR NAND_BASE /* physical address */ 74c35d7cf0SFrederik Kriewitz /* to access nand */ 75c35d7cf0SFrederik Kriewitz #define CONFIG_JFFS2_NAND 76c35d7cf0SFrederik Kriewitz /* nand device jffs2 lives on */ 77c35d7cf0SFrederik Kriewitz #define CONFIG_JFFS2_DEV "nand0" 78c35d7cf0SFrederik Kriewitz /* start of jffs2 partition */ 79c35d7cf0SFrederik Kriewitz #define CONFIG_JFFS2_PART_OFFSET 0x680000 80c35d7cf0SFrederik Kriewitz #define CONFIG_JFFS2_PART_SIZE 0xf980000 /* size of jffs2 */ 81c35d7cf0SFrederik Kriewitz /* partition */ 82c35d7cf0SFrederik Kriewitz 83875e4154SAnthoine Bourgeois #undef CONFIG_SUPPORT_RAW_INITRD 84c35d7cf0SFrederik Kriewitz 85c35d7cf0SFrederik Kriewitz /* BOOTP/DHCP options */ 86c35d7cf0SFrederik Kriewitz #define CONFIG_BOOTP_SUBNETMASK 87c35d7cf0SFrederik Kriewitz #define CONFIG_BOOTP_GATEWAY 88c35d7cf0SFrederik Kriewitz #define CONFIG_BOOTP_HOSTNAME 89c35d7cf0SFrederik Kriewitz #define CONFIG_BOOTP_NISDOMAIN 90c35d7cf0SFrederik Kriewitz #define CONFIG_BOOTP_BOOTPATH 91c35d7cf0SFrederik Kriewitz #define CONFIG_BOOTP_BOOTFILESIZE 92c35d7cf0SFrederik Kriewitz #define CONFIG_BOOTP_DNS 93c35d7cf0SFrederik Kriewitz #define CONFIG_BOOTP_DNS2 94c35d7cf0SFrederik Kriewitz #define CONFIG_BOOTP_SEND_HOSTNAME 95c35d7cf0SFrederik Kriewitz #define CONFIG_BOOTP_NTPSERVER 96c35d7cf0SFrederik Kriewitz #define CONFIG_BOOTP_TIMEOFFSET 97c35d7cf0SFrederik Kriewitz #undef CONFIG_BOOTP_VENDOREX 98c35d7cf0SFrederik Kriewitz 99c35d7cf0SFrederik Kriewitz /* Environment information */ 100c35d7cf0SFrederik Kriewitz #define CONFIG_EXTRA_ENV_SETTINGS \ 101c35d7cf0SFrederik Kriewitz "loadaddr=0x82000000\0" \ 1022d76da24SThomas Weber "console=ttyO2,115200n8\0" \ 103f408501dSTom Rini "mmcdev=0\0" \ 104c35d7cf0SFrederik Kriewitz "vram=12M\0" \ 105c35d7cf0SFrederik Kriewitz "dvimode=1024x768MR-16@60\0" \ 106c35d7cf0SFrederik Kriewitz "defaultdisplay=dvi\0" \ 107c35d7cf0SFrederik Kriewitz "nfsopts=hard,tcp,rsize=65536,wsize=65536\0" \ 108c35d7cf0SFrederik Kriewitz "kernelopts=rw\0" \ 109c35d7cf0SFrederik Kriewitz "commonargs=" \ 110c35d7cf0SFrederik Kriewitz "setenv bootargs console=${console} " \ 111c35d7cf0SFrederik Kriewitz "vram=${vram} " \ 112c35d7cf0SFrederik Kriewitz "omapfb.mode=dvi:${dvimode} " \ 113c35d7cf0SFrederik Kriewitz "omapdss.def_disp=${defaultdisplay}\0" \ 114c35d7cf0SFrederik Kriewitz "mmcargs=" \ 115c35d7cf0SFrederik Kriewitz "run commonargs; " \ 116c35d7cf0SFrederik Kriewitz "setenv bootargs ${bootargs} " \ 117c35d7cf0SFrederik Kriewitz "root=/dev/mmcblk0p2 " \ 118b72db208SAndreas Bießmann "rootwait " \ 119c35d7cf0SFrederik Kriewitz "${kernelopts}\0" \ 120c35d7cf0SFrederik Kriewitz "nandargs=" \ 121c35d7cf0SFrederik Kriewitz "run commonargs; " \ 122c35d7cf0SFrederik Kriewitz "setenv bootargs ${bootargs} " \ 123c35d7cf0SFrederik Kriewitz "omapfb.mode=dvi:${dvimode} " \ 124c35d7cf0SFrederik Kriewitz "omapdss.def_disp=${defaultdisplay} " \ 125c35d7cf0SFrederik Kriewitz "root=/dev/mtdblock4 " \ 126c35d7cf0SFrederik Kriewitz "rootfstype=jffs2 " \ 127c35d7cf0SFrederik Kriewitz "${kernelopts}\0" \ 128c35d7cf0SFrederik Kriewitz "netargs=" \ 129c35d7cf0SFrederik Kriewitz "run commonargs; " \ 130c35d7cf0SFrederik Kriewitz "setenv bootargs ${bootargs} " \ 131c35d7cf0SFrederik Kriewitz "root=/dev/nfs " \ 132c35d7cf0SFrederik Kriewitz "nfsroot=${serverip}:${rootpath},${nfsopts} " \ 133c35d7cf0SFrederik Kriewitz "ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}::off " \ 134c35d7cf0SFrederik Kriewitz "${kernelopts} " \ 135c35d7cf0SFrederik Kriewitz "dnsip1=${dnsip} " \ 136c35d7cf0SFrederik Kriewitz "dnsip2=${dnsip2}\0" \ 137f408501dSTom Rini "loadbootscript=fatload mmc ${mmcdev} ${loadaddr} boot.scr\0" \ 138c35d7cf0SFrederik Kriewitz "bootscript=echo Running bootscript from mmc ...; " \ 139c35d7cf0SFrederik Kriewitz "source ${loadaddr}\0" \ 140f408501dSTom Rini "loaduimage=fatload mmc ${mmcdev} ${loadaddr} uImage\0" \ 141c35d7cf0SFrederik Kriewitz "eraseenv=nand unlock 0x260000 0x20000; nand erase 0x260000 0x20000\0" \ 142c35d7cf0SFrederik Kriewitz "mmcboot=echo Booting from mmc ...; " \ 143c35d7cf0SFrederik Kriewitz "run mmcargs; " \ 144c35d7cf0SFrederik Kriewitz "bootm ${loadaddr}\0" \ 145c35d7cf0SFrederik Kriewitz "nandboot=echo Booting from nand ...; " \ 146c35d7cf0SFrederik Kriewitz "run nandargs; " \ 147c35d7cf0SFrederik Kriewitz "nand read ${loadaddr} 280000 400000; " \ 148c35d7cf0SFrederik Kriewitz "bootm ${loadaddr}\0" \ 149c35d7cf0SFrederik Kriewitz "netboot=echo Booting from network ...; " \ 150c35d7cf0SFrederik Kriewitz "dhcp ${loadaddr}; " \ 151c35d7cf0SFrederik Kriewitz "run netargs; " \ 152c35d7cf0SFrederik Kriewitz "bootm ${loadaddr}\0" \ 15366968110SAndrew Bradford "autoboot=mmc dev ${mmcdev}; if mmc rescan; then " \ 154c35d7cf0SFrederik Kriewitz "if run loadbootscript; then " \ 155c35d7cf0SFrederik Kriewitz "run bootscript; " \ 156c35d7cf0SFrederik Kriewitz "else " \ 157c35d7cf0SFrederik Kriewitz "if run loaduimage; then " \ 158c35d7cf0SFrederik Kriewitz "run mmcboot; " \ 159c35d7cf0SFrederik Kriewitz "else run nandboot; " \ 160c35d7cf0SFrederik Kriewitz "fi; " \ 161c35d7cf0SFrederik Kriewitz "fi; " \ 162c35d7cf0SFrederik Kriewitz "else run nandboot; fi\0" 163c35d7cf0SFrederik Kriewitz 164c35d7cf0SFrederik Kriewitz #define CONFIG_BOOTCOMMAND "run autoboot" 165c35d7cf0SFrederik Kriewitz 166c35d7cf0SFrederik Kriewitz /* Boot Argument Buffer Size */ 167c35d7cf0SFrederik Kriewitz #define CONFIG_SYS_MEMTEST_START (OMAP34XX_SDRC_CS0 + 0x07000000) 168c35d7cf0SFrederik Kriewitz #define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_MEMTEST_START + \ 169c35d7cf0SFrederik Kriewitz 0x01000000) /* 16MB */ 170c35d7cf0SFrederik Kriewitz 171c35d7cf0SFrederik Kriewitz /* NAND and environment organization */ 172c35d7cf0SFrederik Kriewitz #define SMNAND_ENV_OFFSET 0x260000 /* environment starts here */ 173c35d7cf0SFrederik Kriewitz 1746cbec7b3SLuca Ceresoli #define CONFIG_ENV_OFFSET SMNAND_ENV_OFFSET 175c35d7cf0SFrederik Kriewitz 1763f6a4922SSimon Schwarz /* SRAM config */ 1773f6a4922SSimon Schwarz #define CONFIG_SYS_SRAM_START 0x40200000 1783f6a4922SSimon Schwarz #define CONFIG_SYS_SRAM_SIZE 0x10000 1793f6a4922SSimon Schwarz 1803f6a4922SSimon Schwarz /* Defines for SPL */ 1813f6a4922SSimon Schwarz 182*a91ef4adSAnthoine Bourgeois #undef CONFIG_SPL_TEXT_BASE 1833f6a4922SSimon Schwarz #define CONFIG_SPL_TEXT_BASE 0x40200000 /*CONFIG_SYS_SRAM_START*/ 1843f6a4922SSimon Schwarz 1853f6a4922SSimon Schwarz /* NAND boot config */ 186c471ccb9STom Rini #define CONFIG_SYS_NAND_5_ADDR_CYCLE 1873f6a4922SSimon Schwarz #define CONFIG_SYS_NAND_PAGE_COUNT 64 1883f6a4922SSimon Schwarz #define CONFIG_SYS_NAND_PAGE_SIZE 2048 1893f6a4922SSimon Schwarz #define CONFIG_SYS_NAND_OOBSIZE 64 1903f6a4922SSimon Schwarz #define CONFIG_SYS_NAND_BLOCK_SIZE (128*1024) 1913f6a4922SSimon Schwarz #define CONFIG_SYS_NAND_BAD_BLOCK_POS 0 1923f6a4922SSimon Schwarz #define CONFIG_SYS_NAND_ECCPOS {2, 3, 4, 5, 6, 7, 8, 9,\ 1933f6a4922SSimon Schwarz 10, 11, 12, 13} 1943f6a4922SSimon Schwarz 1953f6a4922SSimon Schwarz #define CONFIG_SYS_NAND_ECCSIZE 512 1963f6a4922SSimon Schwarz #define CONFIG_SYS_NAND_ECCBYTES 3 1973f719069Spekon gupta #define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_HAM1_CODE_HW 1983f6a4922SSimon Schwarz 1993f6a4922SSimon Schwarz #define CONFIG_SYS_NAND_U_BOOT_OFFS 0x80000 2003f6a4922SSimon Schwarz #define CONFIG_SYS_NAND_U_BOOT_SIZE 0x200000 2013f6a4922SSimon Schwarz 202d38bc97dSSimon Schwarz /* SPL OS boot options */ 203d38bc97dSSimon Schwarz #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS 0x280000 204b6144dfcSTom Rini 205875e4154SAnthoine Bourgeois #undef CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR 206875e4154SAnthoine Bourgeois #undef CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR 207875e4154SAnthoine Bourgeois #undef CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS 208b6144dfcSTom Rini #define CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR 0x500 /* address 0xa0000 */ 209b6144dfcSTom Rini #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR 0x8 /* address 0x1000 */ 210b6144dfcSTom Rini #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS 8 /* 4KB */ 211b6144dfcSTom Rini 212*a91ef4adSAnthoine Bourgeois #undef CONFIG_SYS_SPL_ARGS_ADDR 213d38bc97dSSimon Schwarz #define CONFIG_SYS_SPL_ARGS_ADDR (PHYS_SDRAM_1 + 0x100) 214d38bc97dSSimon Schwarz 215c35d7cf0SFrederik Kriewitz #endif /* __CONFIG_H */ 216