arm: am57xx: Keep environment in eMMC
[platform/kernel/u-boot.git] / include / configs / am57xx_evm.h
1 /*
2  * (C) Copyright 2014
3  * Texas Instruments Incorporated.
4  * Felipe Balbi <balbi@ti.com>
5  *
6  * Configuration settings for the TI Beagle x15 board.
7  * See ti_omap5_common.h for omap5 common settings.
8  *
9  * SPDX-License-Identifier:     GPL-2.0+
10  */
11
12 #ifndef __CONFIG_AM57XX_EVM_H
13 #define __CONFIG_AM57XX_EVM_H
14
15 #include <environment/ti/dfu.h>
16 #include <linux/sizes.h>
17
18 #ifdef CONFIG_SPL_BUILD
19 #define CONFIG_IODELAY_RECALIBRATION
20 #endif
21
22 #define CONFIG_NR_DRAM_BANKS            2
23
24 /* MMC ENV related defines */
25 #define CONFIG_ENV_IS_IN_MMC
26 #define CONFIG_SYS_MMC_ENV_DEV          1               /* eMMC */
27 #define CONFIG_SYS_MMC_ENV_PART         0
28 #define CONFIG_ENV_SIZE                 SZ_128K
29 #define CONFIG_ENV_OFFSET               0x260000
30 #define CONFIG_ENV_OFFSET_REDUND        (CONFIG_ENV_OFFSET + CONFIG_ENV_SIZE)
31 #define CONFIG_SYS_REDUNDAND_ENVIRONMENT
32
33 #define CONSOLEDEV                      "ttyO2"
34 #define CONFIG_SYS_NS16550_COM1         UART1_BASE      /* Base EVM has UART0 */
35 #define CONFIG_SYS_NS16550_COM2         UART2_BASE      /* UART2 */
36 #define CONFIG_SYS_NS16550_COM3         UART3_BASE      /* UART3 */
37
38 #define CONFIG_ENV_EEPROM_IS_ON_I2C
39 #define CONFIG_SYS_I2C_EEPROM_ADDR      0x50    /* Main EEPROM */
40 #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN  2
41
42 #define CONFIG_SYS_OMAP_ABE_SYSCK
43
44 /* Define the default GPT table for eMMC */
45 #define PARTS_DEFAULT \
46         /* Linux partitions */ \
47         "uuid_disk=${uuid_gpt_disk};" \
48         "name=rootfs,start=2MiB,size=-,uuid=${uuid_gpt_rootfs}\0" \
49         /* Android partitions */ \
50         "partitions_android=" \
51         "uuid_disk=${uuid_gpt_disk};" \
52         "name=xloader,start=128K,size=256K,uuid=${uuid_gpt_xloader};" \
53         "name=bootloader,size=1792K,uuid=${uuid_gpt_bootloader};" \
54         "name=environment,size=128K,uuid=${uuid_gpt_environment};" \
55         "name=misc,size=128K,uuid=${uuid_gpt_misc};" \
56         "name=reserved,size=256K,uuid=${uuid_gpt_reserved};" \
57         "name=efs,size=16M,uuid=${uuid_gpt_efs};" \
58         "name=crypto,size=16K,uuid=${uuid_gpt_crypto};" \
59         "name=recovery,size=10M,uuid=${uuid_gpt_recovery};" \
60         "name=boot,size=10M,uuid=${uuid_gpt_boot};" \
61         "name=system,size=768M,uuid=${uuid_gpt_system};" \
62         "name=cache,size=256M,uuid=${uuid_gpt_cache};" \
63         "name=ipu1,size=1M,uuid=${uuid_gpt_ipu1};" \
64         "name=ipu2,size=1M,uuid=${uuid_gpt_ipu2};" \
65         "name=userdata,size=-,uuid=${uuid_gpt_userdata}"
66
67 #define DFUARGS \
68         "dfu_bufsiz=0x10000\0" \
69         DFU_ALT_INFO_MMC \
70         DFU_ALT_INFO_EMMC \
71         DFU_ALT_INFO_RAM \
72
73 #include <configs/ti_omap5_common.h>
74
75 /* Enhance our eMMC support / experience. */
76 #define CONFIG_RANDOM_UUID
77 #define CONFIG_HSMMC2_8BIT
78
79 /* CPSW Ethernet */
80 #define CONFIG_BOOTP_DNS                /* Configurable parts of CMD_DHCP */
81 #define CONFIG_BOOTP_DNS2
82 #define CONFIG_BOOTP_SEND_HOSTNAME
83 #define CONFIG_BOOTP_GATEWAY
84 #define CONFIG_BOOTP_SUBNETMASK
85 #define CONFIG_NET_RETRY_COUNT          10
86 #define CONFIG_DRIVER_TI_CPSW           /* Driver for IP block */
87 #define CONFIG_MII                      /* Required in net/eth.c */
88 #define CONFIG_PHY_GIGE                 /* per-board part of CPSW */
89 #define CONFIG_PHYLIB
90 #define PHY_ANEG_TIMEOUT        8000    /* PHY needs longer aneg time at 1G */
91
92 #define CONFIG_SUPPORT_EMMC_BOOT
93
94 /* USB xHCI HOST */
95 #define CONFIG_USB_XHCI_OMAP
96 #define CONFIG_SYS_USB_XHCI_MAX_ROOT_PORTS 2
97
98 #define CONFIG_OMAP_USB_PHY
99 #define CONFIG_OMAP_USB3PHY1_HOST
100
101 /* SATA */
102 #define CONFIG_SCSI
103 #define CONFIG_LIBATA
104 #define CONFIG_SCSI_AHCI
105 #define CONFIG_SCSI_AHCI_PLAT
106 #define CONFIG_SYS_SCSI_MAX_SCSI_ID     1
107 #define CONFIG_SYS_SCSI_MAX_LUN         1
108 #define CONFIG_SYS_SCSI_MAX_DEVICE      (CONFIG_SYS_SCSI_MAX_SCSI_ID * \
109                                                 CONFIG_SYS_SCSI_MAX_LUN)
110
111 /*
112  * Default to using SPI for environment, etc.
113  * 0x000000 - 0x040000 : QSPI.SPL (256KiB)
114  * 0x040000 - 0x140000 : QSPI.u-boot (1MiB)
115  * 0x140000 - 0x1C0000 : QSPI.u-boot-spl-os (512KiB)
116  * 0x1C0000 - 0x1D0000 : QSPI.u-boot-env (64KiB)
117  * 0x1D0000 - 0x1E0000 : QSPI.u-boot-env.backup1 (64KiB)
118  * 0x1E0000 - 0x9E0000 : QSPI.kernel (8MiB)
119  * 0x9E0000 - 0x2000000 : USERLAND
120  */
121 #define CONFIG_SYS_SPI_KERNEL_OFFS      0x1E0000
122 #define CONFIG_SYS_SPI_ARGS_OFFS        0x140000
123 #define CONFIG_SYS_SPI_ARGS_SIZE        0x80000
124
125 /* SPI SPL */
126 #define CONFIG_TI_EDMA3
127 #define CONFIG_SPL_SPI_LOAD
128 #define CONFIG_SYS_SPI_U_BOOT_OFFS     0x40000
129
130 /* SPI */
131 #undef  CONFIG_OMAP3_SPI
132 #define CONFIG_TI_SPI_MMAP
133 #define CONFIG_SF_DEFAULT_SPEED                76800000
134 #define CONFIG_SF_DEFAULT_MODE                 SPI_MODE_0
135 #define CONFIG_QSPI_QUAD_SUPPORT
136
137 #endif /* __CONFIG_AM57XX_EVM_H */