blob: d5e6b7f4e22ca6b61c0f0641fc04dc96b7b19957 [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 */
42#define CONFIG_NR_DRAM_BANKS 1
Wenyou Yangd19b9012017-09-14 11:07:42 +080043#define CONFIG_SYS_SDRAM_BASE 0x20000000
Bo Shen60f3dd32013-05-12 22:40:54 +000044#define CONFIG_SYS_SDRAM_SIZE 0x20000000
45
Bo Shenf92b2982013-11-15 11:12:38 +080046#ifdef CONFIG_SPL_BUILD
Wenyou Yang9a0e91f2017-04-14 08:51:42 +080047#define CONFIG_SYS_INIT_SP_ADDR 0x318000
Bo Shenf92b2982013-11-15 11:12:38 +080048#else
Bo Shen60f3dd32013-05-12 22:40:54 +000049#define CONFIG_SYS_INIT_SP_ADDR \
Wenyou Yang9a0e91f2017-04-14 08:51:42 +080050 (CONFIG_SYS_SDRAM_BASE + 16 * 1024 - GENERATED_GBL_DATA_SIZE)
Bo Shenf92b2982013-11-15 11:12:38 +080051#endif
Bo Shen60f3dd32013-05-12 22:40:54 +000052
53/* SerialFlash */
Bo Shen60f3dd32013-05-12 22:40:54 +000054
55#ifdef CONFIG_CMD_SF
Bo Shen60f3dd32013-05-12 22:40:54 +000056#define CONFIG_SF_DEFAULT_SPEED 30000000
57#endif
58
59/* NAND flash */
Bo Shen60f3dd32013-05-12 22:40:54 +000060#ifdef CONFIG_CMD_NAND
Bo Shen60f3dd32013-05-12 22:40:54 +000061#define CONFIG_NAND_ATMEL
62#define CONFIG_SYS_MAX_NAND_DEVICE 1
Wenyou Yangd19b9012017-09-14 11:07:42 +080063#define CONFIG_SYS_NAND_BASE 0x60000000
Bo Shen60f3dd32013-05-12 22:40:54 +000064/* our ALE is AD21 */
65#define CONFIG_SYS_NAND_MASK_ALE (1 << 21)
66/* our CLE is AD22 */
67#define CONFIG_SYS_NAND_MASK_CLE (1 << 22)
68#define CONFIG_SYS_NAND_ONFI_DETECTION
Tom Rini00448d22017-07-28 21:31:42 -040069#endif
Bo Shen60f3dd32013-05-12 22:40:54 +000070/* PMECC & PMERRLOC */
71#define CONFIG_ATMEL_NAND_HWECC
72#define CONFIG_ATMEL_NAND_HW_PMECC
73#define CONFIG_PMECC_CAP 4
74#define CONFIG_PMECC_SECTOR_SIZE 512
Bo Shen60f3dd32013-05-12 22:40:54 +000075
Bo Shen60f3dd32013-05-12 22:40:54 +000076/* USB */
Bo Shen60f3dd32013-05-12 22:40:54 +000077
78#ifdef CONFIG_CMD_USB
Bo Shen4a985df2013-10-21 16:14:00 +080079#define CONFIG_USB_ATMEL_CLK_SEL_UPLL
Bo Shen60f3dd32013-05-12 22:40:54 +000080#define CONFIG_USB_OHCI_NEW
81#define CONFIG_SYS_USB_OHCI_CPU_INIT
82#define CONFIG_SYS_USB_OHCI_REGS_BASE ATMEL_BASE_OHCI
83#define CONFIG_SYS_USB_OHCI_SLOT_NAME "sama5d3"
84#define CONFIG_SYS_USB_OHCI_MAX_ROOT_PORTS 3
Bo Shen60f3dd32013-05-12 22:40:54 +000085#endif
86
Bo Shen60f3dd32013-05-12 22:40:54 +000087#define CONFIG_SYS_LOAD_ADDR 0x22000000 /* load address */
88
Bo Shenf92b2982013-11-15 11:12:38 +080089/* SPL */
Bo Shenf92b2982013-11-15 11:12:38 +080090#define CONFIG_SPL_TEXT_BASE 0x300000
Wenyou Yang9a0e91f2017-04-14 08:51:42 +080091#define CONFIG_SPL_MAX_SIZE 0x18000
Bo Shenf92b2982013-11-15 11:12:38 +080092#define CONFIG_SPL_BSS_START_ADDR 0x20000000
93#define CONFIG_SPL_BSS_MAX_SIZE 0x80000
94#define CONFIG_SYS_SPL_MALLOC_START 0x20080000
95#define CONFIG_SYS_SPL_MALLOC_SIZE 0x80000
96
Bo Shen37a36b32014-03-03 14:47:15 +080097#define CONFIG_SYS_MONITOR_LEN (512 << 10)
98
Wenyou Yange035ea72017-09-14 11:07:44 +080099#ifdef CONFIG_SD_BOOT
Paul Kocialkowski341e8cd2014-11-08 23:14:55 +0100100#define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1
Guillaume GARDET602a16c2014-10-15 17:53:11 +0200101#define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img"
Bo Shen37a36b32014-03-03 14:47:15 +0800102
Wenyou Yange035ea72017-09-14 11:07:44 +0800103#elif CONFIG_SPI_BOOT
Wenyou Yange035ea72017-09-14 11:07:44 +0800104#define CONFIG_SYS_SPI_U_BOOT_OFFS 0x10000
105
106#elif CONFIG_NAND_BOOT
Bo Shen540c0312014-03-03 14:47:17 +0800107#define CONFIG_SPL_NAND_DRIVERS
108#define CONFIG_SPL_NAND_BASE
Wenyou Yange035ea72017-09-14 11:07:44 +0800109#endif
Bo Shen540c0312014-03-03 14:47:17 +0800110#define CONFIG_SYS_NAND_U_BOOT_OFFS 0x40000
111#define CONFIG_SYS_NAND_5_ADDR_CYCLE
112#define CONFIG_SYS_NAND_PAGE_SIZE 0x800
113#define CONFIG_SYS_NAND_PAGE_COUNT 64
114#define CONFIG_SYS_NAND_OOBSIZE 64
115#define CONFIG_SYS_NAND_BLOCK_SIZE 0x20000
116#define CONFIG_SYS_NAND_BAD_BLOCK_POS 0x0
Andreas Bießmannf52c0192014-05-19 14:23:41 +0200117#define CONFIG_SPL_GENERATE_ATMEL_PMECC_HEADER
Bo Shen540c0312014-03-03 14:47:17 +0800118
Bo Shen60f3dd32013-05-12 22:40:54 +0000119#endif