117aa548cSSimon Glass /* 217aa548cSSimon Glass * (C) Copyright 2015 Google, Inc 317aa548cSSimon Glass * 417aa548cSSimon Glass * SPDX-License-Identifier: GPL-2.0+ 517aa548cSSimon Glass */ 617aa548cSSimon Glass 717aa548cSSimon Glass #ifndef __CONFIG_RK3288_COMMON_H 817aa548cSSimon Glass #define __CONFIG_RK3288_COMMON_H 917aa548cSSimon Glass 1017aa548cSSimon Glass #include <asm/arch/hardware.h> 117f35bbb9SJacob Chen #include "rockchip-common.h" 1217aa548cSSimon Glass 135a4a90f6SXu Ziyuan #define CONFIG_SKIP_LOWLEVEL_INIT_ONLY 1417aa548cSSimon Glass #define CONFIG_SYS_NO_FLASH 1517aa548cSSimon Glass #define CONFIG_NR_DRAM_BANKS 1 1617aa548cSSimon Glass #define CONFIG_ENV_SIZE 0x2000 1717aa548cSSimon Glass #define CONFIG_SYS_MAXARGS 16 1817aa548cSSimon Glass #define CONFIG_BAUDRATE 115200 1917aa548cSSimon Glass #define CONFIG_SYS_MALLOC_LEN (32 << 20) 2017aa548cSSimon Glass #define CONFIG_SYS_CBSIZE 1024 2117aa548cSSimon Glass #define CONFIG_SYS_THUMB_BUILD 2217aa548cSSimon Glass 2317aa548cSSimon Glass #define CONFIG_SYS_TIMER_RATE (24 * 1000 * 1000) 24cc2244b8Shuang lin #define CONFIG_SYS_TIMER_BASE 0xff810020 /* TIMER7 */ 25cc2244b8Shuang lin #define CONFIG_SYS_TIMER_COUNTER (CONFIG_SYS_TIMER_BASE + 8) 2617aa548cSSimon Glass 2717aa548cSSimon Glass #define CONFIG_SPL_FRAMEWORK 2817aa548cSSimon Glass #define CONFIG_SYS_NS16550_MEM32 2917aa548cSSimon Glass #define CONFIG_SPL_BOARD_INIT 3017aa548cSSimon Glass 31b47ea792SXu Ziyuan #ifdef CONFIG_ROCKCHIP_SPL_BACK_TO_BROM 32b47ea792SXu Ziyuan /* Bootrom will load u-boot binary to 0x0 once return from SPL */ 33b47ea792SXu Ziyuan #define CONFIG_SYS_TEXT_BASE 0x00000000 34b47ea792SXu Ziyuan #else 3517aa548cSSimon Glass #define CONFIG_SYS_TEXT_BASE 0x00100000 36b47ea792SXu Ziyuan #endif 3717aa548cSSimon Glass #define CONFIG_SYS_INIT_SP_ADDR 0x00100000 3817aa548cSSimon Glass #define CONFIG_SYS_LOAD_ADDR 0x00800800 3917aa548cSSimon Glass #define CONFIG_SPL_STACK 0xff718000 4017aa548cSSimon Glass #define CONFIG_SPL_TEXT_BASE 0xff704004 4117aa548cSSimon Glass 4217aa548cSSimon Glass /* MMC/SD IP block */ 4317aa548cSSimon Glass #define CONFIG_GENERIC_MMC 4417aa548cSSimon Glass #define CONFIG_BOUNCE_BUFFER 4517aa548cSSimon Glass 4617aa548cSSimon Glass #define CONFIG_FAT_WRITE 4717aa548cSSimon Glass #define CONFIG_PARTITION_UUIDS 4817aa548cSSimon Glass #define CONFIG_CMD_PART 4917aa548cSSimon Glass 5017aa548cSSimon Glass /* RAW SD card / eMMC locations. */ 5117aa548cSSimon Glass #define CONFIG_SYS_SPI_U_BOOT_OFFS (128 << 10) 5217aa548cSSimon Glass 5317aa548cSSimon Glass /* FAT sd card locations. */ 5417aa548cSSimon Glass #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 5517aa548cSSimon Glass #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" 5617aa548cSSimon Glass 5717aa548cSSimon Glass #define CONFIG_SYS_SDRAM_BASE 0 5817aa548cSSimon Glass #define CONFIG_NR_DRAM_BANKS 1 5917aa548cSSimon Glass #define SDRAM_BANK_SIZE (2UL << 30) 6017aa548cSSimon Glass 6117aa548cSSimon Glass #define CONFIG_SPI_FLASH 6217aa548cSSimon Glass #define CONFIG_SPI 6317aa548cSSimon Glass #define CONFIG_SF_DEFAULT_SPEED 20000000 6417aa548cSSimon Glass 651743d0baSjk.kernel@gmail.com #ifndef CONFIG_SPL_BUILD 66266c8fadSXu Ziyuan /* usb otg */ 67266c8fadSXu Ziyuan #define CONFIG_USB_GADGET 68266c8fadSXu Ziyuan #define CONFIG_USB_GADGET_DUALSPEED 69266c8fadSXu Ziyuan #define CONFIG_USB_GADGET_DWC2_OTG 70266c8fadSXu Ziyuan #define CONFIG_ROCKCHIP_USB2_PHY 71266c8fadSXu Ziyuan #define CONFIG_USB_GADGET_VBUS_DRAW 0 72266c8fadSXu Ziyuan 73266c8fadSXu Ziyuan /* fastboot */ 74266c8fadSXu Ziyuan #define CONFIG_CMD_FASTBOOT 75266c8fadSXu Ziyuan #define CONFIG_USB_FUNCTION_FASTBOOT 76266c8fadSXu Ziyuan #define CONFIG_FASTBOOT_FLASH 77266c8fadSXu Ziyuan #define CONFIG_FASTBOOT_FLASH_MMC_DEV 1 /* eMMC */ 78f75711aaSjk.kernel@gmail.com #define CONFIG_FASTBOOT_BUF_ADDR CONFIG_SYS_LOAD_ADDR 79266c8fadSXu Ziyuan #define CONFIG_FASTBOOT_BUF_SIZE 0x08000000 80266c8fadSXu Ziyuan 81b9f9339bSXu Ziyuan /* usb mass storage */ 82b9f9339bSXu Ziyuan #define CONFIG_USB_FUNCTION_MASS_STORAGE 83b9f9339bSXu Ziyuan #define CONFIG_CMD_USB_MASS_STORAGE 84b9f9339bSXu Ziyuan 85266c8fadSXu Ziyuan #define CONFIG_USB_GADGET_DOWNLOAD 86266c8fadSXu Ziyuan #define CONFIG_G_DNL_MANUFACTURER "Rockchip" 87266c8fadSXu Ziyuan #define CONFIG_G_DNL_VENDOR_NUM 0x2207 88266c8fadSXu Ziyuan #define CONFIG_G_DNL_PRODUCT_NUM 0x320a 89266c8fadSXu Ziyuan 90*f57f35a8SKever Yang /* usb host support */ 91*f57f35a8SKever Yang #ifdef CONFIG_CMD_USB 92*f57f35a8SKever Yang #define CONFIG_USB_DWC2 93*f57f35a8SKever Yang #define CONFIG_USB_HOST_ETHER 94*f57f35a8SKever Yang #define CONFIG_USB_ETHER_SMSC95XX 95*f57f35a8SKever Yang #define CONFIG_USB_ETHER_ASIX 96*f57f35a8SKever Yang #endif 976460fc42SSjoerd Simons #define ENV_MEM_LAYOUT_SETTINGS \ 986460fc42SSjoerd Simons "scriptaddr=0x00000000\0" \ 996460fc42SSjoerd Simons "pxefile_addr_r=0x00100000\0" \ 1006460fc42SSjoerd Simons "fdt_addr_r=0x01f00000\0" \ 1016460fc42SSjoerd Simons "kernel_addr_r=0x02000000\0" \ 1026460fc42SSjoerd Simons "ramdisk_addr_r=0x04000000\0" 1036460fc42SSjoerd Simons 1046460fc42SSjoerd Simons #include <config_distro_bootcmd.h> 1056460fc42SSjoerd Simons 10660169826SSandy Patterson /* Linux fails to load the fdt if it's loaded above 256M on a Rock 2 board, so 1076460fc42SSjoerd Simons * limit the fdt reallocation to that */ 1086460fc42SSjoerd Simons #define CONFIG_EXTRA_ENV_SETTINGS \ 10960169826SSandy Patterson "fdt_high=0x0fffffff\0" \ 11060169826SSandy Patterson "initrd_high=0x0fffffff\0" \ 1116ead8bd7SXu Ziyuan "partitions=" PARTS_DEFAULT \ 1126460fc42SSjoerd Simons ENV_MEM_LAYOUT_SETTINGS \ 11327a1961dSSimon Glass ROCKCHIP_DEVICE_SETTINGS \ 1146460fc42SSjoerd Simons BOOTENV 11517aa548cSSimon Glass #endif 11617aa548cSSimon Glass 11767171e13SJacob Chen #define CONFIG_BOARD_LATE_INIT 11867171e13SJacob Chen #define CONFIG_PREBOOT 11967171e13SJacob Chen 12017aa548cSSimon Glass #endif 121