blob: 9987484a0065aeeb54acc0d23a17475e62ecf91a [file] [log] [blame]
Tom Rini10e47792018-05-06 17:58:06 -04001/* SPDX-License-Identifier: GPL-2.0+ */
Bo Shen60f3dd32013-05-12 22:40:54 +00002/*
3 * Configuation settings for the SAMA5D3xEK board.
4 *
5 * Copyright (C) 2012 - 2013 Atmel
6 *
7 * based on at91sam9m10g45ek.h by:
8 * Stelian Pop <stelian@popies.net>
9 * Lead Tech Design <www.leadtechdesign.com>
Bo Shen60f3dd32013-05-12 22:40:54 +000010 */
11
12#ifndef __CONFIG_H
13#define __CONFIG_H
14
Wu, Josh42587542015-03-30 14:51:19 +080015#include "at91-sama5_common.h"
Bo Shen60f3dd32013-05-12 22:40:54 +000016
Bo Shen60f3dd32013-05-12 22:40:54 +000017/*
18 * This needs to be defined for the OHCI code to work but it is defined as
19 * ATMEL_ID_UHPHS in the CPU specific header files.
20 */
Wenyou Yangd19b9012017-09-14 11:07:42 +080021#define ATMEL_ID_UHP 32
Bo Shen60f3dd32013-05-12 22:40:54 +000022
23/*
24 * Specify the clock enable bit in the PMC_SCER register.
25 */
Wenyou Yangd19b9012017-09-14 11:07:42 +080026#define ATMEL_PMC_UHP (1 << 6)
Bo Shen60f3dd32013-05-12 22:40:54 +000027
Bo Shen60f3dd32013-05-12 22:40:54 +000028/* board specific (not enough SRAM) */
29#define CONFIG_SAMA5D3_LCD_BASE 0x23E00000
30
Bo Shenb15f4f62014-07-18 16:43:08 +080031/* NOR flash */
Masahiro Yamada8cea9b52017-02-11 22:43:54 +090032#ifdef CONFIG_MTD_NOR_FLASH
Bo Shenb15f4f62014-07-18 16:43:08 +080033#define CONFIG_FLASH_CFI_DRIVER
34#define CONFIG_SYS_FLASH_CFI
35#define CONFIG_SYS_FLASH_PROTECTION
36#define CONFIG_SYS_FLASH_BASE 0x10000000
37#define CONFIG_SYS_MAX_FLASH_SECT 131
38#define CONFIG_SYS_MAX_FLASH_BANKS 1
Bo Shenb15f4f62014-07-18 16:43:08 +080039#endif
Bo Shen60f3dd32013-05-12 22:40:54 +000040
Bo Shen60f3dd32013-05-12 22:40:54 +000041/* SDRAM */
Wenyou Yangd19b9012017-09-14 11:07:42 +080042#define CONFIG_SYS_SDRAM_BASE 0x20000000
Bo Shen60f3dd32013-05-12 22:40:54 +000043#define CONFIG_SYS_SDRAM_SIZE 0x20000000
44
Bo Shenf92b2982013-11-15 11:12:38 +080045#ifdef CONFIG_SPL_BUILD
Wenyou Yang9a0e91f2017-04-14 08:51:42 +080046#define CONFIG_SYS_INIT_SP_ADDR 0x318000
Bo Shenf92b2982013-11-15 11:12:38 +080047#else
Bo Shen60f3dd32013-05-12 22:40:54 +000048#define CONFIG_SYS_INIT_SP_ADDR \
Wenyou Yang9a0e91f2017-04-14 08:51:42 +080049 (CONFIG_SYS_SDRAM_BASE + 16 * 1024 - GENERATED_GBL_DATA_SIZE)
Bo Shenf92b2982013-11-15 11:12:38 +080050#endif
Bo Shen60f3dd32013-05-12 22:40:54 +000051
52/* SerialFlash */
Bo Shen60f3dd32013-05-12 22:40:54 +000053
54#ifdef CONFIG_CMD_SF
Bo Shen60f3dd32013-05-12 22:40:54 +000055#define CONFIG_SF_DEFAULT_SPEED 30000000
56#endif
57
58/* NAND flash */
Bo Shen60f3dd32013-05-12 22:40:54 +000059#ifdef CONFIG_CMD_NAND
Bo Shen60f3dd32013-05-12 22:40:54 +000060#define CONFIG_SYS_MAX_NAND_DEVICE 1
Wenyou Yangd19b9012017-09-14 11:07:42 +080061#define CONFIG_SYS_NAND_BASE 0x60000000
Bo Shen60f3dd32013-05-12 22:40:54 +000062/* our ALE is AD21 */
63#define CONFIG_SYS_NAND_MASK_ALE (1 << 21)
64/* our CLE is AD22 */
65#define CONFIG_SYS_NAND_MASK_CLE (1 << 22)
66#define CONFIG_SYS_NAND_ONFI_DETECTION
Tom Rini00448d22017-07-28 21:31:42 -040067#endif
Bo Shen60f3dd32013-05-12 22:40:54 +000068/* PMECC & PMERRLOC */
69#define CONFIG_ATMEL_NAND_HWECC
70#define CONFIG_ATMEL_NAND_HW_PMECC
71#define CONFIG_PMECC_CAP 4
72#define CONFIG_PMECC_SECTOR_SIZE 512
Bo Shen60f3dd32013-05-12 22:40:54 +000073
Bo Shen60f3dd32013-05-12 22:40:54 +000074/* USB */
Bo Shen60f3dd32013-05-12 22:40:54 +000075
76#ifdef CONFIG_CMD_USB
Bo Shen4a985df2013-10-21 16:14:00 +080077#define CONFIG_USB_ATMEL_CLK_SEL_UPLL
Bo Shen60f3dd32013-05-12 22:40:54 +000078#define CONFIG_USB_OHCI_NEW
79#define CONFIG_SYS_USB_OHCI_CPU_INIT
80#define CONFIG_SYS_USB_OHCI_REGS_BASE ATMEL_BASE_OHCI
81#define CONFIG_SYS_USB_OHCI_SLOT_NAME "sama5d3"
82#define CONFIG_SYS_USB_OHCI_MAX_ROOT_PORTS 3
Bo Shen60f3dd32013-05-12 22:40:54 +000083#endif
84
Bo Shen60f3dd32013-05-12 22:40:54 +000085#define CONFIG_SYS_LOAD_ADDR 0x22000000 /* load address */
86
Bo Shenf92b2982013-11-15 11:12:38 +080087/* SPL */
Bo Shenf92b2982013-11-15 11:12:38 +080088#define CONFIG_SPL_TEXT_BASE 0x300000
Wenyou Yang9a0e91f2017-04-14 08:51:42 +080089#define CONFIG_SPL_MAX_SIZE 0x18000
Bo Shenf92b2982013-11-15 11:12:38 +080090#define CONFIG_SPL_BSS_START_ADDR 0x20000000
91#define CONFIG_SPL_BSS_MAX_SIZE 0x80000
92#define CONFIG_SYS_SPL_MALLOC_START 0x20080000
93#define CONFIG_SYS_SPL_MALLOC_SIZE 0x80000
94
Bo Shen37a36b32014-03-03 14:47:15 +080095#define CONFIG_SYS_MONITOR_LEN (512 << 10)
96
Wenyou Yange035ea72017-09-14 11:07:44 +080097#ifdef CONFIG_SD_BOOT
Paul Kocialkowski341e8cd2014-11-08 23:14:55 +010098#define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1
Guillaume GARDET602a16c2014-10-15 17:53:11 +020099#define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img"
Bo Shen37a36b32014-03-03 14:47:15 +0800100
Wenyou Yange035ea72017-09-14 11:07:44 +0800101#elif CONFIG_SPI_BOOT
Wenyou Yange035ea72017-09-14 11:07:44 +0800102#define CONFIG_SYS_SPI_U_BOOT_OFFS 0x10000
103
104#elif CONFIG_NAND_BOOT
Bo Shen540c0312014-03-03 14:47:17 +0800105#define CONFIG_SPL_NAND_DRIVERS
106#define CONFIG_SPL_NAND_BASE
Wenyou Yange035ea72017-09-14 11:07:44 +0800107#endif
Bo Shen540c0312014-03-03 14:47:17 +0800108#define CONFIG_SYS_NAND_U_BOOT_OFFS 0x40000
109#define CONFIG_SYS_NAND_5_ADDR_CYCLE
110#define CONFIG_SYS_NAND_PAGE_SIZE 0x800
111#define CONFIG_SYS_NAND_PAGE_COUNT 64
112#define CONFIG_SYS_NAND_OOBSIZE 64
113#define CONFIG_SYS_NAND_BLOCK_SIZE 0x20000
114#define CONFIG_SYS_NAND_BAD_BLOCK_POS 0x0
Andreas Bießmannf52c0192014-05-19 14:23:41 +0200115#define CONFIG_SPL_GENERATE_ATMEL_PMECC_HEADER
Bo Shen540c0312014-03-03 14:47:17 +0800116
Bo Shen60f3dd32013-05-12 22:40:54 +0000117#endif