47 lines
3.4 KiB
Markdown
47 lines
3.4 KiB
Markdown
# BSP 调查范围与验证模式
|
||
|
||
调查、开发修改与原生构建写入按 [RES、SDK 与表述边界](res-sdk-boundary.md) 分开说明。下列读取范围不授予 SDK 编辑权限。
|
||
|
||
## 默认范围
|
||
|
||
默认只读取:
|
||
|
||
- 用户明确给出的原理图、GPIO List、规格书和需求清单;
|
||
- 当前 BSP Skill 的指令、脚本和 `references/gpio-pinout/` 内置资料;
|
||
- `~/EapilBsp/EMX2.0/EmxRes/<参考项目>`;
|
||
- 已确认后的目标 staging/正式项目;
|
||
- `EmxRes/tools/script_completion.sh` 及其为解释实际构建副作用所必需的精确相邻脚本;
|
||
- 构建后的 `/epbuild/EMX2.0/EmxRes/<目标项目>/imgs/<构建版本>`。
|
||
|
||
不得用 `find`、`rg` 或同类工具扫描整个用户主目录、整个 `EapilBsp`、整个 SDK 或无关项目。找不到资料时列出缺失项和建议的精确路径,不扩大搜索范围。用户主动收紧范围后立即采用更窄边界;报告曾经执行但被废弃的越界只读调查,不能写成“从未搜索”。
|
||
|
||
## EmxRes 配置模式(默认)
|
||
|
||
适用于用户只允许查看项目 Overlay 和统一编译的情况:
|
||
|
||
1. 人工分析只覆盖参考/目标项目中的 `buildEnvConfig.sh`、配置目录、`cvi_board_init.c`、板级 DTS/DTSI、defconfig、分区和同步脚本。
|
||
2. 不人工搜索 SDK 源码,也不据此声称完整 include 链已审计。
|
||
3. 项目最终化前允许声明“项目级静态检查通过”;不能声明最终 Kernel GPIO 占用已验证。
|
||
4. 任务需要构建产物时,预检通过后自动执行统一全量编译,并以实际编译成功和生成的最终 DTB/FIT 为生效证据。能从最终 DTB 可靠反编译时,核对目标 GPIO 消费者并保存结果;不能反编译时明确标记未验证。
|
||
|
||
该模式不会因为禁止人工读取 SDK 而阻塞项目创建,但会降低 DTS 结论的验证等级。
|
||
|
||
## CV181X 定点 SDK 只读核对(可选)
|
||
|
||
仅当用户明确提供 CV181X SDK 的精确根目录时使用。按 [CV181X 分目录与 SDK 只读核对](cv181x-sdk-readonly-review.md)比较项目与 SDK 的已知文件映射、生成配置及软链接目标;只访问映射到的文件,不遍历或搜索整个 SDK。结论仅代表当前磁盘快照,不意味着同步、构建或板上验证通过。若同步脚本或布局不符合已知契约,停止检查并报告,不猜测映射。
|
||
|
||
CV184X 有独立的 [单目录 SDK 只读核对](cv184x-sdk-readonly-review.md)。同样需要用户明确给出 SDK 根目录;只读核对不会运行 `EPSYNCSDKConfig.sh`、补丁脚本或构建。
|
||
|
||
## 完整 DTS 审核模式
|
||
|
||
仅在用户授权读取精确 SDK 基线路径时使用:
|
||
|
||
1. 从实际板级 DTS 开始递归解析有效 DTS/DTSI include 链和条件编译上下文。
|
||
2. 读取范围限于为该 build type 解析出的精确文件和必要的 Pinmux 定义;仍禁止扫描整个 SDK。
|
||
3. include 无法解析或上下文不唯一时,目标 GPIO 占用检查不得判为通过。
|
||
4. 本模式只授予只读分析;只有任务明确进入构建产物交付级别时,才按 BSP 构建规则自动执行标准全量编译。原生构建以外的 SDK 编辑不属于本工作包;确有需要时,先明确所有权及精确范围,另行确认。
|
||
|
||
## 模式记录
|
||
|
||
预检摘要和 `adaptation_report.md` 必须记录所选模式、允许路径、排除路径、已执行检查和结论上限。模式变化会使此前依赖更宽范围得出的未确认结论失效。
|