blob: 51db1359401085888ad533ef14a05503c7e81e5e [file] [log] [blame]
Bo Shen3225f342013-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 Denk1a459662013-07-08 09:37:19 +020010 * SPDX-License-Identifier: GPL-2.0+
Bo Shen3225f342013-05-12 22:40:54 +000011 */
12
13#ifndef __CONFIG_H
14#define __CONFIG_H
15
Wu, Joshb2d387b2015-03-30 14:51:19 +080016#include "at91-sama5_common.h"
Bo Shen3225f342013-05-12 22:40:54 +000017
Bo Shen3225f342013-05-12 22:40:54 +000018/*
19 * This needs to be defined for the OHCI code to work but it is defined as
20 * ATMEL_ID_UHPHS in the CPU specific header files.
21 */
Wenyou Yange61ed482017-09-14 11:07:42 +080022#define ATMEL_ID_UHP 32
Bo Shen3225f342013-05-12 22:40:54 +000023
24/*
25 * Specify the clock enable bit in the PMC_SCER register.
26 */
Wenyou Yange61ed482017-09-14 11:07:42 +080027#define ATMEL_PMC_UHP (1 << 6)
Bo Shen3225f342013-05-12 22:40:54 +000028
Bo Shen3225f342013-05-12 22:40:54 +000029/* board specific (not enough SRAM) */
30#define CONFIG_SAMA5D3_LCD_BASE 0x23E00000
31
Bo Shend6b79432014-07-18 16:43:08 +080032/* NOR flash */
Masahiro Yamadae856bdc2017-02-11 22:43:54 +090033#ifdef CONFIG_MTD_NOR_FLASH
Bo Shend6b79432014-07-18 16:43:08 +080034#define CONFIG_FLASH_CFI_DRIVER
35#define CONFIG_SYS_FLASH_CFI
36#define CONFIG_SYS_FLASH_PROTECTION
37#define CONFIG_SYS_FLASH_BASE 0x10000000
38#define CONFIG_SYS_MAX_FLASH_SECT 131
39#define CONFIG_SYS_MAX_FLASH_BANKS 1
Bo Shend6b79432014-07-18 16:43:08 +080040#endif
Bo Shen3225f342013-05-12 22:40:54 +000041
Bo Shen3225f342013-05-12 22:40:54 +000042/* SDRAM */
43#define CONFIG_NR_DRAM_BANKS 1
Wenyou Yange61ed482017-09-14 11:07:42 +080044#define CONFIG_SYS_SDRAM_BASE 0x20000000
Bo Shen3225f342013-05-12 22:40:54 +000045#define CONFIG_SYS_SDRAM_SIZE 0x20000000
46
Bo Shenc5e88852013-11-15 11:12:38 +080047#ifdef CONFIG_SPL_BUILD
Wenyou Yanga97cb062017-04-14 08:51:42 +080048#define CONFIG_SYS_INIT_SP_ADDR 0x318000
Bo Shenc5e88852013-11-15 11:12:38 +080049#else
Bo Shen3225f342013-05-12 22:40:54 +000050#define CONFIG_SYS_INIT_SP_ADDR \
Wenyou Yanga97cb062017-04-14 08:51:42 +080051 (CONFIG_SYS_SDRAM_BASE + 16 * 1024 - GENERATED_GBL_DATA_SIZE)
Bo Shenc5e88852013-11-15 11:12:38 +080052#endif
Bo Shen3225f342013-05-12 22:40:54 +000053
54/* SerialFlash */
Bo Shen3225f342013-05-12 22:40:54 +000055
56#ifdef CONFIG_CMD_SF
Bo Shen3225f342013-05-12 22:40:54 +000057#define CONFIG_SF_DEFAULT_SPEED 30000000
58#endif
59
60/* NAND flash */
Bo Shen3225f342013-05-12 22:40:54 +000061#ifdef CONFIG_CMD_NAND
Bo Shen3225f342013-05-12 22:40:54 +000062#define CONFIG_NAND_ATMEL
63#define CONFIG_SYS_MAX_NAND_DEVICE 1
Wenyou Yange61ed482017-09-14 11:07:42 +080064#define CONFIG_SYS_NAND_BASE 0x60000000
Bo Shen3225f342013-05-12 22:40:54 +000065/* our ALE is AD21 */
66#define CONFIG_SYS_NAND_MASK_ALE (1 << 21)
67/* our CLE is AD22 */
68#define CONFIG_SYS_NAND_MASK_CLE (1 << 22)
69#define CONFIG_SYS_NAND_ONFI_DETECTION
Tom Rini8f1a80e2017-07-28 21:31:42 -040070#endif
Bo Shen3225f342013-05-12 22:40:54 +000071/* PMECC & PMERRLOC */
72#define CONFIG_ATMEL_NAND_HWECC
73#define CONFIG_ATMEL_NAND_HW_PMECC
74#define CONFIG_PMECC_CAP 4
75#define CONFIG_PMECC_SECTOR_SIZE 512
Bo Shen3225f342013-05-12 22:40:54 +000076
Bo Shen3225f342013-05-12 22:40:54 +000077/* USB */
Bo Shen3225f342013-05-12 22:40:54 +000078
79#ifdef CONFIG_CMD_USB
Bo Shendcd2f1a2013-10-21 16:14:00 +080080#define CONFIG_USB_ATMEL_CLK_SEL_UPLL
Bo Shen3225f342013-05-12 22:40:54 +000081#define CONFIG_USB_OHCI_NEW
82#define CONFIG_SYS_USB_OHCI_CPU_INIT
83#define CONFIG_SYS_USB_OHCI_REGS_BASE ATMEL_BASE_OHCI
84#define CONFIG_SYS_USB_OHCI_SLOT_NAME "sama5d3"
85#define CONFIG_SYS_USB_OHCI_MAX_ROOT_PORTS 3
Bo Shen3225f342013-05-12 22:40:54 +000086#endif
87
Bo Shen3225f342013-05-12 22:40:54 +000088#define CONFIG_SYS_LOAD_ADDR 0x22000000 /* load address */
89
Bo Shenc5e88852013-11-15 11:12:38 +080090/* SPL */
Bo Shenc5e88852013-11-15 11:12:38 +080091#define CONFIG_SPL_TEXT_BASE 0x300000
Wenyou Yanga97cb062017-04-14 08:51:42 +080092#define CONFIG_SPL_MAX_SIZE 0x18000
Bo Shenc5e88852013-11-15 11:12:38 +080093#define CONFIG_SPL_BSS_START_ADDR 0x20000000
94#define CONFIG_SPL_BSS_MAX_SIZE 0x80000
95#define CONFIG_SYS_SPL_MALLOC_START 0x20080000
96#define CONFIG_SYS_SPL_MALLOC_SIZE 0x80000
97
Bo Shen8a45b0b2014-03-03 14:47:15 +080098#define CONFIG_SYS_MONITOR_LEN (512 << 10)
99
Wenyou Yang55415432017-09-14 11:07:44 +0800100#ifdef CONFIG_SD_BOOT
Paul Kocialkowskie2ccdf82014-11-08 23:14:55 +0100101#define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1
Guillaume GARDET205b4f32014-10-15 17:53:11 +0200102#define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img"
Bo Shen8a45b0b2014-03-03 14:47:15 +0800103
Wenyou Yang55415432017-09-14 11:07:44 +0800104#elif CONFIG_SPI_BOOT
Wenyou Yang55415432017-09-14 11:07:44 +0800105#define CONFIG_SYS_SPI_U_BOOT_OFFS 0x10000
106
107#elif CONFIG_NAND_BOOT
Bo Shen27019e42014-03-03 14:47:17 +0800108#define CONFIG_SPL_NAND_DRIVERS
109#define CONFIG_SPL_NAND_BASE
Wenyou Yang55415432017-09-14 11:07:44 +0800110#endif
Bo Shen27019e42014-03-03 14:47:17 +0800111#define CONFIG_SYS_NAND_U_BOOT_OFFS 0x40000
112#define CONFIG_SYS_NAND_5_ADDR_CYCLE
113#define CONFIG_SYS_NAND_PAGE_SIZE 0x800
114#define CONFIG_SYS_NAND_PAGE_COUNT 64
115#define CONFIG_SYS_NAND_OOBSIZE 64
116#define CONFIG_SYS_NAND_BLOCK_SIZE 0x20000
117#define CONFIG_SYS_NAND_BAD_BLOCK_POS 0x0
Andreas Bießmanne166a832014-05-19 14:23:41 +0200118#define CONFIG_SPL_GENERATE_ATMEL_PMECC_HEADER
Bo Shen27019e42014-03-03 14:47:17 +0800119
Bo Shen3225f342013-05-12 22:40:54 +0000120#endif