10a2be69fSHeiko Stübner /* 20a2be69fSHeiko Stübner * (C) Copyright 2015 Google, Inc 30a2be69fSHeiko Stübner * 40a2be69fSHeiko Stübner * SPDX-License-Identifier: GPL-2.0+ 50a2be69fSHeiko Stübner */ 60a2be69fSHeiko Stübner 70a2be69fSHeiko Stübner #ifndef __CONFIG_RK3188_COMMON_H 80a2be69fSHeiko Stübner #define __CONFIG_RK3188_COMMON_H 90a2be69fSHeiko Stübner 100a2be69fSHeiko Stübner #define CONFIG_SYS_CACHELINE_SIZE 64 110a2be69fSHeiko Stübner 120a2be69fSHeiko Stübner #include <asm/arch/hardware.h> 130a2be69fSHeiko Stübner #include "rockchip-common.h" 140a2be69fSHeiko Stübner 150a2be69fSHeiko Stübner #define CONFIG_SKIP_LOWLEVEL_INIT_ONLY 160a2be69fSHeiko Stübner #define CONFIG_NR_DRAM_BANKS 1 170a2be69fSHeiko Stübner #define CONFIG_ENV_SIZE 0x2000 180a2be69fSHeiko Stübner #define CONFIG_SYS_MAXARGS 16 190a2be69fSHeiko Stübner #define CONFIG_SYS_MALLOC_LEN (32 << 20) 200a2be69fSHeiko Stübner #define CONFIG_SYS_CBSIZE 1024 210a2be69fSHeiko Stübner 220a2be69fSHeiko Stübner #define CONFIG_SYS_TIMER_RATE (24 * 1000 * 1000) 230a2be69fSHeiko Stübner #define CONFIG_SYS_TIMER_BASE 0x2000e000 /* TIMER3 */ 240a2be69fSHeiko Stübner #define CONFIG_SYS_TIMER_COUNTER (CONFIG_SYS_TIMER_BASE + 8) 250a2be69fSHeiko Stübner #define CONFIG_SYS_TIMER_COUNTS_DOWN 260a2be69fSHeiko Stübner 270a2be69fSHeiko Stübner #define CONFIG_SYS_NS16550_MEM32 280a2be69fSHeiko Stübner 29*ee14d29dSPhilipp Tomsich #ifdef CONFIG_SPL_ROCKCHIP_BACK_TO_BROM 300a2be69fSHeiko Stübner /* Bootrom will load u-boot binary to 0x60000000 once return from SPL */ 310a2be69fSHeiko Stübner #define CONFIG_SYS_TEXT_BASE 0x60000000 320a2be69fSHeiko Stübner #else 330a2be69fSHeiko Stübner #define CONFIG_SYS_TEXT_BASE 0x60100000 340a2be69fSHeiko Stübner #endif 350a2be69fSHeiko Stübner #define CONFIG_SYS_INIT_SP_ADDR 0x60100000 360a2be69fSHeiko Stübner #define CONFIG_SYS_LOAD_ADDR 0x60800800 370a2be69fSHeiko Stübner 380a2be69fSHeiko Stübner #define CONFIG_ROCKCHIP_MAX_INIT_SIZE (0x8000 - 0x800) 390a2be69fSHeiko Stübner #define CONFIG_ROCKCHIP_CHIP_TAG "RK31" 400a2be69fSHeiko Stübner 410a2be69fSHeiko Stübner #ifdef CONFIG_TPL_BUILD 420a2be69fSHeiko Stübner #define CONFIG_SPL_TEXT_BASE 0x10080804 430a2be69fSHeiko Stübner /* tpl size 1kb - 4byte RK31 header */ 440a2be69fSHeiko Stübner #define CONFIG_SPL_MAX_SIZE (0x400 - 0x4) 450a2be69fSHeiko Stübner #elif defined(CONFIG_SPL_BUILD) 460a2be69fSHeiko Stübner /* spl size 32kb sram - 2kb bootrom - 1kb spl */ 470a2be69fSHeiko Stübner #define CONFIG_SPL_MAX_SIZE (0x8000 - 0xC00) 480a2be69fSHeiko Stübner #define CONFIG_SPL_TEXT_BASE 0x10080C00 490a2be69fSHeiko Stübner #define CONFIG_SPL_FRAMEWORK 1 500a2be69fSHeiko Stübner #define CONFIG_SPL_CLK 1 510a2be69fSHeiko Stübner #define CONFIG_SPL_PINCTRL 1 520a2be69fSHeiko Stübner #define CONFIG_SPL_REGMAP 1 530a2be69fSHeiko Stübner #define CONFIG_SPL_SYSCON 1 540a2be69fSHeiko Stübner #define CONFIG_SPL_RAM 1 550a2be69fSHeiko Stübner #define CONFIG_SPL_DRIVERS_MISC_SUPPORT 1 560a2be69fSHeiko Stübner #define CONFIG_ROCKCHIP_SERIAL 1 570a2be69fSHeiko Stübner #endif 580a2be69fSHeiko Stübner 590a2be69fSHeiko Stübner #define CONFIG_SPL_STACK 0x10087fff 600a2be69fSHeiko Stübner 610a2be69fSHeiko Stübner /* MMC/SD IP block */ 620a2be69fSHeiko Stübner #define CONFIG_BOUNCE_BUFFER 630a2be69fSHeiko Stübner 640a2be69fSHeiko Stübner #define CONFIG_SYS_SDRAM_BASE 0x60000000 650a2be69fSHeiko Stübner #define CONFIG_NR_DRAM_BANKS 1 660a2be69fSHeiko Stübner #define SDRAM_BANK_SIZE (2UL << 30) 676d1970faSKever Yang #define SDRAM_MAX_SIZE 0x80000000 680a2be69fSHeiko Stübner 690a2be69fSHeiko Stübner #define CONFIG_SPI_FLASH 700a2be69fSHeiko Stübner #define CONFIG_SPI 710a2be69fSHeiko Stübner #define CONFIG_SF_DEFAULT_SPEED 20000000 720a2be69fSHeiko Stübner 730a2be69fSHeiko Stübner #ifndef CONFIG_SPL_BUILD 740a2be69fSHeiko Stübner /* usb otg */ 750a2be69fSHeiko Stübner #define CONFIG_USB_GADGET 760a2be69fSHeiko Stübner #define CONFIG_USB_GADGET_DUALSPEED 770a2be69fSHeiko Stübner #define CONFIG_USB_GADGET_DWC2_OTG 780a2be69fSHeiko Stübner #define CONFIG_ROCKCHIP_USB2_PHY 790a2be69fSHeiko Stübner #define CONFIG_USB_GADGET_VBUS_DRAW 0 800a2be69fSHeiko Stübner 810a2be69fSHeiko Stübner #define CONFIG_USB_GADGET_DOWNLOAD 820a2be69fSHeiko Stübner #define CONFIG_G_DNL_MANUFACTURER "Rockchip" 830a2be69fSHeiko Stübner #define CONFIG_G_DNL_VENDOR_NUM 0x2207 840a2be69fSHeiko Stübner #define CONFIG_G_DNL_PRODUCT_NUM 0x310a 850a2be69fSHeiko Stübner 860a2be69fSHeiko Stübner /* usb host support */ 870a2be69fSHeiko Stübner #ifdef CONFIG_CMD_USB 880a2be69fSHeiko Stübner #define CONFIG_USB_HOST_ETHER 890a2be69fSHeiko Stübner #define CONFIG_USB_ETHER_SMSC95XX 900a2be69fSHeiko Stübner #define CONFIG_USB_ETHER_ASIX 910a2be69fSHeiko Stübner #endif 920a2be69fSHeiko Stübner #define ENV_MEM_LAYOUT_SETTINGS \ 930a2be69fSHeiko Stübner "scriptaddr=0x60000000\0" \ 940a2be69fSHeiko Stübner "pxefile_addr_r=0x60100000\0" \ 950a2be69fSHeiko Stübner "fdt_addr_r=0x61f00000\0" \ 960a2be69fSHeiko Stübner "kernel_addr_r=0x62000000\0" \ 970a2be69fSHeiko Stübner "ramdisk_addr_r=0x64000000\0" 980a2be69fSHeiko Stübner 990a2be69fSHeiko Stübner #include <config_distro_bootcmd.h> 1000a2be69fSHeiko Stübner 1010a2be69fSHeiko Stübner /* Linux fails to load the fdt if it's loaded above 256M on a Rock board, 1020a2be69fSHeiko Stübner * so limit the fdt reallocation to that */ 1030a2be69fSHeiko Stübner #define CONFIG_EXTRA_ENV_SETTINGS \ 1040a2be69fSHeiko Stübner "fdt_high=0x6fffffff\0" \ 1050a2be69fSHeiko Stübner "initrd_high=0x6fffffff\0" \ 1060a2be69fSHeiko Stübner "partitions=" PARTS_DEFAULT \ 1070a2be69fSHeiko Stübner ENV_MEM_LAYOUT_SETTINGS \ 1080a2be69fSHeiko Stübner ROCKCHIP_DEVICE_SETTINGS \ 1090a2be69fSHeiko Stübner BOOTENV 1100a2be69fSHeiko Stübner 1110a2be69fSHeiko Stübner #endif /* CONFIG_SPL_BUILD */ 1120a2be69fSHeiko Stübner 1130a2be69fSHeiko Stübner #define CONFIG_PREBOOT 1140a2be69fSHeiko Stübner 1150a2be69fSHeiko Stübner #endif 116