xref: /openbmc/u-boot/include/configs/cm_t54.h (revision ce2f2d2a)
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_BOOT_DEVICE		0
60 #define CONFIG_SYS_SATA_FAT_BOOT_PARTITION	1
61 
62 #define CONFIG_SCSI
63 #define CONFIG_LIBATA
64 #define CONFIG_SCSI_AHCI
65 #define CONFIG_SCSI_AHCI_PLAT
66 #define CONFIG_SYS_SCSI_MAX_SCSI_ID	1
67 #define CONFIG_SYS_SCSI_MAX_LUN		1
68 #define CONFIG_SYS_SCSI_MAX_DEVICE	(CONFIG_SYS_SCSI_MAX_SCSI_ID * \
69 						CONFIG_SYS_SCSI_MAX_LUN)
70 /* USB UHH support options */
71 #define CONFIG_USB_EHCI
72 #define CONFIG_USB_EHCI_OMAP
73 #define CONFIG_SYS_USB_EHCI_MAX_ROOT_PORTS	3
74 #define CONFIG_EHCI_HCD_INIT_AFTER_RESET
75 
76 #define CONFIG_OMAP_EHCI_PHY2_RESET_GPIO	76 /* HSIC2 HUB #RESET */
77 #define CONFIG_OMAP_EHCI_PHY3_RESET_GPIO	83 /* HSIC3 ETH #RESET */
78 
79 /* Enabled commands */
80 
81 /* EEPROM */
82 #define CONFIG_CMD_EEPROM
83 #define CONFIG_ENV_EEPROM_IS_ON_I2C
84 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN		1
85 #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS	4
86 #define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS	5
87 #define CONFIG_SYS_EEPROM_SIZE			256
88 
89 #define CONFIG_CMD_EEPROM_LAYOUT
90 #define CONFIG_EEPROM_LAYOUT_HELP_STRING "v2, v3"
91 
92 /* USB Networking options */
93 #define CONFIG_USB_HOST_ETHER
94 #define CONFIG_USB_ETHER_SMSC95XX
95 #define CONFIG_USB_ETHER_RNDIS
96 #define CONFIG_USB_ETHER_ASIX
97 #define CONFIG_USB_ETHER_MCS7830
98 
99 /* Max time to hold reset on this board, see doc/README.omap-reset-time */
100 #define CONFIG_OMAP_PLATFORM_RESET_TIME_MAX_USEC	16296
101 
102 /*
103  * Miscellaneous configurable options
104  */
105 #undef CONFIG_SYS_AUTOLOAD
106 #undef CONFIG_EXTRA_ENV_SETTINGS
107 #undef CONFIG_BOOTCOMMAND
108 
109 #define CONFIG_SYS_AUTOLOAD		"no"
110 
111 #define CONFIG_EXTRA_ENV_SETTINGS \
112 	DEFAULT_LINUX_BOOT_ENV \
113 	"baudrate=115200\0" \
114 	"bootdelay=3\0" \
115 	"autoload=no\0" \
116 	"bootscr=bootscr.img\0" \
117 	"fdtfile=omap5-sbc-t54.dtb\0" \
118 	"kernel=zImage-cm-t54\0" \
119 	"ramdisk=ramdisk-cm-t54.img\0" \
120 	"console=ttyO3\0" \
121 	"ramdisksize=16384\0" \
122 	"mmcdev=0\0" \
123 	"mmcroot=/dev/mmcblk1p2\0" \
124 	"mmcargs=setenv bootargs console=${console} " \
125 		"root=${mmcroot} rw rootwait\0" \
126 	"ramroot=/dev/ram0\0" \
127 	"ramargs=setenv bootargs console=${console} " \
128 		"root=${ramroot} ramdisk_size=${ramdisksize} rw\0" \
129 	"mmcloadkernel=load mmc ${mmcdev} ${loadaddr} ${kernel}\0" \
130 	"mmcloadfdt=load mmc ${mmcdev} ${fdtaddr} ${fdtfile}\0" \
131 	"mmcloadramdisk=load mmc ${mmcdev} ${rdaddr} ${ramdisk}\0" \
132 	"mmcloadbootscript=load mmc ${mmcdev} ${loadaddr} ${bootsrc}\0" \
133 	"mmcbootscript=echo Running bootscript from mmc${mmcdev}...; " \
134 			"source ${loadaddr}\0" \
135 	"mmcbootlinux=echo Booting from mmc${mmcdev} ...; " \
136 			"bootz ${loadaddr} ${rdaddr} ${fdtaddr}\0" \
137 	"mmcboot=if mmc dev ${mmcdev} && mmc rescan; then " \
138 			"if run mmcloadbootscript; " \
139 				"then run mmcbootscript; " \
140 			"fi; " \
141 			"if run mmcloadkernel; then " \
142 				"if run mmcloadfdt; then " \
143 					"if run mmcloadramdisk; then " \
144 						"run ramargs; " \
145 						"run mmcbootlinux; " \
146 					"fi; " \
147 					"run mmcargs; " \
148 					"setenv rdaddr - ; " \
149 					"run mmcbootlinux; " \
150 				"fi; " \
151 			"fi; " \
152 		"fi;\0"
153 
154 #define CONFIG_BOOTCOMMAND \
155 	"bootcmd=run mmcboot || setenv mmcdev 1; setenv mmcroot /dev/mmcblk0p2; run mmcboot;"
156 
157 #endif /* __CONFIG_CM_T54_H */
158