xref: /openbmc/u-boot/include/configs/cm_t54.h (revision ad5b5801)
1 /*
2  * Config file for Compulab CM-T54 board
3  *
4  * Copyright (C) 2014, Compulab Ltd - http://compulab.co.il/
5  *
6  * Author: Dmitry Lifshitz <lifshitz@compulab.co.il>
7  *
8  * SPDX-License-Identifier:	GPL-2.0+
9  */
10 
11 #ifndef __CONFIG_CM_T54_H
12 #define __CONFIG_CM_T54_H
13 
14 #define CONFIG_CM_T54
15 #define CONFIG_DRAM_2G
16 
17 #include <configs/ti_omap5_common.h>
18 
19 #undef CONFIG_SPL_OS_BOOT
20 
21 /* EEPROM related defines */
22 #define CONFIG_SYS_I2C_OMAP34XX
23 #define CONFIG_SYS_I2C_EEPROM_ADDR	0x50
24 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN	1
25 #define CONFIG_SYS_I2C_EEPROM_BUS	0
26 
27 /* Enable SD/MMC CD and WP GPIOs */
28 #define OMAP_HSMMC_USE_GPIO
29 
30 /* UART setup */
31 #define CONFIG_CONS_INDEX		4
32 #define CONFIG_SYS_NS16550_COM4		UART4_BASE
33 #define CONFIG_BAUDRATE			115200
34 
35 /* SD/MMC RAW boot */
36 #undef CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR
37 #undef CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS
38 
39 #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR	0x200 /* 0x40000 - 256 KB */
40 #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS	0x300 /* 384 KB */
41 
42 /* MMC ENV related defines */
43 #undef CONFIG_ENV_OFFSET
44 #undef CONFIG_ENV_SIZE
45 
46 #define CONFIG_ENV_IS_IN_MMC
47 #define CONFIG_SYS_MMC_ENV_DEV		1		/* SLOT2: eMMC(1) */
48 #define CONFIG_SYS_MMC_ENV_PART		0
49 #define CONFIG_ENV_OFFSET		0xc0000		/* (in bytes) 768 KB */
50 #define CONFIG_ENV_SIZE			(16 << 10)	/* 16 KB */
51 #define CONFIG_ENV_OFFSET_REDUND	(CONFIG_ENV_OFFSET + CONFIG_ENV_SIZE)
52 #define CONFIG_SYS_REDUNDAND_ENVIRONMENT
53 
54 /* Enhance our eMMC support / experience. */
55 #define CONFIG_HSMMC2_8BIT
56 #define CONFIG_SUPPORT_EMMC_BOOT
57 
58 /* SATA Boot related defines */
59 #define CONFIG_SPL_SATA_SUPPORT
60 #define CONFIG_SPL_SATA_BOOT_DEVICE		0
61 #define CONFIG_SYS_SATA_FAT_BOOT_PARTITION	1
62 
63 #define CONFIG_SCSI
64 #define CONFIG_LIBATA
65 #define CONFIG_SCSI_AHCI
66 #define CONFIG_SCSI_AHCI_PLAT
67 #define CONFIG_SYS_SCSI_MAX_SCSI_ID	1
68 #define CONFIG_SYS_SCSI_MAX_LUN		1
69 #define CONFIG_SYS_SCSI_MAX_DEVICE	(CONFIG_SYS_SCSI_MAX_SCSI_ID * \
70 						CONFIG_SYS_SCSI_MAX_LUN)
71 /* USB UHH support options */
72 #define CONFIG_USB_HOST
73 #define CONFIG_USB_EHCI
74 #define CONFIG_USB_EHCI_OMAP
75 #define CONFIG_USB_STORAGE
76 #define CONFIG_SYS_USB_EHCI_MAX_ROOT_PORTS	3
77 #define CONFIG_EHCI_HCD_INIT_AFTER_RESET
78 
79 #define CONFIG_OMAP_EHCI_PHY2_RESET_GPIO	76 /* HSIC2 HUB #RESET */
80 #define CONFIG_OMAP_EHCI_PHY3_RESET_GPIO	83 /* HSIC3 ETH #RESET */
81 
82 /* Enabled commands */
83 
84 /* EEPROM */
85 #define CONFIG_CMD_EEPROM
86 #define CONFIG_ENV_EEPROM_IS_ON_I2C
87 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN		1
88 #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS	4
89 #define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS	5
90 #define CONFIG_SYS_EEPROM_SIZE			256
91 
92 #define CONFIG_CMD_EEPROM_LAYOUT
93 #define CONFIG_EEPROM_LAYOUT_HELP_STRING "v2, v3"
94 
95 /* USB Networking options */
96 #define CONFIG_USB_HOST_ETHER
97 #define CONFIG_USB_ETHER_SMSC95XX
98 #define CONFIG_USB_ETHER_RNDIS
99 #define CONFIG_USB_ETHER_ASIX
100 #define CONFIG_USB_ETHER_MCS7830
101 
102 /* Max time to hold reset on this board, see doc/README.omap-reset-time */
103 #define CONFIG_OMAP_PLATFORM_RESET_TIME_MAX_USEC	16296
104 
105 /*
106  * Miscellaneous configurable options
107  */
108 #undef CONFIG_SYS_AUTOLOAD
109 #undef CONFIG_EXTRA_ENV_SETTINGS
110 #undef CONFIG_BOOTCOMMAND
111 #undef CONFIG_BOOTDELAY
112 
113 #define CONFIG_BOOTDELAY		3
114 #define CONFIG_SYS_AUTOLOAD		"no"
115 
116 #define CONFIG_EXTRA_ENV_SETTINGS \
117 	DEFAULT_LINUX_BOOT_ENV \
118 	"baudrate=115200\0" \
119 	"bootdelay=3\0" \
120 	"autoload=no\0" \
121 	"bootscr=bootscr.img\0" \
122 	"fdtfile=omap5-sbc-t54.dtb\0" \
123 	"kernel=zImage-cm-t54\0" \
124 	"ramdisk=ramdisk-cm-t54.img\0" \
125 	"console=ttyO3\0" \
126 	"ramdisksize=16384\0" \
127 	"mmcdev=0\0" \
128 	"mmcroot=/dev/mmcblk1p2\0" \
129 	"mmcargs=setenv bootargs console=${console} " \
130 		"root=${mmcroot} rw rootwait\0" \
131 	"ramroot=/dev/ram0\0" \
132 	"ramargs=setenv bootargs console=${console} " \
133 		"root=${ramroot} ramdisk_size=${ramdisksize} rw\0" \
134 	"mmcloadkernel=load mmc ${mmcdev} ${loadaddr} ${kernel}\0" \
135 	"mmcloadfdt=load mmc ${mmcdev} ${fdtaddr} ${fdtfile}\0" \
136 	"mmcloadramdisk=load mmc ${mmcdev} ${rdaddr} ${ramdisk}\0" \
137 	"mmcloadbootscript=load mmc ${mmcdev} ${loadaddr} ${bootsrc}\0" \
138 	"mmcbootscript=echo Running bootscript from mmc${mmcdev}...; " \
139 			"source ${loadaddr}\0" \
140 	"mmcbootlinux=echo Booting from mmc${mmcdev} ...; " \
141 			"bootz ${loadaddr} ${rdaddr} ${fdtaddr}\0" \
142 	"mmcboot=if mmc dev ${mmcdev} && mmc rescan; then " \
143 			"if run mmcloadbootscript; " \
144 				"then run mmcbootscript; " \
145 			"fi; " \
146 			"if run mmcloadkernel; then " \
147 				"if run mmcloadfdt; then " \
148 					"if run mmcloadramdisk; then " \
149 						"run ramargs; " \
150 						"run mmcbootlinux; " \
151 					"fi; " \
152 					"run mmcargs; " \
153 					"setenv rdaddr - ; " \
154 					"run mmcbootlinux; " \
155 				"fi; " \
156 			"fi; " \
157 		"fi;\0"
158 
159 #define CONFIG_BOOTCOMMAND \
160 	"bootcmd=run mmcboot || setenv mmcdev 1; setenv mmcroot /dev/mmcblk0p2; run mmcboot;"
161 
162 #endif /* __CONFIG_CM_T54_H */
163