1 /*
2  * (C) Copyright 2008-2010
3  * Gražvydas Ignotas <notasas@gmail.com>
4  *
5  * Configuration settings for the OMAP3 Pandora.
6  *
7  * SPDX-License-Identifier:	GPL-2.0+
8  */
9 
10 #ifndef __CONFIG_H
11 #define __CONFIG_H
12 
13 #define CONFIG_NR_DRAM_BANKS	2	/* CS1 may or may not be populated */
14 #define CONFIG_NAND
15 
16 /* override base for compatibility with MLO the device ships with */
17 #define CONFIG_SYS_TEXT_BASE		0x80008000
18 
19 #include <configs/ti_omap3_common.h>
20 
21 #define CONFIG_MISC_INIT_R
22 #define CONFIG_REVISION_TAG		1
23 
24 #define CONFIG_ENV_SIZE			(128 << 10)	/* 128 KiB */
25 
26 #define CONFIG_SYS_DEVICE_NULLDEV	1
27 
28 /*
29  * Hardware drivers
30  */
31 
32 /* I2C Support */
33 #define CONFIG_SYS_I2C_OMAP34XX
34 
35 /* TWL4030 LED */
36 #define CONFIG_TWL4030_LED
37 
38 /* Initialize GPIOs by default */
39 #define CONFIG_OMAP3_GPIO_4	/* GPIO96..127 is in GPIO Bank 4 */
40 #define CONFIG_OMAP3_GPIO_6	/* GPIO160..191 is in GPIO Bank 6 */
41 
42 /*
43  * NS16550 Configuration
44  */
45 #undef CONFIG_SYS_NS16550_CLK
46 #define CONFIG_SYS_NS16550_SERIAL
47 #define CONFIG_SYS_NS16550_REG_SIZE	(-4)
48 #define CONFIG_SYS_NS16550_CLK		V_NS16550_CLK
49 #define CONFIG_SYS_NS16550_COM3		OMAP34XX_UART3
50 #define CONFIG_SERIAL3			3
51 
52 /* commands to include */
53 
54 /*
55  * Board NAND Info.
56  */
57 #define CONFIG_SYS_NAND_ADDR		NAND_BASE	/* physical address */
58 							/* to access nand */
59 #define CONFIG_SYS_NAND_BUSWIDTH_16BIT
60 #define CONFIG_NAND_OMAP_ECCSCHEME	OMAP_ECC_HAM1_CODE_SW
61 #define CONFIG_SYS_NAND_PAGE_SIZE	2048
62 #define CONFIG_SYS_NAND_OOBSIZE		64
63 
64 #ifdef CONFIG_NAND
65 #define CONFIG_CMD_UBIFS	/* Read-only UBI volume operations */
66 
67 #define CONFIG_RBTREE		/* required by CONFIG_CMD_UBI */
68 #define CONFIG_LZO		/* required by CONFIG_CMD_UBIFS */
69 
70 #define CONFIG_MTD_PARTITIONS	/* required for UBI partition support */
71 
72 #define MTDIDS_DEFAULT			"nand0=omap2-nand.0"
73 #define MTDPARTS_DEFAULT		"mtdparts=omap2-nand.0:512k(xloader),"\
74 					"1920k(uboot),128k(uboot-env),"\
75 					"10m(boot),-(rootfs)"
76 #else
77 #define MTDPARTS_DEFAULT
78 #endif
79 
80 
81 #define CONFIG_BOOTCOMMAND \
82 	"run distro_bootcmd; " \
83 	"setenv bootargs ${bootargs_ubi}; " \
84 	"if mmc rescan && load mmc 0:1 ${loadaddr} autoboot.scr; then " \
85 		"source ${loadaddr}; " \
86 	"fi; " \
87 	"ubi part boot && ubifsmount ubi:boot && " \
88 		"ubifsload ${loadaddr} uImage && bootm ${loadaddr}"
89 
90 #define BOOT_TARGET_DEVICES(func) \
91 	func(MMC, mmc, 0) \
92 
93 #include <config_distro_bootcmd.h>
94 
95 #define CONFIG_EXTRA_ENV_SETTINGS \
96 	DEFAULT_LINUX_BOOT_ENV \
97 	"usbtty=cdc_acm\0" \
98 	"bootargs_ubi=ubi.mtd=4 ubi.mtd=3 root=ubi0:rootfs rootfstype=ubifs " \
99 		"rw rootflags=bulk_read vram=6272K omapfb.vram=0:3000K\0" \
100 	"mtdparts=" MTDPARTS_DEFAULT "\0" \
101 	BOOTENV \
102 
103 /* memtest works on */
104 #define CONFIG_SYS_MEMTEST_START	(OMAP34XX_SDRC_CS0)
105 #define CONFIG_SYS_MEMTEST_END		(OMAP34XX_SDRC_CS0 + \
106 					0x01F00000) /* 31MB */
107 
108 #if defined(CONFIG_NAND)
109 #define CONFIG_SYS_FLASH_BASE		NAND_BASE
110 #endif
111 
112 /* Monitor at start of flash */
113 #define CONFIG_SYS_MONITOR_BASE		CONFIG_SYS_FLASH_BASE
114 
115 #define CONFIG_ENV_IS_IN_NAND		1
116 #define SMNAND_ENV_OFFSET		0x260000 /* environment starts here */
117 
118 #define CONFIG_SYS_ENV_SECT_SIZE	(128 << 10)	/* 128 KiB */
119 #define CONFIG_ENV_OFFSET		SMNAND_ENV_OFFSET
120 #define CONFIG_ENV_ADDR			SMNAND_ENV_OFFSET
121 
122 #endif				/* __CONFIG_H */
123