1 /* 2 * (C) Copyright 2016 Rockchip Electronics Co., Ltd 3 * 4 * SPDX-License-Identifier: GPL-2.0+ 5 */ 6 7 #ifndef _ROCKCHIP_COMMON_H_ 8 #define _ROCKCHIP_COMMON_H_ 9 #include <linux/sizes.h> 10 11 #define COUNTER_FREQUENCY 24000000 12 #define CONFIG_SYS_ARCH_TIMER 13 #define CONFIG_SYS_HZ_CLOCK 24000000 14 15 #define CONFIG_SYS_NS16550_MEM32 16 17 #ifndef CONFIG_SPL_BUILD 18 #include <config_distro_defaults.h> 19 20 /* First try to boot from SD (index 0), then eMMC (index 1) */ 21 #if CONFIG_IS_ENABLED(CMD_MMC) 22 #define BOOT_TARGET_MMC(func) \ 23 func(MMC, mmc, 0) \ 24 func(MMC, mmc, 1) 25 #else 26 #define BOOT_TARGET_MMC(func) 27 #endif 28 29 #if CONFIG_IS_ENABLED(CMD_USB) 30 #define BOOT_TARGET_USB(func) func(USB, usb, 0) 31 #else 32 #define BOOT_TARGET_USB(func) 33 #endif 34 35 #if CONFIG_IS_ENABLED(CMD_PXE) 36 #define BOOT_TARGET_PXE(func) func(PXE, pxe, na) 37 #else 38 #define BOOT_TARGET_PXE(func) 39 #endif 40 41 #if CONFIG_IS_ENABLED(CMD_DHCP) 42 #define BOOT_TARGET_DHCP(func) func(DHCP, dhcp, na) 43 #else 44 #define BOOT_TARGET_DHCP(func) 45 #endif 46 47 #define BOOT_TARGET_DEVICES(func) \ 48 BOOT_TARGET_MMC(func) \ 49 BOOT_TARGET_USB(func) \ 50 BOOT_TARGET_PXE(func) \ 51 BOOT_TARGET_DHCP(func) 52 53 #ifdef CONFIG_ARM64 54 #define ROOT_UUID "B921B045-1DF0-41C3-AF44-4C6F280D3FAE;\0" 55 #else 56 #define ROOT_UUID "69DAD710-2CE4-4E3C-B16C-21A1D49ABED3;\0" 57 #endif 58 #define PARTS_DEFAULT \ 59 "uuid_disk=${uuid_gpt_disk};" \ 60 "name=loader1,start=32K,size=4000K,uuid=${uuid_gpt_loader1};" \ 61 "name=loader2,start=8MB,size=4MB,uuid=${uuid_gpt_loader2};" \ 62 "name=trust,size=4M,uuid=${uuid_gpt_atf};" \ 63 "name=boot,size=112M,bootable,uuid=${uuid_gpt_boot};" \ 64 "name=rootfs,size=-,uuid="ROOT_UUID 65 66 #define PARTS_RKIMG \ 67 "uuid_disk=${uuid_gpt_disk};" \ 68 "name=uboot,start=8MB,size=4MB,uuid=${uuid_gpt_loader2};" \ 69 "name=trust,size=4M,uuid=${uuid_gpt_atf};" \ 70 "name=misc,size=4MB,uuid=${uuid_gpt_misc};" \ 71 "name=resource,size=16MB,uuid=${uuid_gpt_resource};" \ 72 "name=kernel,size=32M,uuid=${uuid_gpt_kernel};" \ 73 "name=boot,size=32M,bootable,uuid=${uuid_gpt_boot};" \ 74 "name=recovery,size=32M,uuid=${uuid_gpt_recovery};" \ 75 "name=backup,size=112M,uuid=${uuid_gpt_backup};" \ 76 "name=cache,size=512M,uuid=${uuid_gpt_cache};" \ 77 "name=system,size=2048M,uuid=${uuid_gpt_system};" \ 78 "name=metadata,size=16M,uuid=${uuid_gpt_metadata};" \ 79 "name=vendor,size=32M,uuid=${uuid_gpt_vendor};" \ 80 "name=oem,size=32M,uuid=${uuid_gpt_oem};" \ 81 "name=frp,size=512K,uuid=${uuid_gpt_frp};" \ 82 "name=security,size=2M,uuid=${uuid_gpt_security};" \ 83 "name=userdata,size=-,uuid=${uuid_gpt_userdata};\0" 84 85 #define RKIMG_BOOTCOMMAND \ 86 "if mmc dev 0; then setenv devtype mmc; setenv devnum 0;" \ 87 "else if rknand dev 0; then setenv devtype rknand; setenv devnum 0; fi;" \ 88 "fi; boot_android ${devtype} ${devnum};" \ 89 "bootrkp;" 90 91 #endif 92 93 #define CONFIG_DISPLAY_BOARDINFO_LATE 94 95 #endif /* _ROCKCHIP_COMMON_H_ */ 96