1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * Configuration settings for the TI OMAP3 EVM board.
4  *
5  * Copyright (C) 2006-2011 Texas Instruments Incorporated - https://www.ti.com/
6  *
7  * Author :
8  *	Manikandan Pillai <mani.pillai@ti.com>
9  * Derived from Beagle Board and 3430 SDP code by
10  *	Richard Woodruff <r-woodruff2@ti.com>
11  *	Syed Mohammed Khasim <khasim@ti.com>
12  *
13  * Manikandan Pillai <mani.pillai@ti.com>
14  */
15 
16 #ifndef __CONFIG_H
17 #define __CONFIG_H
18 
19 #include <configs/ti_omap3_common.h>
20 
21 /*
22  * We are only ever GP parts and will utilize all of the "downloaded image"
23  * area in SRAM which starts at 0x40200000 and ends at 0x4020FFFF (64KB).
24  */
25 
26 /* NAND */
27 #if defined(CONFIG_MTD_RAW_NAND)
28 #define CFG_SYS_FLASH_BASE		NAND_BASE
29 #define CFG_SYS_NAND_ECCPOS          {2, 3, 4, 5, 6, 7, 8, 9,\
30                                          10, 11, 12, 13}
31 #define CFG_SYS_NAND_ECCSIZE         512
32 #define CFG_SYS_NAND_ECCBYTES        3
33 #endif /* CONFIG_MTD_RAW_NAND */
34 
35 #define BOOTENV_DEV_LEGACY_MMC(devtypeu, devtypel, instance) \
36 	"bootcmd_" #devtypel #instance "=" \
37 	"setenv mmcdev " #instance "; " \
38 	"run mmcboot\0"
39 #define BOOTENV_DEV_NAME_LEGACY_MMC(devtypeu, devtypel, instance) \
40 	#devtypel #instance " "
41 
42 #if defined(CONFIG_MTD_RAW_NAND)
43 
44 #define BOOTENV_DEV_NAND(devtypeu, devtypel, instance) \
45 	"bootcmd_" #devtypel #instance "=" \
46 	"if test ${mtdids} = '' || test ${mtdparts} = '' ; then " \
47 		"echo NAND boot disabled: No mtdids and/or mtdparts; " \
48 	"else " \
49 		"run nandboot; " \
50 	"fi\0"
51 #define BOOTENV_DEV_NAME_NAND(devtypeu, devtypel, instance) \
52 	#devtypel #instance " "
53 
54 #define BOOT_TARGET_DEVICES(func) \
55 	func(MMC, mmc, 0) \
56 	func(LEGACY_MMC, legacy_mmc, 0) \
57 	func(UBIFS, ubifs, 0, rootfs, rootfs) \
58 	func(NAND, nand, 0)
59 
60 #else /* !CONFIG_MTD_RAW_NAND */
61 
62 #define BOOT_TARGET_DEVICES(func) \
63 	func(MMC, mmc, 0) \
64 	func(LEGACY_MMC, legacy_mmc, 0)
65 
66 #endif /* CONFIG_MTD_RAW_NAND */
67 
68 #include <config_distro_bootcmd.h>
69 
70 #include <env/ti/mmc.h>
71 
72 #define CFG_EXTRA_ENV_SETTINGS \
73 	DEFAULT_LINUX_BOOT_ENV \
74 	DEFAULT_MMC_TI_ARGS \
75 	DEFAULT_FIT_TI_ARGS \
76 	"fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0" \
77 	"fdt_high=0xffffffff\0" \
78 	"console=ttyO0,115200n8\0" \
79 	"bootdir=/boot\0" \
80 	"bootenv=uEnv.txt\0" \
81 	"bootfile=zImage\0" \
82 	"bootpart=0:2\0" \
83 	"optargs=\0" \
84 	"nandroot=ubi0:rootfs ubi.mtd=rootfs rw noinitrd\0" \
85 	"nandrootfstype=ubifs rootwait\0" \
86 	"nandargs=setenv bootargs console=${console} " \
87 		"${mtdparts} " \
88 		"${optargs} " \
89 		"root=${nandroot} " \
90 		"rootfstype=${nandrootfstype}\0" \
91 	"nandboot=if nand read ${loadaddr} kernel && nand read ${fdtaddr} dtb; then " \
92 			"echo Booting uImage from NAND MTD 'kernel' partition ...; " \
93 			"run nandargs; " \
94 			"bootm ${loadaddr} - ${fdtaddr}; " \
95 		"fi\0" \
96 	BOOTENV
97 
98 #endif /* __CONFIG_H */
99