1e1cfe1c9SJoseph Chen /* SPDX-License-Identifier: GPL-2.0+ */ 2e1cfe1c9SJoseph Chen /* 3e1cfe1c9SJoseph Chen * (C) Copyright 2021 Rockchip Electronics Co., Ltd 4e1cfe1c9SJoseph Chen * 5e1cfe1c9SJoseph Chen */ 6e1cfe1c9SJoseph Chen 7e1cfe1c9SJoseph Chen #ifndef __CONFIG_RK3588_COMMON_H 8e1cfe1c9SJoseph Chen #define __CONFIG_RK3588_COMMON_H 9e1cfe1c9SJoseph Chen 10e1cfe1c9SJoseph Chen #include "rockchip-common.h" 11e1cfe1c9SJoseph Chen 12e1cfe1c9SJoseph Chen #define CONFIG_SPL_FRAMEWORK 13e1cfe1c9SJoseph Chen #define CONFIG_SPL_TEXT_BASE 0x00000000 14e1cfe1c9SJoseph Chen #define CONFIG_SPL_MAX_SIZE 0x00040000 15e1cfe1c9SJoseph Chen #define CONFIG_SPL_BSS_START_ADDR 0x03fe0000 16e1cfe1c9SJoseph Chen #define CONFIG_SPL_BSS_MAX_SIZE 0x00010000 17e1cfe1c9SJoseph Chen #define CONFIG_SPL_STACK 0x03fe0000 18e1cfe1c9SJoseph Chen 19e1cfe1c9SJoseph Chen #define CONFIG_SYS_MALLOC_LEN (32 << 20) 20e1cfe1c9SJoseph Chen #define CONFIG_SYS_CBSIZE 1024 21e1cfe1c9SJoseph Chen #define CONFIG_SKIP_LOWLEVEL_INIT 22e1cfe1c9SJoseph Chen #define CONFIG_SYS_TEXT_BASE 0x00200000 23e1cfe1c9SJoseph Chen 24*77ed6a2bSJoseph Chen #define CONFIG_SYS_INIT_SP_ADDR 0x00600000 25*77ed6a2bSJoseph Chen #define CONFIG_SYS_LOAD_ADDR 0x00600800 26e1cfe1c9SJoseph Chen #define CONFIG_SYS_BOOTM_LEN (64 << 20) /* 64M */ 27e1cfe1c9SJoseph Chen #define COUNTER_FREQUENCY 24000000 28e1cfe1c9SJoseph Chen 29e1cfe1c9SJoseph Chen #define GICD_BASE 0xfe600000 30e1cfe1c9SJoseph Chen #define GICR_BASE 0xfe680000 31e1cfe1c9SJoseph Chen #define GICC_BASE 0xfe600000 32e1cfe1c9SJoseph Chen 339730632aSJason Zhu /* secure otp */ 349730632aSJason Zhu #define OTP_UBOOT_ROLLBACK_OFFSET 0x150 359730632aSJason Zhu #define OTP_UBOOT_ROLLBACK_WORDS 2 /* 64 bits, 2 words */ 369730632aSJason Zhu #define OTP_ALL_ONES_NUM_BITS 32 379730632aSJason Zhu #define OTP_SECURE_BOOT_ENABLE_ADDR 0x20 389730632aSJason Zhu #define OTP_SECURE_BOOT_ENABLE_SIZE 1 399730632aSJason Zhu #define OTP_RSA_HASH_ADDR 0x9c0 409730632aSJason Zhu #define OTP_RSA_HASH_SIZE 32 419730632aSJason Zhu 42e1cfe1c9SJoseph Chen /* MMC/SD IP block */ 43e1cfe1c9SJoseph Chen #define CONFIG_BOUNCE_BUFFER 44e1cfe1c9SJoseph Chen 45e1cfe1c9SJoseph Chen #define CONFIG_SYS_SDRAM_BASE 0 46e1cfe1c9SJoseph Chen #define SDRAM_MAX_SIZE 0xf0000000 47e1cfe1c9SJoseph Chen #define CONFIG_SYS_NONCACHED_MEMORY (1 << 20) /* 1 MiB */ 48e1cfe1c9SJoseph Chen 49e1cfe1c9SJoseph Chen #ifndef CONFIG_SPL_BUILD 50e1cfe1c9SJoseph Chen /* usb mass storage */ 51e1cfe1c9SJoseph Chen #define CONFIG_USB_FUNCTION_MASS_STORAGE 52e1cfe1c9SJoseph Chen #define CONFIG_ROCKUSB_G_DNL_PID 0x350b 53e1cfe1c9SJoseph Chen 54e1cfe1c9SJoseph Chen /* 55e1cfe1c9SJoseph Chen * decompressed kernel: 4M ~ 84M 563ee684f1SJoseph Chen * Why not start from 2M ? if kernel < 5.10 in Android image, 573ee684f1SJoseph Chen * the image header will use the 0x180000~0x200000, which is 583ee684f1SJoseph Chen * overlap with share memory region 0x100000~0x200000. 593ee684f1SJoseph Chen * 60bad05d5cSJoseph Chen * compressed kernel: 84M ~ 130M 61e1cfe1c9SJoseph Chen */ 62e1cfe1c9SJoseph Chen #define ENV_MEM_LAYOUT_SETTINGS \ 63e1cfe1c9SJoseph Chen "scriptaddr=0x00500000\0" \ 64e1cfe1c9SJoseph Chen "pxefile_addr_r=0x00600000\0" \ 65bad05d5cSJoseph Chen "fdt_addr_r=0x08300000\0" \ 66e1cfe1c9SJoseph Chen "kernel_addr_r=0x00400000\0" \ 67e1cfe1c9SJoseph Chen "kernel_addr_c=0x05480000\0" \ 68e1cfe1c9SJoseph Chen "ramdisk_addr_r=0x0a200000\0" 69e1cfe1c9SJoseph Chen 70e1cfe1c9SJoseph Chen #include <config_distro_bootcmd.h> 71e1cfe1c9SJoseph Chen 72e1cfe1c9SJoseph Chen #define CONFIG_EXTRA_ENV_SETTINGS \ 733f10ff45SJoseph Chen BOOTENV_SHARED_MTD \ 74e1cfe1c9SJoseph Chen ENV_MEM_LAYOUT_SETTINGS \ 75e1cfe1c9SJoseph Chen "partitions=" PARTS_RKIMG \ 76e1cfe1c9SJoseph Chen ROCKCHIP_DEVICE_SETTINGS \ 77e1cfe1c9SJoseph Chen RKIMG_DET_BOOTDEV \ 78e1cfe1c9SJoseph Chen BOOTENV 79e1cfe1c9SJoseph Chen #endif 80e1cfe1c9SJoseph Chen 81e1cfe1c9SJoseph Chen /* rockchip ohci host driver */ 82e1cfe1c9SJoseph Chen #define CONFIG_USB_OHCI_NEW 83e1cfe1c9SJoseph Chen #define CONFIG_SYS_USB_OHCI_MAX_ROOT_PORTS 1 84e1cfe1c9SJoseph Chen 85e1cfe1c9SJoseph Chen #define CONFIG_PREBOOT 86e1cfe1c9SJoseph Chen #define CONFIG_LIB_HW_RAND 87e1cfe1c9SJoseph Chen 88e1cfe1c9SJoseph Chen #endif 89