blob: 82e1a16a4099ea1cb93359776ac25e7637dc7368 [file] [log] [blame]
Tom Rini83d290c2018-05-06 17:58:06 -04001/* SPDX-License-Identifier: GPL-2.0+ */
Bo Shen3225f342013-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 Shen3225f342013-05-12 22:40:54 +000010 */
11
12#ifndef __CONFIG_H
13#define __CONFIG_H
14
Wu, Joshb2d387b2015-03-30 14:51:19 +080015#include "at91-sama5_common.h"
Bo Shen3225f342013-05-12 22:40:54 +000016
Bo Shen3225f342013-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 Yange61ed482017-09-14 11:07:42 +080021#define ATMEL_ID_UHP 32
Bo Shen3225f342013-05-12 22:40:54 +000022
23/*
24 * Specify the clock enable bit in the PMC_SCER register.
25 */
Wenyou Yange61ed482017-09-14 11:07:42 +080026#define ATMEL_PMC_UHP (1 << 6)
Bo Shen3225f342013-05-12 22:40:54 +000027
Bo Shen3225f342013-05-12 22:40:54 +000028/* board specific (not enough SRAM) */
29#define CONFIG_SAMA5D3_LCD_BASE 0x23E00000
30
Bo Shend6b79432014-07-18 16:43:08 +080031/* NOR flash */
Masahiro Yamadae856bdc2017-02-11 22:43:54 +090032#ifdef CONFIG_MTD_NOR_FLASH
Bo Shend6b79432014-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 Shend6b79432014-07-18 16:43:08 +080039#endif
Bo Shen3225f342013-05-12 22:40:54 +000040
Bo Shen3225f342013-05-12 22:40:54 +000041/* SDRAM */
42#define CONFIG_NR_DRAM_BANKS 1
Wenyou Yange61ed482017-09-14 11:07:42 +080043#define CONFIG_SYS_SDRAM_BASE 0x20000000
Bo Shen3225f342013-05-12 22:40:54 +000044#define CONFIG_SYS_SDRAM_SIZE 0x20000000
45
Bo Shenc5e88852013-11-15 11:12:38 +080046#ifdef CONFIG_SPL_BUILD
Wenyou Yanga97cb062017-04-14 08:51:42 +080047#define CONFIG_SYS_INIT_SP_ADDR 0x318000
Bo Shenc5e88852013-11-15 11:12:38 +080048#else
Bo Shen3225f342013-05-12 22:40:54 +000049#define CONFIG_SYS_INIT_SP_ADDR \
Wenyou Yanga97cb062017-04-14 08:51:42 +080050 (CONFIG_SYS_SDRAM_BASE + 16 * 1024 - GENERATED_GBL_DATA_SIZE)
Bo Shenc5e88852013-11-15 11:12:38 +080051#endif
Bo Shen3225f342013-05-12 22:40:54 +000052
53/* SerialFlash */
Bo Shen3225f342013-05-12 22:40:54 +000054
55#ifdef CONFIG_CMD_SF
Bo Shen3225f342013-05-12 22:40:54 +000056#define CONFIG_SF_DEFAULT_SPEED 30000000
57#endif
58
59/* NAND flash */
Bo Shen3225f342013-05-12 22:40:54 +000060#ifdef CONFIG_CMD_NAND
Bo Shen3225f342013-05-12 22:40:54 +000061#define CONFIG_SYS_MAX_NAND_DEVICE 1
Wenyou Yange61ed482017-09-14 11:07:42 +080062#define CONFIG_SYS_NAND_BASE 0x60000000
Bo Shen3225f342013-05-12 22:40:54 +000063/* our ALE is AD21 */
64#define CONFIG_SYS_NAND_MASK_ALE (1 << 21)
65/* our CLE is AD22 */
66#define CONFIG_SYS_NAND_MASK_CLE (1 << 22)
67#define CONFIG_SYS_NAND_ONFI_DETECTION
Tom Rini8f1a80e2017-07-28 21:31:42 -040068#endif
Bo Shen3225f342013-05-12 22:40:54 +000069/* PMECC & PMERRLOC */
70#define CONFIG_ATMEL_NAND_HWECC
71#define CONFIG_ATMEL_NAND_HW_PMECC
72#define CONFIG_PMECC_CAP 4
73#define CONFIG_PMECC_SECTOR_SIZE 512
Bo Shen3225f342013-05-12 22:40:54 +000074
Bo Shen3225f342013-05-12 22:40:54 +000075/* USB */
Bo Shen3225f342013-05-12 22:40:54 +000076
77#ifdef CONFIG_CMD_USB
Bo Shendcd2f1a2013-10-21 16:14:00 +080078#define CONFIG_USB_ATMEL_CLK_SEL_UPLL
Bo Shen3225f342013-05-12 22:40:54 +000079#define CONFIG_USB_OHCI_NEW
80#define CONFIG_SYS_USB_OHCI_CPU_INIT
81#define CONFIG_SYS_USB_OHCI_REGS_BASE ATMEL_BASE_OHCI
82#define CONFIG_SYS_USB_OHCI_SLOT_NAME "sama5d3"
83#define CONFIG_SYS_USB_OHCI_MAX_ROOT_PORTS 3
Bo Shen3225f342013-05-12 22:40:54 +000084#endif
85
Bo Shen3225f342013-05-12 22:40:54 +000086#define CONFIG_SYS_LOAD_ADDR 0x22000000 /* load address */
87
Bo Shenc5e88852013-11-15 11:12:38 +080088/* SPL */
Bo Shenc5e88852013-11-15 11:12:38 +080089#define CONFIG_SPL_TEXT_BASE 0x300000
Wenyou Yanga97cb062017-04-14 08:51:42 +080090#define CONFIG_SPL_MAX_SIZE 0x18000
Bo Shenc5e88852013-11-15 11:12:38 +080091#define CONFIG_SPL_BSS_START_ADDR 0x20000000
92#define CONFIG_SPL_BSS_MAX_SIZE 0x80000
93#define CONFIG_SYS_SPL_MALLOC_START 0x20080000
94#define CONFIG_SYS_SPL_MALLOC_SIZE 0x80000
95
Bo Shen8a45b0b2014-03-03 14:47:15 +080096#define CONFIG_SYS_MONITOR_LEN (512 << 10)
97
Wenyou Yang55415432017-09-14 11:07:44 +080098#ifdef CONFIG_SD_BOOT
Paul Kocialkowskie2ccdf82014-11-08 23:14:55 +010099#define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1
Guillaume GARDET205b4f32014-10-15 17:53:11 +0200100#define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img"
Bo Shen8a45b0b2014-03-03 14:47:15 +0800101
Wenyou Yang55415432017-09-14 11:07:44 +0800102#elif CONFIG_SPI_BOOT
Wenyou Yang55415432017-09-14 11:07:44 +0800103#define CONFIG_SYS_SPI_U_BOOT_OFFS 0x10000
104
105#elif CONFIG_NAND_BOOT
Bo Shen27019e42014-03-03 14:47:17 +0800106#define CONFIG_SPL_NAND_DRIVERS
107#define CONFIG_SPL_NAND_BASE
Wenyou Yang55415432017-09-14 11:07:44 +0800108#endif
Bo Shen27019e42014-03-03 14:47:17 +0800109#define CONFIG_SYS_NAND_U_BOOT_OFFS 0x40000
110#define CONFIG_SYS_NAND_5_ADDR_CYCLE
111#define CONFIG_SYS_NAND_PAGE_SIZE 0x800
112#define CONFIG_SYS_NAND_PAGE_COUNT 64
113#define CONFIG_SYS_NAND_OOBSIZE 64
114#define CONFIG_SYS_NAND_BLOCK_SIZE 0x20000
115#define CONFIG_SYS_NAND_BAD_BLOCK_POS 0x0
Andreas Bießmanne166a832014-05-19 14:23:41 +0200116#define CONFIG_SPL_GENERATE_ATMEL_PMECC_HEADER
Bo Shen27019e42014-03-03 14:47:17 +0800117
Bo Shen3225f342013-05-12 22:40:54 +0000118#endif