blob: 35ecb3ce5632ae3bcc391d345cd2464e4303edf4 [file] [log] [blame]
Prabhakar Kushwaha55432502016-06-03 18:41:34 +05301/*
2 * Copyright 2016 Freescale Semiconductor
3 *
4 * SPDX-License-Identifier: GPL-2.0+
5 */
6
7#ifndef __LS1012A_COMMON_H
8#define __LS1012A_COMMON_H
9
10#define CONFIG_FSL_LAYERSCAPE
Prabhakar Kushwaha55432502016-06-03 18:41:34 +053011#define CONFIG_GICV2
12
Prabhakar Kushwaha55432502016-06-03 18:41:34 +053013#include <asm/arch/config.h>
Bharat Bhushanc8651312017-03-22 12:06:29 +053014#include <asm/arch/stream_id_lsch2.h>
Prabhakar Kushwaha55432502016-06-03 18:41:34 +053015
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +080016#define CONFIG_SYS_CLK_FREQ 125000000
Prabhakar Kushwaha55432502016-06-03 18:41:34 +053017
18#define CONFIG_SKIP_LOWLEVEL_INIT
Prabhakar Kushwaha55432502016-06-03 18:41:34 +053019
20#define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_FSL_OCRAM_BASE + 0xfff0)
21#define CONFIG_SYS_LOAD_ADDR (CONFIG_SYS_DDR_SDRAM_BASE + 0x10000000)
22
23#define CONFIG_SYS_DDR_SDRAM_BASE 0x80000000
24#define CONFIG_SYS_FSL_DDR_SDRAM_BASE_PHY 0
25#define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_DDR_SDRAM_BASE
Prabhakar Kushwaha1fb2f112017-01-30 17:05:22 +053026#define CONFIG_SYS_DDR_BLOCK2_BASE 0x880000000ULL
Prabhakar Kushwaha55432502016-06-03 18:41:34 +053027
28/* Generic Timer Definitions */
Yuantian Tang8d7d8202017-10-12 14:29:26 +080029#define COUNTER_FREQUENCY 25000000 /* 25MHz */
Prabhakar Kushwaha55432502016-06-03 18:41:34 +053030
31/* CSU */
32#define CONFIG_LAYERSCAPE_NS_ACCESS
33
34/* Size of malloc() pool */
35#define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + 128 * 1024)
36
37/*SPI device */
38#ifdef CONFIG_QSPI_BOOT
39#define CONFIG_SYS_QE_FW_IN_SPIFLASH
40#define CONFIG_SYS_FMAN_FW_ADDR 0x400d0000
41#define CONFIG_ENV_SPI_BUS 0
42#define CONFIG_ENV_SPI_CS 0
43#define CONFIG_ENV_SPI_MAX_HZ 1000000
44#define CONFIG_ENV_SPI_MODE 0x03
45#define CONFIG_SPI_FLASH_SPANSION
46#define CONFIG_FSL_SPI_INTERFACE
47#define CONFIG_SF_DATAFLASH
48
49#define CONFIG_FSL_QSPI
50#define QSPI0_AMBA_BASE 0x40000000
51#define CONFIG_SPI_FLASH_SPANSION
Prabhakar Kushwaha55432502016-06-03 18:41:34 +053052
Suresh Gupta2c31d722017-04-25 14:51:38 +053053#define FSL_QSPI_FLASH_SIZE SZ_64M
Prabhakar Kushwaha55432502016-06-03 18:41:34 +053054#define FSL_QSPI_FLASH_NUM 2
55
56/*
57 * Environment
58 */
59#define CONFIG_ENV_OVERWRITE
60
Prabhakar Kushwaha55432502016-06-03 18:41:34 +053061#define CONFIG_ENV_SIZE 0x40000 /* 256KB */
Bhaskar Upadhaya11385d82017-11-14 05:05:10 +053062#define CONFIG_ENV_OFFSET 0x300000 /* 3MB */
Prabhakar Kushwaha55432502016-06-03 18:41:34 +053063#define CONFIG_ENV_SECT_SIZE 0x40000
64#endif
65
Yuantian Tang932c5b12018-01-03 15:53:10 +080066/* SATA */
67#define CONFIG_SCSI_AHCI_PLAT
68
69#define CONFIG_SYS_SATA AHCI_BASE_ADDR
70
71#define CONFIG_SYS_SCSI_MAX_SCSI_ID 1
72#define CONFIG_SYS_SCSI_MAX_LUN 1
73#define CONFIG_SYS_SCSI_MAX_DEVICE (CONFIG_SYS_SCSI_MAX_SCSI_ID * \
74 CONFIG_SYS_SCSI_MAX_LUN)
75
Prabhakar Kushwaha55432502016-06-03 18:41:34 +053076/* I2C */
77#define CONFIG_SYS_I2C
Prabhakar Kushwaha55432502016-06-03 18:41:34 +053078
Prabhakar Kushwaha55432502016-06-03 18:41:34 +053079#define CONFIG_SYS_NS16550_SERIAL
80#define CONFIG_SYS_NS16550_REG_SIZE 1
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +080081#define CONFIG_SYS_NS16550_CLK (get_serial_clock())
Prabhakar Kushwaha55432502016-06-03 18:41:34 +053082
Prabhakar Kushwaha55432502016-06-03 18:41:34 +053083#define CONFIG_SYS_BAUDRATE_TABLE { 9600, 19200, 38400, 57600, 115200 }
84
Prabhakar Kushwaha55432502016-06-03 18:41:34 +053085#define CONFIG_SYS_HZ 1000
86
87#define CONFIG_HWCONFIG
88#define HWCONFIG_BUFFER_SIZE 128
89
Rajesh Bhagatd59447a2017-11-30 16:44:38 +053090#ifndef CONFIG_SPL_BUILD
91#define BOOT_TARGET_DEVICES(func) \
Yuantian Tang932c5b12018-01-03 15:53:10 +080092 func(SCSI, scsi, 0) \
Rajesh Bhagatd59447a2017-11-30 16:44:38 +053093 func(MMC, mmc, 0) \
94 func(USB, usb, 0)
95#include <config_distro_bootcmd.h>
96#endif
97
Prabhakar Kushwaha55432502016-06-03 18:41:34 +053098/* Initial environment variables */
99#define CONFIG_EXTRA_ENV_SETTINGS \
Prabhakar Kushwaha55432502016-06-03 18:41:34 +0530100 "verify=no\0" \
Prabhakar Kushwaha55432502016-06-03 18:41:34 +0530101 "loadaddr=0x80100000\0" \
102 "kernel_addr=0x100000\0" \
Prabhakar Kushwaha55432502016-06-03 18:41:34 +0530103 "fdt_high=0xffffffffffffffff\0" \
104 "initrd_high=0xffffffffffffffff\0" \
Bhaskar Upadhaya11385d82017-11-14 05:05:10 +0530105 "kernel_start=0x1000000\0" \
Prabhakar Kushwaha55432502016-06-03 18:41:34 +0530106 "kernel_load=0xa0000000\0" \
107 "kernel_size=0x2800000\0" \
Prabhakar Kushwaha55432502016-06-03 18:41:34 +0530108
Rajesh Bhagatd59447a2017-11-30 16:44:38 +0530109#undef CONFIG_BOOTCOMMAND
Calvin Johnson0e6101a2018-03-08 15:30:35 +0530110#define CONFIG_BOOTCOMMAND "pfe stop; sf probe 0:0; sf read $kernel_load "\
111 "$kernel_start $kernel_size && "\
112 "bootm $kernel_load"
Prabhakar Kushwaha55432502016-06-03 18:41:34 +0530113
114/* Monitor Command Prompt */
115#define CONFIG_SYS_CBSIZE 512 /* Console I/O Buffer Size */
Prabhakar Kushwaha55432502016-06-03 18:41:34 +0530116#define CONFIG_SYS_MAXARGS 64 /* max command args */
117
Prabhakar Kushwaha55432502016-06-03 18:41:34 +0530118#define CONFIG_SYS_BOOTM_LEN (64 << 20) /* Increase max gunzip size */
119
Simon Glass89e0a3a2017-05-17 08:23:10 -0600120#include <asm/arch/soc.h>
121
Prabhakar Kushwaha55432502016-06-03 18:41:34 +0530122#endif /* __LS1012A_COMMON_H */