3.4 KiB
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 同步、构建、设备操作和发布仍遵守原有审批与证据规则。