tegra: cros_ec: Add tegra support for Chrome OS EC
[platform/kernel/u-boot.git] / include / configs / tegra-common-post.h
1 /*
2  * (C) Copyright 2010-2012
3  * NVIDIA Corporation <www.nvidia.com>
4  *
5  * SPDX-License-Identifier:     GPL-2.0+
6  */
7
8 #ifndef __TEGRA_COMMON_POST_H
9 #define __TEGRA_COMMON_POST_H
10
11 #ifndef CONFIG_SPL_BUILD
12 #define BOOT_TARGET_DEVICES(func) \
13         func(MMC, mmc, 1) \
14         func(MMC, mmc, 0) \
15         func(USB, usb, 0) \
16         func(PXE, pxe, na) \
17         func(DHCP, dhcp, na)
18 #include <config_distro_bootcmd.h>
19 #else
20 #define BOOTENV
21 #endif
22
23 #ifdef CONFIG_TEGRA_KEYBOARD
24 #define STDIN_KBD_KBC ",tegra-kbc"
25 #else
26 #define STDIN_KBD_KBC ""
27 #endif
28
29 #ifdef CONFIG_USB_KEYBOARD
30 #define STDIN_KBD_USB ",usbkbd"
31 #define CONFIG_SYS_USB_EVENT_POLL
32 #define CONFIG_PREBOOT                  "usb start"
33 #else
34 #define STDIN_KBD_USB ""
35 #endif
36
37 #ifdef CONFIG_LCD
38 #define STDOUT_LCD ",lcd"
39 #else
40 #define STDOUT_LCD ""
41 #endif
42
43 #ifdef CONFIG_CROS_EC_KEYB
44 #define STDOUT_CROS_EC  ",cros-ec-keyb"
45 #else
46 #define STDOUT_CROS_EC  ""
47 #endif
48
49 #define TEGRA_DEVICE_SETTINGS \
50         "stdin=serial" STDIN_KBD_KBC STDIN_KBD_USB STDOUT_CROS_EC "\0" \
51         "stdout=serial" STDOUT_LCD "\0" \
52         "stderr=serial" STDOUT_LCD "\0" \
53         ""
54
55 #ifndef BOARD_EXTRA_ENV_SETTINGS
56 #define BOARD_EXTRA_ENV_SETTINGS
57 #endif
58
59 #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR
60
61 #define CONFIG_EXTRA_ENV_SETTINGS \
62         TEGRA_DEVICE_SETTINGS \
63         MEM_LAYOUT_ENV_SETTINGS \
64         "fdt_high=ffffffff\0" \
65         "initrd_high=ffffffff\0" \
66         BOOTENV \
67         BOARD_EXTRA_ENV_SETTINGS
68
69 #if defined(CONFIG_TEGRA20_SFLASH) || defined(CONFIG_TEGRA20_SLINK) || defined(CONFIG_TEGRA114_SPI)
70 #define CONFIG_TEGRA_SPI
71 #endif
72
73 /* overrides for SPL build here */
74 #ifdef CONFIG_SPL_BUILD
75
76 #define CONFIG_SKIP_LOWLEVEL_INIT
77
78 /* remove I2C support */
79 #ifdef CONFIG_SYS_I2C_TEGRA
80 #undef CONFIG_SYS_I2C_TEGRA
81 #endif
82 #ifdef CONFIG_CMD_I2C
83 #undef CONFIG_CMD_I2C
84 #endif
85
86 /* remove MMC support */
87 #ifdef CONFIG_MMC
88 #undef CONFIG_MMC
89 #endif
90 #ifdef CONFIG_GENERIC_MMC
91 #undef CONFIG_GENERIC_MMC
92 #endif
93 #ifdef CONFIG_TEGRA_MMC
94 #undef CONFIG_TEGRA_MMC
95 #endif
96 #ifdef CONFIG_CMD_MMC
97 #undef CONFIG_CMD_MMC
98 #endif
99
100 /* remove partitions/filesystems */
101 #ifdef CONFIG_DOS_PARTITION
102 #undef CONFIG_DOS_PARTITION
103 #endif
104 #ifdef CONFIG_EFI_PARTITION
105 #undef CONFIG_EFI_PARTITION
106 #endif
107 #ifdef CONFIG_CMD_FS_GENERIC
108 #undef CONFIG_CMD_FS_GENERIC
109 #endif
110 #ifdef CONFIG_CMD_EXT4
111 #undef CONFIG_CMD_EXT4
112 #endif
113 #ifdef CONFIG_CMD_EXT2
114 #undef CONFIG_CMD_EXT2
115 #endif
116 #ifdef CONFIG_CMD_FAT
117 #undef CONFIG_CMD_FAT
118 #endif
119 #ifdef CONFIG_FS_EXT4
120 #undef CONFIG_FS_EXT4
121 #endif
122 #ifdef CONFIG_FS_FAT
123 #undef CONFIG_FS_FAT
124 #endif
125
126 /* remove USB */
127 #ifdef CONFIG_USB_EHCI
128 #undef CONFIG_USB_EHCI
129 #endif
130 #ifdef CONFIG_USB_EHCI_TEGRA
131 #undef CONFIG_USB_EHCI_TEGRA
132 #endif
133 #ifdef CONFIG_USB_STORAGE
134 #undef CONFIG_USB_STORAGE
135 #endif
136 #ifdef CONFIG_CMD_USB
137 #undef CONFIG_CMD_USB
138 #endif
139
140 /* remove part command support */
141 #ifdef CONFIG_PARTITION_UUIDS
142 #undef CONFIG_PARTITION_UUIDS
143 #endif
144
145 #ifdef CONFIG_CMD_PART
146 #undef CONFIG_CMD_PART
147 #endif
148
149 #endif /* CONFIG_SPL_BUILD */
150
151 #endif /* __TEGRA_COMMON_POST_H */