1*4882a593Smuzhiyun /* 2*4882a593Smuzhiyun * (C) Copyright 2015 Google, Inc 3*4882a593Smuzhiyun * 4*4882a593Smuzhiyun * SPDX-License-Identifier: GPL-2.0+ 5*4882a593Smuzhiyun */ 6*4882a593Smuzhiyun 7*4882a593Smuzhiyun #ifndef __CONFIG_RK3188_COMMON_H 8*4882a593Smuzhiyun #define __CONFIG_RK3188_COMMON_H 9*4882a593Smuzhiyun 10*4882a593Smuzhiyun #define CONFIG_SYS_CACHELINE_SIZE 64 11*4882a593Smuzhiyun 12*4882a593Smuzhiyun #include <asm/arch/hardware.h> 13*4882a593Smuzhiyun #include "rockchip-common.h" 14*4882a593Smuzhiyun 15*4882a593Smuzhiyun #define CONFIG_SKIP_LOWLEVEL_INIT_ONLY 16*4882a593Smuzhiyun #define CONFIG_SYS_MALLOC_LEN (32 << 20) 17*4882a593Smuzhiyun #define CONFIG_SYS_CBSIZE 1024 18*4882a593Smuzhiyun 19*4882a593Smuzhiyun #define CONFIG_SYS_TIMER_COUNTS_DOWN 20*4882a593Smuzhiyun /* RK3188 do not have a ARMv7 ARCH timer */ 21*4882a593Smuzhiyun #undef CONFIG_SYS_ARCH_TIMER 22*4882a593Smuzhiyun 23*4882a593Smuzhiyun #ifdef CONFIG_SPL_ROCKCHIP_BACK_TO_BROM 24*4882a593Smuzhiyun /* Bootrom will load u-boot binary to 0x60000000 once return from SPL */ 25*4882a593Smuzhiyun #define CONFIG_SYS_TEXT_BASE 0x60000000 26*4882a593Smuzhiyun #else 27*4882a593Smuzhiyun #define CONFIG_SYS_TEXT_BASE 0x60200000 28*4882a593Smuzhiyun #endif 29*4882a593Smuzhiyun #define CONFIG_SYS_INIT_SP_ADDR 0x60400000 30*4882a593Smuzhiyun #define CONFIG_SYS_LOAD_ADDR 0x60800800 31*4882a593Smuzhiyun 32*4882a593Smuzhiyun #define CONFIG_ROCKCHIP_MAX_INIT_SIZE (0x8000 - 0x800) 33*4882a593Smuzhiyun #define CONFIG_ROCKCHIP_CHIP_TAG "RK31" 34*4882a593Smuzhiyun #define CONFIG_ROCKUSB_G_DNL_PID 0x310B 35*4882a593Smuzhiyun 36*4882a593Smuzhiyun #define CONFIG_SPL_TEXT_BASE 0x10080800 37*4882a593Smuzhiyun /* spl size 32kb sram - 2kb bootrom */ 38*4882a593Smuzhiyun #define CONFIG_SPL_MAX_SIZE (0x8000 - 0x800) 39*4882a593Smuzhiyun #define CONFIG_SPL_FRAMEWORK 1 40*4882a593Smuzhiyun #define CONFIG_ROCKCHIP_SERIAL 1 41*4882a593Smuzhiyun 42*4882a593Smuzhiyun #define CONFIG_SPL_STACK 0x10087fff 43*4882a593Smuzhiyun 44*4882a593Smuzhiyun /* MMC/SD IP block */ 45*4882a593Smuzhiyun #define CONFIG_BOUNCE_BUFFER 46*4882a593Smuzhiyun 47*4882a593Smuzhiyun #define CONFIG_SYS_SDRAM_BASE 0x60000000 48*4882a593Smuzhiyun #define SDRAM_BANK_SIZE (2UL << 30) 49*4882a593Smuzhiyun #define SDRAM_MAX_SIZE 0x80000000 50*4882a593Smuzhiyun 51*4882a593Smuzhiyun #ifndef CONFIG_SPL_BUILD 52*4882a593Smuzhiyun 53*4882a593Smuzhiyun /* usb mass storage */ 54*4882a593Smuzhiyun #define CONFIG_USB_FUNCTION_MASS_STORAGE 55*4882a593Smuzhiyun 56*4882a593Smuzhiyun /* usb otg */ 57*4882a593Smuzhiyun #define CONFIG_ROCKCHIP_USB2_PHY 58*4882a593Smuzhiyun 59*4882a593Smuzhiyun /* usb host support */ 60*4882a593Smuzhiyun #define ENV_MEM_LAYOUT_SETTINGS \ 61*4882a593Smuzhiyun "scriptaddr=0x60000000\0" \ 62*4882a593Smuzhiyun "pxefile_addr_r=0x60100000\0" \ 63*4882a593Smuzhiyun "fdt_addr_r=0x68300000\0" \ 64*4882a593Smuzhiyun "kernel_addr_r=0x62000000\0" \ 65*4882a593Smuzhiyun "ramdisk_addr_r=0x6a200000\0" 66*4882a593Smuzhiyun 67*4882a593Smuzhiyun #include <config_distro_bootcmd.h> 68*4882a593Smuzhiyun 69*4882a593Smuzhiyun /* Linux fails to load the fdt if it's loaded above 256M on a Rock board, 70*4882a593Smuzhiyun * so limit the fdt reallocation to that */ 71*4882a593Smuzhiyun #define CONFIG_EXTRA_ENV_SETTINGS \ 72*4882a593Smuzhiyun "fdt_high=0x6fffffff\0" \ 73*4882a593Smuzhiyun "initrd_high=0x6fffffff\0" \ 74*4882a593Smuzhiyun "partitions=" PARTS_DEFAULT \ 75*4882a593Smuzhiyun ENV_MEM_LAYOUT_SETTINGS \ 76*4882a593Smuzhiyun ROCKCHIP_DEVICE_SETTINGS \ 77*4882a593Smuzhiyun BOOTENV 78*4882a593Smuzhiyun 79*4882a593Smuzhiyun #endif /* CONFIG_SPL_BUILD */ 80*4882a593Smuzhiyun 81*4882a593Smuzhiyun #define CONFIG_PREBOOT 82*4882a593Smuzhiyun 83*4882a593Smuzhiyun #endif 84