blob: 33b1f0e99951b66ba6824830b90f2a389b2cb45c [file] [log] [blame]
Simon Glassec3be542015-08-30 16:55:41 -06001/*
2 * (C) Copyright 2015 Google, Inc
3 *
4 * SPDX-License-Identifier: GPL-2.0+
5 */
6
7#ifndef __CONFIG_RK3288_COMMON_H
8#define __CONFIG_RK3288_COMMON_H
9
10#include <asm/arch/hardware.h>
Jacob Chen63dc9712016-10-08 13:47:41 +080011#include "rockchip-common.h"
Simon Glassec3be542015-08-30 16:55:41 -060012
Xu Ziyuan68728e82016-08-27 21:53:14 +080013#define CONFIG_SKIP_LOWLEVEL_INIT_ONLY
Simon Glassec3be542015-08-30 16:55:41 -060014#define CONFIG_SYS_NO_FLASH
15#define CONFIG_NR_DRAM_BANKS 1
Simon Glassec3be542015-08-30 16:55:41 -060016#define CONFIG_ENV_SIZE 0x2000
Simon Glassec3be542015-08-30 16:55:41 -060017#define CONFIG_SYS_MAXARGS 16
18#define CONFIG_BAUDRATE 115200
19#define CONFIG_SYS_MALLOC_LEN (32 << 20)
20#define CONFIG_SYS_CBSIZE 1024
Simon Glassec3be542015-08-30 16:55:41 -060021#define CONFIG_SYS_THUMB_BUILD
Simon Glassec3be542015-08-30 16:55:41 -060022
23#define CONFIG_SYS_TIMER_RATE (24 * 1000 * 1000)
huang lin8db3e242015-11-17 14:20:09 +080024#define CONFIG_SYS_TIMER_BASE 0xff810020 /* TIMER7 */
25#define CONFIG_SYS_TIMER_COUNTER (CONFIG_SYS_TIMER_BASE + 8)
Simon Glassec3be542015-08-30 16:55:41 -060026
27#define CONFIG_SPL_FRAMEWORK
Simon Glassec3be542015-08-30 16:55:41 -060028#define CONFIG_SYS_NS16550_MEM32
29#define CONFIG_SPL_BOARD_INIT
30
Xu Ziyuan5401eb82016-07-12 19:09:49 +080031#ifdef CONFIG_ROCKCHIP_SPL_BACK_TO_BROM
32/* Bootrom will load u-boot binary to 0x0 once return from SPL */
33#define CONFIG_SYS_TEXT_BASE 0x00000000
34#else
Simon Glassec3be542015-08-30 16:55:41 -060035#define CONFIG_SYS_TEXT_BASE 0x00100000
Xu Ziyuan5401eb82016-07-12 19:09:49 +080036#endif
Simon Glassec3be542015-08-30 16:55:41 -060037#define CONFIG_SYS_INIT_SP_ADDR 0x00100000
38#define CONFIG_SYS_LOAD_ADDR 0x00800800
39#define CONFIG_SPL_STACK 0xff718000
40#define CONFIG_SPL_TEXT_BASE 0xff704004
41
42/* MMC/SD IP block */
Simon Glassec3be542015-08-30 16:55:41 -060043#define CONFIG_GENERIC_MMC
Simon Glassec3be542015-08-30 16:55:41 -060044#define CONFIG_BOUNCE_BUFFER
45
Simon Glassec3be542015-08-30 16:55:41 -060046#define CONFIG_FAT_WRITE
Simon Glassec3be542015-08-30 16:55:41 -060047#define CONFIG_PARTITION_UUIDS
48#define CONFIG_CMD_PART
49
50/* RAW SD card / eMMC locations. */
Simon Glassec3be542015-08-30 16:55:41 -060051#define CONFIG_SYS_SPI_U_BOOT_OFFS (128 << 10)
52
53/* FAT sd card locations. */
54#define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1
55#define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img"
56
Simon Glassec3be542015-08-30 16:55:41 -060057#define CONFIG_SYS_SDRAM_BASE 0
58#define CONFIG_NR_DRAM_BANKS 1
59#define SDRAM_BANK_SIZE (2UL << 30)
60
61#define CONFIG_SPI_FLASH
62#define CONFIG_SPI
Simon Glassec3be542015-08-30 16:55:41 -060063#define CONFIG_SF_DEFAULT_SPEED 20000000
64
jk.kernel@gmail.com376bcc62016-07-26 18:28:24 +080065#ifndef CONFIG_SPL_BUILD
Xu Ziyuana11a53f2016-07-15 00:26:59 +080066/* usb otg */
67#define CONFIG_USB_GADGET
68#define CONFIG_USB_GADGET_DUALSPEED
69#define CONFIG_USB_GADGET_DWC2_OTG
70#define CONFIG_ROCKCHIP_USB2_PHY
71#define CONFIG_USB_GADGET_VBUS_DRAW 0
72
73/* fastboot */
74#define CONFIG_CMD_FASTBOOT
75#define CONFIG_USB_FUNCTION_FASTBOOT
76#define CONFIG_FASTBOOT_FLASH
77#define CONFIG_FASTBOOT_FLASH_MMC_DEV 1 /* eMMC */
jk.kernel@gmail.com9a04f282016-07-26 18:28:26 +080078#define CONFIG_FASTBOOT_BUF_ADDR CONFIG_SYS_LOAD_ADDR
Xu Ziyuana11a53f2016-07-15 00:26:59 +080079#define CONFIG_FASTBOOT_BUF_SIZE 0x08000000
80
Xu Ziyuanb653b472016-08-03 11:55:06 +080081/* usb mass storage */
82#define CONFIG_USB_FUNCTION_MASS_STORAGE
83#define CONFIG_CMD_USB_MASS_STORAGE
84
Xu Ziyuana11a53f2016-07-15 00:26:59 +080085#define CONFIG_USB_GADGET_DOWNLOAD
86#define CONFIG_G_DNL_MANUFACTURER "Rockchip"
87#define CONFIG_G_DNL_VENDOR_NUM 0x2207
88#define CONFIG_G_DNL_PRODUCT_NUM 0x320a
89
Kever Yangf7d6def2016-11-24 15:29:51 +080090/* usb host support */
91#ifdef CONFIG_CMD_USB
92#define CONFIG_USB_DWC2
93#define CONFIG_USB_HOST_ETHER
94#define CONFIG_USB_ETHER_SMSC95XX
95#define CONFIG_USB_ETHER_ASIX
96#endif
Sjoerd Simons427418b2015-08-30 16:55:48 -060097#define ENV_MEM_LAYOUT_SETTINGS \
98 "scriptaddr=0x00000000\0" \
99 "pxefile_addr_r=0x00100000\0" \
100 "fdt_addr_r=0x01f00000\0" \
101 "kernel_addr_r=0x02000000\0" \
102 "ramdisk_addr_r=0x04000000\0"
103
Sjoerd Simons427418b2015-08-30 16:55:48 -0600104#include <config_distro_bootcmd.h>
105
Sandy Pattersonf4526ef2016-07-11 13:38:52 -0400106/* Linux fails to load the fdt if it's loaded above 256M on a Rock 2 board, so
Sjoerd Simons427418b2015-08-30 16:55:48 -0600107 * limit the fdt reallocation to that */
108#define CONFIG_EXTRA_ENV_SETTINGS \
Sandy Pattersonf4526ef2016-07-11 13:38:52 -0400109 "fdt_high=0x0fffffff\0" \
110 "initrd_high=0x0fffffff\0" \
Xu Ziyuan05c3ca62016-08-03 11:55:05 +0800111 "partitions=" PARTS_DEFAULT \
Sjoerd Simons427418b2015-08-30 16:55:48 -0600112 ENV_MEM_LAYOUT_SETTINGS \
Simon Glasscf88b7c2016-01-21 19:44:13 -0700113 ROCKCHIP_DEVICE_SETTINGS \
Sjoerd Simons427418b2015-08-30 16:55:48 -0600114 BOOTENV
Simon Glassec3be542015-08-30 16:55:41 -0600115#endif
116
Jacob Chenc95f3782016-09-19 18:46:28 +0800117#define CONFIG_BOARD_LATE_INIT
118#define CONFIG_PREBOOT
119
Simon Glassec3be542015-08-30 16:55:41 -0600120#endif