blob: d17cdbba4b89b096985695950a709f6f087ad4bb [file] [log] [blame]
Frederik Kriewitz99396502009-08-23 12:56:42 +02001/*
2 * (C) Copyright 2006-2008
3 * Texas Instruments.
4 * Richard Woodruff <r-woodruff2@ti.com>
5 * Syed Mohammed Khasim <x0khasim@ti.com>
6 *
7 * (C) Copyright 2009
8 * Frederik Kriewitz <frederik@kriewitz.eu>
9 *
10 * Configuration settings for the DevKit8000 board.
11 *
Wolfgang Denkbd8ec7e2013-10-07 13:07:26 +020012 * SPDX-License-Identifier: GPL-2.0+
Frederik Kriewitz99396502009-08-23 12:56:42 +020013 */
14
15#ifndef __CONFIG_H
16#define __CONFIG_H
Frederik Kriewitz99396502009-08-23 12:56:42 +020017
18/* High Level Configuration Options */
Frederik Kriewitz99396502009-08-23 12:56:42 +020019#define CONFIG_OMAP3_DEVKIT8000 1 /* working with DevKit8000 */
Simon Schwarzbbb57cb2012-03-15 04:01:40 +000020#define CONFIG_MACH_TYPE MACH_TYPE_DEVKIT8000
Marek Vasutaede1882012-07-21 05:02:23 +000021
Simon Schwarz9ec03022011-12-05 23:16:28 +000022/*
23 * 1MB into the SDRAM to allow for SPL's bss at the beginning of SDRAM
24 * 64 bytes before this address should be set aside for u-boot.img's
25 * header. That is 0x800FFFC0--0x80100000 should not be used for any
26 * other needs.
27 */
28#define CONFIG_SYS_TEXT_BASE 0x80100000
Thomas Weber1211d142010-10-18 15:38:15 +020029
Anthoine Bourgeoise70198f2015-01-02 00:35:42 +010030#define CONFIG_SPL_BSS_START_ADDR 0x80000500 /* leave space for bootargs*/
31#define CONFIG_SPL_BSS_MAX_SIZE 0x80000
32
33#define CONFIG_SYS_SPL_MALLOC_START 0x80208000
34#define CONFIG_SYS_SPL_MALLOC_SIZE 0x100000 /* 1 MB */
Vaibhav Hiremath558d23d2010-06-07 15:20:34 -040035
Anthoine Bourgeoise70198f2015-01-02 00:35:42 +010036#define CONFIG_NAND
Anthoine Bourgeoise70198f2015-01-02 00:35:42 +010037
38/* Physical Memory Map */
39#define CONFIG_NR_DRAM_BANKS 2 /* CS1 may or may not be populated */
Anthoine Bourgeoise70198f2015-01-02 00:35:42 +010040
Anthoine Bourgeoiscf84a822015-01-02 00:35:43 +010041#include <configs/ti_omap3_common.h>
Anthoine Bourgeoise70198f2015-01-02 00:35:42 +010042
Frederik Kriewitz99396502009-08-23 12:56:42 +020043/* Display CPU and Board information */
44#define CONFIG_DISPLAY_CPUINFO 1
45#define CONFIG_DISPLAY_BOARDINFO 1
46
Frederik Kriewitz99396502009-08-23 12:56:42 +020047#define CONFIG_MISC_INIT_R
48
Frederik Kriewitz99396502009-08-23 12:56:42 +020049#define CONFIG_REVISION_TAG 1
50
51/* Size of malloc() pool */
Sandeep Paulraj6a87b3f2009-09-09 11:50:40 -040052#define CONFIG_ENV_SIZE (128 << 10) /* 128 KiB */
Frederik Kriewitz99396502009-08-23 12:56:42 +020053 /* Sector */
Anthoine Bourgeoise70198f2015-01-02 00:35:42 +010054#undef CONFIG_SYS_MALLOC_LEN
Sandeep Paulraj6a87b3f2009-09-09 11:50:40 -040055#define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + (128 << 10))
Frederik Kriewitz99396502009-08-23 12:56:42 +020056
57/* Hardware drivers */
Frederik Kriewitz99396502009-08-23 12:56:42 +020058/* DM9000 */
Frederik Kriewitz99396502009-08-23 12:56:42 +020059#define CONFIG_NET_RETRY_COUNT 20
60#define CONFIG_DRIVER_DM9000 1
61#define CONFIG_DM9000_BASE 0x2c000000
62#define DM9000_IO CONFIG_DM9000_BASE
63#define DM9000_DATA (CONFIG_DM9000_BASE + 0x400)
64#define CONFIG_DM9000_USE_16BIT 1
65#define CONFIG_DM9000_NO_SROM 1
66#undef CONFIG_DM9000_DEBUG
67
Anthoine Bourgeoise70198f2015-01-02 00:35:42 +010068/* SPI */
69#undef CONFIG_SPI
70#undef CONFIG_OMAP3_SPI
Frederik Kriewitz99396502009-08-23 12:56:42 +020071
72/* I2C */
Anthoine Bourgeoise70198f2015-01-02 00:35:42 +010073#undef CONFIG_SYS_I2C_OMAP24XX
Heiko Schocherf53f2b82013-10-22 11:03:18 +020074#define CONFIG_SYS_I2C_OMAP34XX
Frederik Kriewitz99396502009-08-23 12:56:42 +020075
76/* TWL4030 */
Frederik Kriewitz99396502009-08-23 12:56:42 +020077#define CONFIG_TWL4030_LED 1
78
79/* Board NAND Info */
Frederik Kriewitz99396502009-08-23 12:56:42 +020080#define MTDIDS_DEFAULT "nand0=nand"
81#define MTDPARTS_DEFAULT "mtdparts=nand:" \
82 "512k(x-loader)," \
83 "1920k(u-boot)," \
84 "128k(u-boot-env)," \
85 "4m(kernel)," \
86 "-(fs)"
87
Frederik Kriewitz99396502009-08-23 12:56:42 +020088#define CONFIG_SYS_NAND_ADDR NAND_BASE /* physical address */
89 /* to access nand */
Frederik Kriewitz99396502009-08-23 12:56:42 +020090#define CONFIG_JFFS2_NAND
91/* nand device jffs2 lives on */
92#define CONFIG_JFFS2_DEV "nand0"
93/* start of jffs2 partition */
94#define CONFIG_JFFS2_PART_OFFSET 0x680000
95#define CONFIG_JFFS2_PART_SIZE 0xf980000 /* size of jffs2 */
96 /* partition */
97
98/* commands to include */
Frederik Kriewitz99396502009-08-23 12:56:42 +020099#define CONFIG_CMD_JFFS2 /* JFFS2 Support */
Frederik Kriewitz99396502009-08-23 12:56:42 +0200100#define CONFIG_CMD_NAND_LOCK_UNLOCK /* nand (un)lock commands */
101
Anthoine Bourgeoise70198f2015-01-02 00:35:42 +0100102#undef CONFIG_SUPPORT_RAW_INITRD
103#undef CONFIG_FAT_WRITE
Frederik Kriewitz99396502009-08-23 12:56:42 +0200104
105/* BOOTP/DHCP options */
106#define CONFIG_BOOTP_SUBNETMASK
107#define CONFIG_BOOTP_GATEWAY
108#define CONFIG_BOOTP_HOSTNAME
109#define CONFIG_BOOTP_NISDOMAIN
110#define CONFIG_BOOTP_BOOTPATH
111#define CONFIG_BOOTP_BOOTFILESIZE
112#define CONFIG_BOOTP_DNS
113#define CONFIG_BOOTP_DNS2
114#define CONFIG_BOOTP_SEND_HOSTNAME
115#define CONFIG_BOOTP_NTPSERVER
116#define CONFIG_BOOTP_TIMEOFFSET
117#undef CONFIG_BOOTP_VENDOREX
118
119/* Environment information */
Frederik Kriewitz99396502009-08-23 12:56:42 +0200120#define CONFIG_EXTRA_ENV_SETTINGS \
121 "loadaddr=0x82000000\0" \
Thomas Weberf1f72f52011-09-18 22:43:58 +0000122 "console=ttyO2,115200n8\0" \
Tom Rinibde8eea2011-09-03 21:52:45 -0400123 "mmcdev=0\0" \
Frederik Kriewitz99396502009-08-23 12:56:42 +0200124 "vram=12M\0" \
125 "dvimode=1024x768MR-16@60\0" \
126 "defaultdisplay=dvi\0" \
127 "nfsopts=hard,tcp,rsize=65536,wsize=65536\0" \
128 "kernelopts=rw\0" \
129 "commonargs=" \
130 "setenv bootargs console=${console} " \
131 "vram=${vram} " \
132 "omapfb.mode=dvi:${dvimode} " \
133 "omapdss.def_disp=${defaultdisplay}\0" \
134 "mmcargs=" \
135 "run commonargs; " \
136 "setenv bootargs ${bootargs} " \
137 "root=/dev/mmcblk0p2 " \
Andreas Bießmann3b88bcf2012-08-30 23:53:32 +0000138 "rootwait " \
Frederik Kriewitz99396502009-08-23 12:56:42 +0200139 "${kernelopts}\0" \
140 "nandargs=" \
141 "run commonargs; " \
142 "setenv bootargs ${bootargs} " \
143 "omapfb.mode=dvi:${dvimode} " \
144 "omapdss.def_disp=${defaultdisplay} " \
145 "root=/dev/mtdblock4 " \
146 "rootfstype=jffs2 " \
147 "${kernelopts}\0" \
148 "netargs=" \
149 "run commonargs; " \
150 "setenv bootargs ${bootargs} " \
151 "root=/dev/nfs " \
152 "nfsroot=${serverip}:${rootpath},${nfsopts} " \
153 "ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}::off " \
154 "${kernelopts} " \
155 "dnsip1=${dnsip} " \
156 "dnsip2=${dnsip2}\0" \
Tom Rinibde8eea2011-09-03 21:52:45 -0400157 "loadbootscript=fatload mmc ${mmcdev} ${loadaddr} boot.scr\0" \
Frederik Kriewitz99396502009-08-23 12:56:42 +0200158 "bootscript=echo Running bootscript from mmc ...; " \
159 "source ${loadaddr}\0" \
Tom Rinibde8eea2011-09-03 21:52:45 -0400160 "loaduimage=fatload mmc ${mmcdev} ${loadaddr} uImage\0" \
Frederik Kriewitz99396502009-08-23 12:56:42 +0200161 "eraseenv=nand unlock 0x260000 0x20000; nand erase 0x260000 0x20000\0" \
162 "mmcboot=echo Booting from mmc ...; " \
163 "run mmcargs; " \
164 "bootm ${loadaddr}\0" \
165 "nandboot=echo Booting from nand ...; " \
166 "run nandargs; " \
167 "nand read ${loadaddr} 280000 400000; " \
168 "bootm ${loadaddr}\0" \
169 "netboot=echo Booting from network ...; " \
170 "dhcp ${loadaddr}; " \
171 "run netargs; " \
172 "bootm ${loadaddr}\0" \
Andrew Bradforde1c7c8a2012-10-01 05:06:52 +0000173 "autoboot=mmc dev ${mmcdev}; if mmc rescan; then " \
Frederik Kriewitz99396502009-08-23 12:56:42 +0200174 "if run loadbootscript; then " \
175 "run bootscript; " \
176 "else " \
177 "if run loaduimage; then " \
178 "run mmcboot; " \
179 "else run nandboot; " \
180 "fi; " \
181 "fi; " \
182 "else run nandboot; fi\0"
183
Frederik Kriewitz99396502009-08-23 12:56:42 +0200184#define CONFIG_BOOTCOMMAND "run autoboot"
185
Frederik Kriewitz99396502009-08-23 12:56:42 +0200186/* Boot Argument Buffer Size */
Frederik Kriewitz99396502009-08-23 12:56:42 +0200187#define CONFIG_SYS_MEMTEST_START (OMAP34XX_SDRC_CS0 + 0x07000000)
188#define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_MEMTEST_START + \
189 0x01000000) /* 16MB */
190
Frederik Kriewitz99396502009-08-23 12:56:42 +0200191/* NAND and environment organization */
Frederik Kriewitz99396502009-08-23 12:56:42 +0200192#define CONFIG_ENV_IS_IN_NAND 1
193#define SMNAND_ENV_OFFSET 0x260000 /* environment starts here */
194
Luca Ceresoli9783a2c2011-04-20 11:02:05 -0400195#define CONFIG_ENV_OFFSET SMNAND_ENV_OFFSET
Frederik Kriewitz99396502009-08-23 12:56:42 +0200196
Simon Schwarz7ae359c2011-09-14 15:32:17 -0400197/* SRAM config */
198#define CONFIG_SYS_SRAM_START 0x40200000
199#define CONFIG_SYS_SRAM_SIZE 0x10000
200
201/* Defines for SPL */
Simon Schwarz7ae359c2011-09-14 15:32:17 -0400202
Anthoine Bourgeoiscf84a822015-01-02 00:35:43 +0100203#undef CONFIG_SPL_TEXT_BASE
Simon Schwarz7ae359c2011-09-14 15:32:17 -0400204#define CONFIG_SPL_TEXT_BASE 0x40200000 /*CONFIG_SYS_SRAM_START*/
Simon Schwarz7ae359c2011-09-14 15:32:17 -0400205
Simon Schwarz7ae359c2011-09-14 15:32:17 -0400206/* NAND boot config */
Stefano Babic0cd41182015-07-26 15:18:15 +0200207#define CONFIG_SYS_NAND_BUSWIDTH_16BIT
Tom Rinid89a06a2011-11-09 16:40:04 -0500208#define CONFIG_SYS_NAND_5_ADDR_CYCLE
Simon Schwarz7ae359c2011-09-14 15:32:17 -0400209#define CONFIG_SYS_NAND_PAGE_COUNT 64
210#define CONFIG_SYS_NAND_PAGE_SIZE 2048
211#define CONFIG_SYS_NAND_OOBSIZE 64
212#define CONFIG_SYS_NAND_BLOCK_SIZE (128*1024)
213#define CONFIG_SYS_NAND_BAD_BLOCK_POS 0
214#define CONFIG_SYS_NAND_ECCPOS {2, 3, 4, 5, 6, 7, 8, 9,\
215 10, 11, 12, 13}
216
217#define CONFIG_SYS_NAND_ECCSIZE 512
218#define CONFIG_SYS_NAND_ECCBYTES 3
pekon gupta3ef49732013-11-18 19:03:01 +0530219#define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_HAM1_CODE_HW
Simon Schwarz7ae359c2011-09-14 15:32:17 -0400220
Simon Schwarz7ae359c2011-09-14 15:32:17 -0400221#define CONFIG_SYS_NAND_U_BOOT_OFFS 0x80000
222#define CONFIG_SYS_NAND_U_BOOT_SIZE 0x200000
223
Simon Schwarz2128f222012-03-15 04:01:35 +0000224/* SPL OS boot options */
Simon Schwarz2128f222012-03-15 04:01:35 +0000225#define CONFIG_CMD_SPL_WRITE_SIZE 0x400 /* 1024 byte */
226#define CONFIG_CMD_SPL_NAND_OFS (CONFIG_SYS_NAND_SPL_KERNEL_OFFS+\
227 0x400000)
228#define CONFIG_SYS_NAND_SPL_KERNEL_OFFS 0x280000
Tom Rinid8064542013-06-07 14:16:43 -0400229
Anthoine Bourgeoise70198f2015-01-02 00:35:42 +0100230#undef CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR
231#undef CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR
232#undef CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS
Tom Rinid8064542013-06-07 14:16:43 -0400233#define CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR 0x500 /* address 0xa0000 */
234#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR 0x8 /* address 0x1000 */
235#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS 8 /* 4KB */
236
Anthoine Bourgeoiscf84a822015-01-02 00:35:43 +0100237#undef CONFIG_SYS_SPL_ARGS_ADDR
Simon Schwarz2128f222012-03-15 04:01:35 +0000238#define CONFIG_SYS_SPL_ARGS_ADDR (PHYS_SDRAM_1 + 0x100)
239
Frederik Kriewitz99396502009-08-23 12:56:42 +0200240#endif /* __CONFIG_H */