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 103709844fSAlbert ARIBAUD #define CONFIG_SYS_CACHELINE_SIZE 64 113709844fSAlbert ARIBAUD 1217aa548cSSimon Glass #include <asm/arch/hardware.h> 1317aa548cSSimon Glass 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 #define CONFIG_DISPLAY_BOARDINFO 2317aa548cSSimon Glass 2417aa548cSSimon Glass #define CONFIG_SYS_TIMER_RATE (24 * 1000 * 1000) 25cc2244b8Shuang lin #define CONFIG_SYS_TIMER_BASE 0xff810020 /* TIMER7 */ 26cc2244b8Shuang lin #define CONFIG_SYS_TIMER_COUNTER (CONFIG_SYS_TIMER_BASE + 8) 2717aa548cSSimon Glass 2817aa548cSSimon Glass #define CONFIG_SPL_FRAMEWORK 2979d020eeSSimon Glass #define CONFIG_SPL_DRIVERS_MISC_SUPPORT 3017aa548cSSimon Glass #define CONFIG_SPL_LIBCOMMON_SUPPORT 3117aa548cSSimon Glass #define CONFIG_SPL_LIBGENERIC_SUPPORT 3217aa548cSSimon Glass #define CONFIG_SPL_SERIAL_SUPPORT 3317aa548cSSimon Glass #define CONFIG_SYS_NS16550_MEM32 3417aa548cSSimon Glass #define CONFIG_SPL_BOARD_INIT 3517aa548cSSimon Glass 36b47ea792SXu Ziyuan #ifdef CONFIG_ROCKCHIP_SPL_BACK_TO_BROM 37b47ea792SXu Ziyuan /* Bootrom will load u-boot binary to 0x0 once return from SPL */ 38b47ea792SXu Ziyuan #define CONFIG_SYS_TEXT_BASE 0x00000000 39b47ea792SXu Ziyuan #else 4017aa548cSSimon Glass #define CONFIG_SYS_TEXT_BASE 0x00100000 41b47ea792SXu Ziyuan #endif 4217aa548cSSimon Glass #define CONFIG_SYS_INIT_SP_ADDR 0x00100000 4317aa548cSSimon Glass #define CONFIG_SYS_LOAD_ADDR 0x00800800 4417aa548cSSimon Glass #define CONFIG_SPL_STACK 0xff718000 4517aa548cSSimon Glass #define CONFIG_SPL_TEXT_BASE 0xff704004 4617aa548cSSimon Glass 4727a1961dSSimon Glass #define CONFIG_SILENT_CONSOLE 4827a1961dSSimon Glass #ifndef CONFIG_SPL_BUILD 4927a1961dSSimon Glass # define CONFIG_SYS_CONSOLE_IS_IN_ENV 5027a1961dSSimon Glass # define CONFIG_CONSOLE_MUX 5127a1961dSSimon Glass #endif 5227a1961dSSimon Glass 5317aa548cSSimon Glass /* MMC/SD IP block */ 5417aa548cSSimon Glass #define CONFIG_MMC 5517aa548cSSimon Glass #define CONFIG_GENERIC_MMC 5617aa548cSSimon Glass #define CONFIG_DWMMC 5717aa548cSSimon Glass #define CONFIG_BOUNCE_BUFFER 5817aa548cSSimon Glass 5917aa548cSSimon Glass #define CONFIG_FAT_WRITE 6017aa548cSSimon Glass #define CONFIG_PARTITION_UUIDS 6117aa548cSSimon Glass #define CONFIG_CMD_PART 6217aa548cSSimon Glass 6317aa548cSSimon Glass /* RAW SD card / eMMC locations. */ 6417aa548cSSimon Glass #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 256 6517aa548cSSimon Glass #define CONFIG_SYS_SPI_U_BOOT_OFFS (128 << 10) 6617aa548cSSimon Glass 6717aa548cSSimon Glass /* FAT sd card locations. */ 6817aa548cSSimon Glass #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 6917aa548cSSimon Glass #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" 7017aa548cSSimon Glass 7117aa548cSSimon Glass #define CONFIG_SPL_PINCTRL_SUPPORT 7217aa548cSSimon Glass #define CONFIG_SPL_RAM_SUPPORT 7317aa548cSSimon Glass #define CONFIG_SPL_DRIVERS_MISC_SUPPORT 7417aa548cSSimon Glass 7517aa548cSSimon Glass #define CONFIG_SYS_SDRAM_BASE 0 7617aa548cSSimon Glass #define CONFIG_NR_DRAM_BANKS 1 7717aa548cSSimon Glass #define SDRAM_BANK_SIZE (2UL << 30) 7817aa548cSSimon Glass 7917aa548cSSimon Glass #define CONFIG_SPI_FLASH 8017aa548cSSimon Glass #define CONFIG_SPI 8117aa548cSSimon Glass #define CONFIG_SF_DEFAULT_SPEED 20000000 8217aa548cSSimon Glass 831743d0baSjk.kernel@gmail.com #ifndef CONFIG_SPL_BUILD 84266c8fadSXu Ziyuan /* usb otg */ 85266c8fadSXu Ziyuan #define CONFIG_USB_GADGET 86266c8fadSXu Ziyuan #define CONFIG_USB_GADGET_DUALSPEED 87266c8fadSXu Ziyuan #define CONFIG_USB_GADGET_DWC2_OTG 88266c8fadSXu Ziyuan #define CONFIG_ROCKCHIP_USB2_PHY 89266c8fadSXu Ziyuan #define CONFIG_USB_GADGET_VBUS_DRAW 0 90266c8fadSXu Ziyuan 91266c8fadSXu Ziyuan /* fastboot */ 92266c8fadSXu Ziyuan #define CONFIG_CMD_FASTBOOT 93266c8fadSXu Ziyuan #define CONFIG_USB_FUNCTION_FASTBOOT 94266c8fadSXu Ziyuan #define CONFIG_FASTBOOT_FLASH 95266c8fadSXu Ziyuan #define CONFIG_FASTBOOT_FLASH_MMC_DEV 1 /* eMMC */ 96f75711aaSjk.kernel@gmail.com #define CONFIG_FASTBOOT_BUF_ADDR CONFIG_SYS_LOAD_ADDR 97266c8fadSXu Ziyuan #define CONFIG_FASTBOOT_BUF_SIZE 0x08000000 98266c8fadSXu Ziyuan 99*b9f9339bSXu Ziyuan /* usb mass storage */ 100*b9f9339bSXu Ziyuan #define CONFIG_USB_FUNCTION_MASS_STORAGE 101*b9f9339bSXu Ziyuan #define CONFIG_CMD_USB_MASS_STORAGE 102*b9f9339bSXu Ziyuan 103266c8fadSXu Ziyuan #define CONFIG_USB_GADGET_DOWNLOAD 104266c8fadSXu Ziyuan #define CONFIG_G_DNL_MANUFACTURER "Rockchip" 105266c8fadSXu Ziyuan #define CONFIG_G_DNL_VENDOR_NUM 0x2207 106266c8fadSXu Ziyuan #define CONFIG_G_DNL_PRODUCT_NUM 0x320a 107266c8fadSXu Ziyuan 108266c8fadSXu Ziyuan /* Enable gpt partition table */ 109266c8fadSXu Ziyuan #define CONFIG_CMD_GPT 110266c8fadSXu Ziyuan 11117aa548cSSimon Glass #include <config_distro_defaults.h> 1126460fc42SSjoerd Simons 1136460fc42SSjoerd Simons #define ENV_MEM_LAYOUT_SETTINGS \ 1146460fc42SSjoerd Simons "scriptaddr=0x00000000\0" \ 1156460fc42SSjoerd Simons "pxefile_addr_r=0x00100000\0" \ 1166460fc42SSjoerd Simons "fdt_addr_r=0x01f00000\0" \ 1176460fc42SSjoerd Simons "kernel_addr_r=0x02000000\0" \ 1186460fc42SSjoerd Simons "ramdisk_addr_r=0x04000000\0" 1196460fc42SSjoerd Simons 1206ead8bd7SXu Ziyuan #define CONFIG_RANDOM_UUID 1216ead8bd7SXu Ziyuan #define PARTS_DEFAULT \ 1226ead8bd7SXu Ziyuan "uuid_disk=${uuid_gpt_disk};" \ 1236ead8bd7SXu Ziyuan "name=boot,start=8M,size=64M,bootable,uuid=${uuid_gpt_boot};" \ 1246ead8bd7SXu Ziyuan "name=rootfs,size=-,uuid=${uuid_gpt_rootfs};\0" \ 1256ead8bd7SXu Ziyuan 1266460fc42SSjoerd Simons /* First try to boot from SD (index 0), then eMMC (index 1 */ 1276460fc42SSjoerd Simons #define BOOT_TARGET_DEVICES(func) \ 1286460fc42SSjoerd Simons func(MMC, mmc, 0) \ 1296460fc42SSjoerd Simons func(MMC, mmc, 1) 1306460fc42SSjoerd Simons 1316460fc42SSjoerd Simons #include <config_distro_bootcmd.h> 1326460fc42SSjoerd Simons 1336460fc42SSjoerd Simons /* Linux fails to load the fdt if it's loaded above 512M on a Rock 2 board, so 1346460fc42SSjoerd Simons * limit the fdt reallocation to that */ 1356460fc42SSjoerd Simons #define CONFIG_EXTRA_ENV_SETTINGS \ 1366460fc42SSjoerd Simons "fdt_high=0x1fffffff\0" \ 1379550e799SSjoerd Simons "initrd_high=0x1fffffff\0" \ 1386ead8bd7SXu Ziyuan "partitions=" PARTS_DEFAULT \ 1396460fc42SSjoerd Simons ENV_MEM_LAYOUT_SETTINGS \ 14027a1961dSSimon Glass ROCKCHIP_DEVICE_SETTINGS \ 1416460fc42SSjoerd Simons BOOTENV 14217aa548cSSimon Glass #endif 14317aa548cSSimon Glass 14417aa548cSSimon Glass #endif 145