Agent Skills
返回列表
💻

Jetson Pinmux 引脚定制

开发编程 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @org-02qudk26/jetson-customize-pinmux。

技能介绍

要解决什么问题

在 Jetson 定制载板上,每个 CVM 引脚该走哪条 SFIO、输入还是输出、上电初始电平,以及哪些焊盘还能改上拉/驱动/开漏——这些决策都写在 NVIDIA 的 Tegra pinmux 电子表格(.xlsm)里。和 camera、PCIe 那类可以走内核 DT 叠加的技能不同,pinmux 没有 OVERLAY_DTB 表面,也没有 ODMDATA 编辑:烧录时真正生效的是三块 BCT DTSI(pinmux、gpio、padvoltage),由载板配置里的 PINMUX_CONFIG= / GPIOINT_CONFIG= / PMC_CONFIG= 引用(通常由 /jetson-derive-carrier 写好)。若你仍在上游 DevKit 的 .dtsi 里手改引脚,或 XLSM 与树里文件对不上,HSIO 兄弟技能里的 pin_verifier.py 也会报引脚不匹配。

技能如何工作

本技能把 .xlsm 当作唯一真相源,用 scripts/modify_pinmux.py(依赖 openpyxl>=3.1)完成整条链路:

  • probe:把 XLSM 解析成按载板的 /pinmap/*.json 和会话垫片
  • lookup:用 CVM 引脚名、Verilog 名、信号或 DT 引脚等自由查询,列出支持的 SFIO、默认值,以及 configurable: yes/no(决定是否要问 Q4–Q6)
  • set-pin:通过 AskUserQuestion 走 Q1–Q6——Q1–Q3(sfio / direction / initialstate)必问;Q4–Q6(pull / drivetype / open_drain)仅在 BD\/BI\ 等可配置焊盘上才问;tristate 与 e_input 从 direction 推导,不单独提示
  • generate:一次性写出 tegra-mb1-bct-{pinmux,gpio,padvoltage}-*.dtsi 到 /Linux_for_Tegra/bootloader/ 根目录(不是 bootloader/generic/BCT/)

生成后还需把 /jetson-derive-carrier 在 bootloader/generic/BCT/ 下的 .dts 包装器里 #include 改成新文件的裸基名,与三块 DTSI 放在同一次定制提交里。编辑带 // custom-bsp: pinmux 标记,重复 generate 应幂等更新而非重复块。

边界与注意

  • 先决条件:活动配置文件、/Linux_for_Tegra/ 叠加仓库、/jetson-derive-carrier 已跑过,且 pinmux .xlsm 已在 documents.custom_carrier_pinmux_xls(或备用路径)注册。
  • 功能固定焊盘(如 LP5XA_*、UPHYDS_*、BDMIPI16X_* 等)会跳过 Q4–Q6;对它们问上拉/开漏会被脚本静默丢弃。
  • sfio=gpio 要求 pinmap 里存在可解析的 gpio=GPIOn_PD.NN;否则应明确拒绝,不要静默改别的 SFIO。
  • 部分 Thor SKU 存在多个 pinmux DTSI 变体;缺失引脚块时脚本可能只给 warnings,需对照载板引用的变体排查。

使用场景

  • 已通过 /jetson-derive-carrier 派生定制载板,需按新版 pinmux .xlsm 重新生成 pinmux/gpio/padvoltage 三块 BCT DTSI
  • 某 CVM 引脚要在 GPIO 与外设 SFIO 之间切换,需走 lookup 查可选 SFIO 并用 Q1–Q3 设方向与上电初始状态
  • jetson-customize-pcie 或 camera 技能里 pin_verifier 报 HSIO 引脚不匹配,希望回到 XLSM 真相源改引脚并写回 bootloader
  • 载板 bring-up 前要把电子表格里客户选定的功能批量落到树里,且 generate 后修正 generic/BCT 下 .dts 包装器的 #include 裸基名

适合人员

  • 维护 Linux_for_Tegra 叠加仓库、负责 PINMUX_CONFIG 引用链路的 Jetson 定制 BSP 工程师
  • 硬件同事已定稿 pinmux 电子表格,需要把每脚 SFIO/方向/初始状态落到 BCT 而不手改上游 DevKit .dtsi
  • 在 jetson-customize-camera/pcie/usb 工作流中遇到引脚校验失败、希望按 Q1–Q6 规则修 pinmux 的嵌入式集成工程师
  • 刚用 /jetson-link-docs 绑定 documents.custom_carrier_pinmux_xls、准备首次 probe→generate 的新载板项目负责人