appfs初步支持

This commit is contained in:
zhangzheng
2025-01-21 16:20:51 +08:00
parent ed9e0cd47e
commit a8dcccfd7b
106 changed files with 11810 additions and 449 deletions

View File

@@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 3.13)
math(EXPR BOOTFS_OFFSET "${CONFIG_BOOTSTRAP_TEXT_SIZE} + ${CONFIG_KNL_TEXT_SIZE} + ${CONFIG_DTBO_TEXT_SIZE}")
math(EXPR KNL_OFFSET "${CONFIG_BOOTSTRAP_TEXT_SIZE} + ${CONFIG_DTBO_TEXT_SIZE}")
math(EXPR APPFS_IMG_SIZE "${CONFIG_SYS_TEXT_SIZE} - ${BOOTFS_OFFSET}")
add_custom_target(
mkrtos_img_dump ALL
COMMAND
@@ -12,18 +12,22 @@ add_custom_target(
COMMAND
ls | cpio -H newc -o > ${CMAKE_SOURCE_DIR}/build/output/rootfs.cpio
COMMAND
${CMAKE_SOURCE_DIR}/mkrtos_user/server/fs/appfs/src/build/appfs -g ${CMAKE_SOURCE_DIR}/build/output/cpio -o ../appfs.img -s ${APPFS_IMG_SIZE}
COMMAND
srec_cat -output ${CMAKE_SOURCE_DIR}/build/output/kernel.img -binary
${CMAKE_SOURCE_DIR}/build/output/bootstrap -binary -offset 0x0
${CMAKE_SOURCE_DIR}/build/output/dtbo -binary -offset ${CONFIG_BOOTSTRAP_TEXT_SIZE}
${CMAKE_SOURCE_DIR}/build/output/mkrtos -binary -offset ${KNL_OFFSET}
${CMAKE_SOURCE_DIR}/build/output/rootfs.cpio -binary -offset ${BOOTFS_OFFSET}
${CMAKE_SOURCE_DIR}/build/output/appfs.img -binary -offset ${BOOTFS_OFFSET}
COMMAND
${CMAKE_COMMAND} -E copy ${CMAKE_SOURCE_DIR}/build/output/kernel.img ${CMAKE_SOURCE_DIR}/build/output/kernel.bin
COMMAND
${CMAKE_OBJCOPY} -I binary -O elf32-littlearm -B arm ${CMAKE_SOURCE_DIR}/build/output/kernel.img
${CMAKE_SOURCE_DIR}/build/output/kernel.img.out --rename-section .data=.text
COMMAND
${CMAKE_OBJCOPY} --change-section-address .text=${CONFIG_SYS_TEXT_ADDR} ${CMAKE_SOURCE_DIR}/build/output/kernel.img.out
${CMAKE_OBJCOPY} --change-section-address .text=${CONFIG_SYS_TEXT_ADDR} ${CMAKE_SOURCE_DIR}/build/output/kernel.img.out
#以下命令用于生成binutils链接需要的库
COMMAND
cd ../../
COMMAND