一键导入
jetson-customize-mgbe
Enable Jetson Thor 25G/10G/1G MGBE QSFP via kernel-DT overlay. Do NOT use for UPHY lane allocation or ODMDATA edits.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Enable Jetson Thor 25G/10G/1G MGBE QSFP via kernel-DT overlay. Do NOT use for UPHY lane allocation or ODMDATA edits.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | jetson-customize-mgbe |
| description | Enable Jetson Thor 25G/10G/1G MGBE QSFP via kernel-DT overlay. Do NOT use for UPHY lane allocation or ODMDATA edits. |
| version | 0.0.1 |
| license | Apache-2.0 |
| metadata | {"data-classification":"public","author":"Jetson Team","tags":["bsp","phase-2","io","mgbe","ethernet"],"domain":"meta","permissions":{"file_read":["{workspace}/target-platform/","{source.root_path}/","{bsp_image.root_path}/Linux_for_Tegra/","{documents.root_path}/"],"file_write":["{workspace}/target-platform/","{source.root_path}/bsp_sources/hardware/nvidia/"],"shell":["dtc","fdtoverlay","cpp","git"]}} |
Thor T264 exposes mgbe0..mgbe3. On a custom carrier, the 25G QSFP cage
(or 10G / 1G fiber path) is wired to one of them through SerDes — with
or without an external MDIO PHY in front of the cage. This skill
renders the kernel-DT overlay that pairs the BPMP allocation with
kernel-side status="okay" + PHY plumbing on &mgbeN.
Out of scope:
/jetson-customize-uphy. Refuse if
the chosen uphy1-config-N doesn't allocate the target MGBE.mgbeN-speed-*, sub-node mgbeN_status=*) —
owned by /jetson-customize-uphy in its single atomic ODMDATA
commit. This skill MUST NOT touch ODMDATA=.Output is one commit to the composite custom overlay .dts in the
bsp_sources/ hardware repo. /jetson-build-source compiles the
composite to .dtbo and owns its Makefile + flash-conf registration.
ip link show mgbe<N> reports state DOWN
or NO-CARRIER on the configured controller, OR the controller
never appears at all.jetson-customize-uphy ran with uphy1-config-8 (or another config
allocating MGBE) and you now need to bring up the per-controller
side.Prerequisites:
reference_devkit: (Thor) +
custom_carrier: blocks.<source.root_path>/Linux_for_Tegra/.git exists
(/jetson-init-source)./jetson-derive-carrier has run — carrier flash-conf fork is in
the overlay tracker./jetson-customize-uphy chose a UPHY config that allocates the target
MGBE controller's lanes (uphy1-config-8 on Thor for MGBE0..3 25G).custom_carrier: is present, both
documents.custom_carrier_schematic AND
documents.custom_carrier_pinmux_xls are REQUIRED. Refuse the run
if either is missing — MGBE routing on a custom carrier cannot be
guessed. Reference-devkit-only profiles skip this check.dtc on PATH.See references/procedure.md for the full step-by-step procedure (Steps 1–8). Summary:
questions.json (controller, phy_mode, attach kind, I²C bus/addr, reset GPIO, compatible_list).pin_verifier.py for MDC/MDIO/RESET/INT; surface mismatches and route to /jetson-customize-pinmux./jetson-customize-uphy. Step 5 only records the BPMP DTB token-form inspection (sub-node vs top-level) in notes[] for audit..dts; obey the /* custom-bsp: mgbe:mgbe... */ marker contract; run the cpp/dtc/fdtoverlay pre-flight.<profile-stem>.jetson-customize-mgbe.json and emit the one-line + table summary, then drive the downstream chain via sequential AskUserQuestion prompts per references/procedure.md Step 8. Never substitute a printed "Next step: …" line for the prompts./mgbe/mgbe@N subtree — only
mgbe<N>-speed under /uphy. The mgbe<N>_status=disabled
sub-node token is silently rejected on these releases; the whole
ODMDATA line is then dropped at flash time. Always decompile BPMP
DTB (Step 3) before emitting; use the top-level dashed form
(mgbe<N>-speed-del to remove, mgbe<N>-speed-25G to set) when
the sub-node isn't there. Same wrong-form failure surface as
jetson-customize-uphy.mdio child needs both #address-cells = <1> AND
#size-cells = <0> when phy_attach_kind=="phy". Missing either
→ kernel rejects phy@<addr> reg property at probe; MGBE never
comes up.compatible must intersect live DT compatible.
UEFI plugin-manager filters by compatible match. A mismatched
overlay is silently skipped — flash succeeds, MGBE stays disabled,
no error in dmesg. Always sanity-check against
/proc/device-tree/compatible on a booted reference DUT.OVERLAY_DTB_FILE ordering is jetson-build-source's problem,
not this skill's. This skill never touches the carrier flash
conf. The composite custom overlay is registered (by
/jetson-build-source Step 5.0a) AFTER the platform
*-dynamic.dtbo, which is the correct ordering. If you find
yourself appending OVERLAY_DTB_FILE+= in this skill, you're
duplicating ownership — stop, and let the build skill do it.jetson-customize-uphy's job. If the chosen
uphy1-config-N doesn't allocate lanes for the target MGBE
controller, BL31 SError (fmon_update_config: detected fault 0x80) on cold boot. Always run /jetson-customize-uphy first; cite the
chosen uphy1-config-N in this skill's run-summary notes[].jetson-customize-uphy: mgbe<N>_status=disabled for a
controller that's already disabled in BPMP DTB is a no-op the
parser may treat as ambiguous → drops the rest of the ODMDATA
line. Disable via the kernel-DT overlay (status="disabled") only.<bsp_image.root_path>. All
edits land in the overlay tracker / bsp_sources mono-repo under
the pristine + customization commit pattern.jetson-customize-uphy: ODMDATA + overlay .dts + two git
commits are the device-facing outputs; the sidecar is for tooling
and idempotency only.questions.json — Q-1..Q-8 prompt schema
consumed by Step 2.../../scripts/pin_verifier.py
— shared HSIO pin verifier (Step 4).../../references/platform_template.yaml
— documents: block consumed by Step 1.../../context/bsp-customization-workflow.md
— overlay edit protocol (batched pristine + customization commit).../jetson-customize-uphy/SKILL.md — sibling
skill that owns UPHY lane allocation. Must run before this skill to
set uphy1-config-N for MGBE-allocated configurations.../jetson-customize-pinmux/SKILL.md —
sibling skill invoked by Step 4 (with operator confirmation) to
fix pin SFIO mismatches.../jetson-derive-carrier/SKILL.md
— must run first; produces the carrier flash-conf fork edited in
Step 5 and the carrier base overlay this skill orders after.../jetson-init-source/SKILL.md —
produces the overlay tracker + bsp_sources repo this skill commits
into.LP, MILP, and QP (beta) with cuOpt — Python, C, and CLI. Use when the user is solving LP, MILP, or QP with any cuOpt interface.
Guides Holoscan SDK installation: inspects the host, assesses platform compatibility, recommends an install method, and delegates to the matching install skill.
Use when asked to run deep research or AI-Q research through a reachable NVIDIA AI-Q Blueprint backend.
Trace and interpret the Pareto frontier across competing objectives using repeated single-objective cuOpt solves (weighted-sum and ε-constraint).
Use when running people attribute search (PAS) image augmentation and auto-labeling workflows on OSMO: flow selection, preflight, submit-time interpolation, monitoring, and output retrieval. Trigger keywords: people attribute search, PAS, person augmentation, attribute search, person re-identification, clothing augmentation, person crop augmentation.
Run end-to-end calibration on the shipped sample dataset (sdg_08_2_sample_data_010926.zip) against a running AMC microservice. Use when user says 'test sample dataset', 'run sample calibration', 'verify AMC install', or 'launch and test'.