104e2aa7fSJoseph Chen /* 204e2aa7fSJoseph Chen * (C) Copyright 2022 Rockchip Electronics Co., Ltd 304e2aa7fSJoseph Chen * 404e2aa7fSJoseph Chen * SPDX-License-Identifier: GPL-2.0+ 504e2aa7fSJoseph Chen */ 604e2aa7fSJoseph Chen 704e2aa7fSJoseph Chen #ifndef __CONFIG_RV1106_COMMON_H 804e2aa7fSJoseph Chen #define __CONFIG_RV1106_COMMON_H 904e2aa7fSJoseph Chen 1004e2aa7fSJoseph Chen #include "rockchip-common.h" 1104e2aa7fSJoseph Chen 1204e2aa7fSJoseph Chen #define COUNTER_FREQUENCY 24000000 13197c3ff1SJoseph Chen #define CONFIG_SYS_MALLOC_LEN (16 << 20) 1404e2aa7fSJoseph Chen #define CONFIG_SYS_CBSIZE 1024 1504e2aa7fSJoseph Chen #define CONFIG_SYS_NS16550_MEM32 1604e2aa7fSJoseph Chen 17d8396f6fSJason Zhu #define CONFIG_SYS_TEXT_BASE 0x00200000 18d8396f6fSJason Zhu #define CONFIG_SYS_INIT_SP_ADDR 0x00400000 1904e2aa7fSJoseph Chen #define CONFIG_SYS_LOAD_ADDR 0x00e00800 2004e2aa7fSJoseph Chen #define CONFIG_SYS_BOOTM_LEN (64 << 20) 2104e2aa7fSJoseph Chen #define GICD_BASE 0xff1f1000 2204e2aa7fSJoseph Chen #define GICC_BASE 0xff1f2000 2304e2aa7fSJoseph Chen #define CONFIG_SYS_SDRAM_BASE 0 24731db449SJason Zhu #define SDRAM_MAX_SIZE 0xff000000 2504e2aa7fSJoseph Chen #define CONFIG_SYS_NONCACHED_MEMORY (1 << 20) /* 1 MiB */ 26731db449SJason Zhu #define CONFIG_PERIPH_DEVICE_START_ADDR (CONFIG_SYS_SDRAM_BASE + SDRAM_MAX_SIZE) 27731db449SJason Zhu #define CONFIG_PERIPH_DEVICE_END_ADDR SZ_4G 2804e2aa7fSJoseph Chen 2904e2aa7fSJoseph Chen /* SPL */ 3004e2aa7fSJoseph Chen #define CONFIG_SPL_FRAMEWORK 3104e2aa7fSJoseph Chen #define CONFIG_SPL_TEXT_BASE 0x00000000 3204e2aa7fSJoseph Chen #define CONFIG_SPL_MAX_SIZE 0x30000 33d8396f6fSJason Zhu #define CONFIG_SPL_BSS_START_ADDR 0x001fe000 3404e2aa7fSJoseph Chen #define CONFIG_SPL_BSS_MAX_SIZE 0x20000 35d8396f6fSJason Zhu #define CONFIG_SPL_STACK 0x001fe000 3604e2aa7fSJoseph Chen 3719b0168aSJason Zhu /* secure otp */ 3819b0168aSJason Zhu #define OTP_UBOOT_ROLLBACK_OFFSET 0xe0 3919b0168aSJason Zhu #define OTP_UBOOT_ROLLBACK_WORDS 2 /* 64 bits, 2 words */ 4019b0168aSJason Zhu #define OTP_ALL_ONES_NUM_BITS 32 4119b0168aSJason Zhu #define OTP_SECURE_BOOT_ENABLE_ADDR 0x80 4219b0168aSJason Zhu #define OTP_SECURE_BOOT_ENABLE_SIZE 2 4319b0168aSJason Zhu #define OTP_RSA_HASH_ADDR 0x90 4419b0168aSJason Zhu #define OTP_RSA_HASH_SIZE 32 4519b0168aSJason Zhu 4604e2aa7fSJoseph Chen /* MMC/SD IP block */ 4704e2aa7fSJoseph Chen #define CONFIG_BOUNCE_BUFFER 4804e2aa7fSJoseph Chen 4904e2aa7fSJoseph Chen #ifndef CONFIG_SPL_BUILD 5004e2aa7fSJoseph Chen /* usb mass storage */ 5104e2aa7fSJoseph Chen #define CONFIG_USB_FUNCTION_MASS_STORAGE 5204e2aa7fSJoseph Chen #define CONFIG_ROCKUSB_G_DNL_PID 0x110c 5304e2aa7fSJoseph Chen 54392b70deSJoseph Chen #define CONFIG_LIB_HW_RAND 5505a547d2SJoseph Chen #define CONFIG_PREBOOT 5605a547d2SJoseph Chen 577a93cfc7SJoseph Chen #if CONFIG_USB_FUNCTION_DFU 587a93cfc7SJoseph Chen #define CONFIG_SET_DFU_ALT_INFO 597a93cfc7SJoseph Chen #endif 607a93cfc7SJoseph Chen 61*10283f05SJoseph Chen #ifdef CONFIG_ENV_MEM_LAYOUT 62*10283f05SJoseph Chen #define ENV_MEM_LAYOUT_SETTINGS CONFIG_ENV_MEM_LAYOUT_SETTINGS 63*10283f05SJoseph Chen #else 64197c3ff1SJoseph Chen /* 65197c3ff1SJoseph Chen * Image: 0 - 8M 66197c3ff1SJoseph Chen * zImage: 8 - 12M 67197c3ff1SJoseph Chen * fdt: 12 - 13M 68197c3ff1SJoseph Chen * ramdisk: 14 ... 69197c3ff1SJoseph Chen */ 7004e2aa7fSJoseph Chen #define ENV_MEM_LAYOUT_SETTINGS \ 7104e2aa7fSJoseph Chen "scriptaddr=0x00b00000\0" \ 7204e2aa7fSJoseph Chen "pxefile_addr_r=0x00c00000\0" \ 73197c3ff1SJoseph Chen "fdt_addr_r=0x00c00000\0" \ 7404e2aa7fSJoseph Chen "kernel_addr_c=0x00808000\0" \ 7504e2aa7fSJoseph Chen "kernel_addr_r=0x00008000\0" \ 76197c3ff1SJoseph Chen "ramdisk_addr_r=0x000e00000\0" 77*10283f05SJoseph Chen #endif 7804e2aa7fSJoseph Chen 7904e2aa7fSJoseph Chen #define CONFIG_EXTRA_ENV_SETTINGS \ 8004e2aa7fSJoseph Chen ENV_MEM_LAYOUT_SETTINGS \ 8104e2aa7fSJoseph Chen ROCKCHIP_DEVICE_SETTINGS \ 8204e2aa7fSJoseph Chen RKIMG_DET_BOOTDEV 8304e2aa7fSJoseph Chen 8404e2aa7fSJoseph Chen #undef RKIMG_BOOTCOMMAND 8504e2aa7fSJoseph Chen #ifdef CONFIG_FIT_SIGNATURE 8604e2aa7fSJoseph Chen #define RKIMG_BOOTCOMMAND \ 8704e2aa7fSJoseph Chen "boot_fit;" 8804e2aa7fSJoseph Chen #else 8904e2aa7fSJoseph Chen #define RKIMG_BOOTCOMMAND \ 9004e2aa7fSJoseph Chen "boot_fit;" \ 9104e2aa7fSJoseph Chen "boot_android ${devtype} ${devnum};" 9204e2aa7fSJoseph Chen #endif 9305a547d2SJoseph Chen 9405a547d2SJoseph Chen /* Update define for tiny image */ 9505a547d2SJoseph Chen #ifdef CONFIG_ROCKCHIP_IMAGE_TINY 9605a547d2SJoseph Chen #undef RKIMG_BOOTCOMMAND 9705a547d2SJoseph Chen #undef RKIMG_DET_BOOTDEV 9805a547d2SJoseph Chen #undef CONFIG_EXTRA_ENV_SETTINGS 9905a547d2SJoseph Chen #undef CONFIG_AUTO_COMPLETE 10005a547d2SJoseph Chen #undef CONFIG_SYS_LONGHELP 10105a547d2SJoseph Chen #undef CONFIG_ZLIB 10205a547d2SJoseph Chen #undef CONFIG_GZIP 10305a547d2SJoseph Chen /* TODO: #define CONFIG_LIB_HW_RAND */ 10405a547d2SJoseph Chen 10505a547d2SJoseph Chen #define RKIMG_BOOTCOMMAND "boot_fit;" 10605a547d2SJoseph Chen #define CONFIG_EXTRA_ENV_SETTINGS ENV_MEM_LAYOUT_SETTINGS 10704e2aa7fSJoseph Chen #endif 10805a547d2SJoseph Chen #endif /* !CONFIG_SPL_BUILD */ 10904e2aa7fSJoseph Chen 11004e2aa7fSJoseph Chen #endif 111