blob: 9ec1e76052685855713fc27d0b0b1ec7fd57a11e [file] [log] [blame]
Bo Shen60f3dd32013-05-12 22:40:54 +00001/*
2 * Configuation settings for the SAMA5D3xEK board.
3 *
4 * Copyright (C) 2012 - 2013 Atmel
5 *
6 * based on at91sam9m10g45ek.h by:
7 * Stelian Pop <stelian@popies.net>
8 * Lead Tech Design <www.leadtechdesign.com>
9 *
Wolfgang Denkd79de1d2013-07-08 09:37:19 +020010 * SPDX-License-Identifier: GPL-2.0+
Bo Shen60f3dd32013-05-12 22:40:54 +000011 */
12
13#ifndef __CONFIG_H
14#define __CONFIG_H
15
Wu, Josh42587542015-03-30 14:51:19 +080016#include "at91-sama5_common.h"
Bo Shen60f3dd32013-05-12 22:40:54 +000017
Wu, Josh3c0c6602015-08-19 19:11:19 +080018#define CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
19
Bo Shen60f3dd32013-05-12 22:40:54 +000020/*
21 * This needs to be defined for the OHCI code to work but it is defined as
22 * ATMEL_ID_UHPHS in the CPU specific header files.
23 */
Wenyou Yangd19b9012017-09-14 11:07:42 +080024#define ATMEL_ID_UHP 32
Bo Shen60f3dd32013-05-12 22:40:54 +000025
26/*
27 * Specify the clock enable bit in the PMC_SCER register.
28 */
Wenyou Yangd19b9012017-09-14 11:07:42 +080029#define ATMEL_PMC_UHP (1 << 6)
Bo Shen60f3dd32013-05-12 22:40:54 +000030
Bo Shen60f3dd32013-05-12 22:40:54 +000031/* board specific (not enough SRAM) */
32#define CONFIG_SAMA5D3_LCD_BASE 0x23E00000
33
Bo Shenb15f4f62014-07-18 16:43:08 +080034/* NOR flash */
Masahiro Yamada8cea9b52017-02-11 22:43:54 +090035#ifdef CONFIG_MTD_NOR_FLASH
Bo Shenb15f4f62014-07-18 16:43:08 +080036#define CONFIG_FLASH_CFI_DRIVER
37#define CONFIG_SYS_FLASH_CFI
38#define CONFIG_SYS_FLASH_PROTECTION
39#define CONFIG_SYS_FLASH_BASE 0x10000000
40#define CONFIG_SYS_MAX_FLASH_SECT 131
41#define CONFIG_SYS_MAX_FLASH_BANKS 1
Bo Shenb15f4f62014-07-18 16:43:08 +080042#endif
Bo Shen60f3dd32013-05-12 22:40:54 +000043
Bo Shen60f3dd32013-05-12 22:40:54 +000044/* SDRAM */
45#define CONFIG_NR_DRAM_BANKS 1
Wenyou Yangd19b9012017-09-14 11:07:42 +080046#define CONFIG_SYS_SDRAM_BASE 0x20000000
Bo Shen60f3dd32013-05-12 22:40:54 +000047#define CONFIG_SYS_SDRAM_SIZE 0x20000000
48
Bo Shenf92b2982013-11-15 11:12:38 +080049#ifdef CONFIG_SPL_BUILD
Wenyou Yang9a0e91f2017-04-14 08:51:42 +080050#define CONFIG_SYS_INIT_SP_ADDR 0x318000
Bo Shenf92b2982013-11-15 11:12:38 +080051#else
Bo Shen60f3dd32013-05-12 22:40:54 +000052#define CONFIG_SYS_INIT_SP_ADDR \
Wenyou Yang9a0e91f2017-04-14 08:51:42 +080053 (CONFIG_SYS_SDRAM_BASE + 16 * 1024 - GENERATED_GBL_DATA_SIZE)
Bo Shenf92b2982013-11-15 11:12:38 +080054#endif
Bo Shen60f3dd32013-05-12 22:40:54 +000055
56/* SerialFlash */
Bo Shen60f3dd32013-05-12 22:40:54 +000057
58#ifdef CONFIG_CMD_SF
Bo Shen60f3dd32013-05-12 22:40:54 +000059#define CONFIG_SF_DEFAULT_SPEED 30000000
60#endif
61
62/* NAND flash */
Bo Shen60f3dd32013-05-12 22:40:54 +000063#ifdef CONFIG_CMD_NAND
Bo Shen60f3dd32013-05-12 22:40:54 +000064#define CONFIG_NAND_ATMEL
65#define CONFIG_SYS_MAX_NAND_DEVICE 1
Wenyou Yangd19b9012017-09-14 11:07:42 +080066#define CONFIG_SYS_NAND_BASE 0x60000000
Bo Shen60f3dd32013-05-12 22:40:54 +000067/* our ALE is AD21 */
68#define CONFIG_SYS_NAND_MASK_ALE (1 << 21)
69/* our CLE is AD22 */
70#define CONFIG_SYS_NAND_MASK_CLE (1 << 22)
71#define CONFIG_SYS_NAND_ONFI_DETECTION
Tom Rini00448d22017-07-28 21:31:42 -040072#endif
Bo Shen60f3dd32013-05-12 22:40:54 +000073/* PMECC & PMERRLOC */
74#define CONFIG_ATMEL_NAND_HWECC
75#define CONFIG_ATMEL_NAND_HW_PMECC
76#define CONFIG_PMECC_CAP 4
77#define CONFIG_PMECC_SECTOR_SIZE 512
Bo Shen60f3dd32013-05-12 22:40:54 +000078
Bo Shen60f3dd32013-05-12 22:40:54 +000079/* USB */
Bo Shen60f3dd32013-05-12 22:40:54 +000080
81#ifdef CONFIG_CMD_USB
Bo Shen4a985df2013-10-21 16:14:00 +080082#define CONFIG_USB_ATMEL_CLK_SEL_UPLL
Bo Shen60f3dd32013-05-12 22:40:54 +000083#define CONFIG_USB_OHCI_NEW
84#define CONFIG_SYS_USB_OHCI_CPU_INIT
85#define CONFIG_SYS_USB_OHCI_REGS_BASE ATMEL_BASE_OHCI
86#define CONFIG_SYS_USB_OHCI_SLOT_NAME "sama5d3"
87#define CONFIG_SYS_USB_OHCI_MAX_ROOT_PORTS 3
Bo Shen60f3dd32013-05-12 22:40:54 +000088#endif
89
Bo Shen60f3dd32013-05-12 22:40:54 +000090#define CONFIG_SYS_LOAD_ADDR 0x22000000 /* load address */
91
Bo Shenf92b2982013-11-15 11:12:38 +080092/* SPL */
Bo Shenf92b2982013-11-15 11:12:38 +080093#define CONFIG_SPL_FRAMEWORK
94#define CONFIG_SPL_TEXT_BASE 0x300000
Wenyou Yang9a0e91f2017-04-14 08:51:42 +080095#define CONFIG_SPL_MAX_SIZE 0x18000
Bo Shenf92b2982013-11-15 11:12:38 +080096#define CONFIG_SPL_BSS_START_ADDR 0x20000000
97#define CONFIG_SPL_BSS_MAX_SIZE 0x80000
98#define CONFIG_SYS_SPL_MALLOC_START 0x20080000
99#define CONFIG_SYS_SPL_MALLOC_SIZE 0x80000
100
Bo Shen37a36b32014-03-03 14:47:15 +0800101#define CONFIG_SYS_MONITOR_LEN (512 << 10)
102
Wenyou Yange035ea72017-09-14 11:07:44 +0800103#ifdef CONFIG_SD_BOOT
Paul Kocialkowski341e8cd2014-11-08 23:14:55 +0100104#define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1
Guillaume GARDET602a16c2014-10-15 17:53:11 +0200105#define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img"
Bo Shen37a36b32014-03-03 14:47:15 +0800106
Wenyou Yange035ea72017-09-14 11:07:44 +0800107#elif CONFIG_SPI_BOOT
108#define CONFIG_SPL_SPI_LOAD
109#define CONFIG_SYS_SPI_U_BOOT_OFFS 0x10000
110
111#elif CONFIG_NAND_BOOT
Bo Shen540c0312014-03-03 14:47:17 +0800112#define CONFIG_SPL_NAND_DRIVERS
113#define CONFIG_SPL_NAND_BASE
Wenyou Yange035ea72017-09-14 11:07:44 +0800114#endif
Bo Shen540c0312014-03-03 14:47:17 +0800115#define CONFIG_SYS_NAND_U_BOOT_OFFS 0x40000
116#define CONFIG_SYS_NAND_5_ADDR_CYCLE
117#define CONFIG_SYS_NAND_PAGE_SIZE 0x800
118#define CONFIG_SYS_NAND_PAGE_COUNT 64
119#define CONFIG_SYS_NAND_OOBSIZE 64
120#define CONFIG_SYS_NAND_BLOCK_SIZE 0x20000
121#define CONFIG_SYS_NAND_BAD_BLOCK_POS 0x0
Andreas Bießmannf52c0192014-05-19 14:23:41 +0200122#define CONFIG_SPL_GENERATE_ATMEL_PMECC_HEADER
Bo Shen540c0312014-03-03 14:47:17 +0800123
Bo Shen60f3dd32013-05-12 22:40:54 +0000124#endif