Files
tangfahong ea4ff92835 chore(release): 1.0.1
明确 BSP 的 RES 开发范围和 SDK 构建写入边界;调整 CV184X 强制补丁预检并补齐构建交接测试。
2026-10-09 18:05:07 +08:00

3.4 KiB
Raw Permalink Blame History

CV181X 分目录与 SDK 只读核对

这份说明只适用于项目 buildEnvConfig.sh 指向 Cvitek CV181X、SPI NAND,并且板级配置分在 configs/kernel/、configs/uboot/ 的情况。CV184X 仍按原来的单板卡目录和 EPSYNCSDKConfig.sh 工作,不能套用本页的路径。

先确定改哪里

  • configs/uboot/<board_build_type>_defconfig 确定板型;同目录的 cvitek_<board_build_type>_defconfig 和 configs/kernel/ 中的对应 defconfig 必须成组存在。
  • U-Boot 板级初始化、分区表在当前 RES 项目的 configs/uboot/;Kernel defconfig、DTS/DTSI、memmap.py 在 configs/kernel/。开发只修改这些 RES 源文件;SDK 对应文件用于只读核对和原生构建同步,不直接编辑。范围说明按 RES、SDK 与表述边界 执行。
  • CONFIG_ENABLE_FREERTOS=y 只说明启用了 FreeRTOS 相关配置,不能单凭这一项认定交付形态是双系统。
  • 参考项目 CV1815JA_F36 只能作为已知实现的例子,不代表所有 CV181X 产品的分区、内存、GPIO 或传感器配置。

需要看 SDK 时

用户必须先给出精确 SDK 根目录。执行只读检查:

python3 <BSP Skill>/scripts/bsp/inspect_cv181x_sdk.py \
  --project <EmxRes 中的项目绝对路径> \
  --sdk-root <用户明确指定的 SDK 根目录绝对路径>

脚本先核对 EP_CHIP、SDK 版本、分目录布局和已知同步脚本,再比较项目文件与 SDK 对应文件。报告中的 sdk_copy_differs 表示当前内容不一致,不说明哪一份正确;shared_sdk_target 表示 SDK 板型文件实际是指向公共默认文件的软链接,后续复制可能影响别的板型;generated_config_differs 表示 SDK build/.config 与项目板级配置不一致,也可能只是 SDK 上次用于别的项目。对这些提示先核对使用的是哪个 SDK 和哪个构建版本,不擅自同步。软链接提示不能转化为默认替换链接、改写公共目标或备份恢复 SDK 的方案;先报告原生同步的实际目标和影响。

尤其要核对统一构建脚本里 defconfig 与 Ep_Uboot_Config_Func、Ep_Kernel_Config_Func 的先后。若先生成 .config 再同步项目配置,本次顶层配置可能仍是旧值;脚本会提示顺序风险,但不会代替真实构建。ep_kernel.sh、ep_uboot.sh 末尾若固定 exit 0,也不能只凭返回码宣称所有文件复制成功,应逐项核对源与 SDK 目标。

形成方案时要核对的关联项

  • 改内存:从项目 memmap.py 追到 SDK 当前目标和生成结果,说明 ION/CMA/RTOS 占用及总量;不要把 F36 的数值复制给别的板。
  • 改分区:把项目 XML、SDK 当前表、U-Boot 分区参数、rootfs A/B 实际 MTD 编号和最终镜像大小逐项对齐。若脚本固定按 MTD4/7 操作,分区顺序变化可能导致升级写错位置;未经确认不能自动调整。
  • 改驱动或传感器:确认 Kernel DTS、GPIO 初始化、相关模块构建开关(例如 BUILD_SDK_DRIVER)、镜像是否打包驱动,以及用户态是否还依赖原传感器。只改一处不能声称功能完成。

只读核对的结论上限是“发现项目与当前 SDK 的差异或风险”。未运行统一构建时不能写“构建通过”;未上板时不能写“硬件功能正常”。SDK 同步、构建、设备操作和发布仍遵守原有审批与证据规则。