doca-bf3-deployment
Use this skill for BlueField-3 (BF3) day-1 platform bring-up via the classic RShim/BFB path: pushing a BlueField bundle (BFB) to the DPU over RShim with bfb-install from the host, the host-to-DPU TMFIFO management channel (tmfifo_net0, the 192.168.100.x convention), RShim daemon state and console-over-rshim, DPU mode selection (DPU/embedded-function vs separated-host/NIC mode) via mlxconfig, post-BFB recovery, a six-state BlueField-state classifier, and verifying the install (cat /etc/mlnx-release plus version checks). Trigger even when the user does not say "BF3" — typical phrasings include {push a BFB to my BlueField-3}, {bfb-install exited 0 but the DPU never came back}, {ping 192.168.100.2 works but ssh fails}, or {is DOCA on the host or the Arm side?}. BFB reflash, mlxconfig set, mode changes, and firmware burns are destructive: require explicit target-bound confirmation and load doca-hardware-safety. App launch, container deploy, env install, and the BF4 BMC-Redfish path route elsewhere.
Skill body
DOCA BlueField-3 (BF3) deployment
Examples
- “I have a BlueField-3 and a BFB — how do I push it?” — RShim plus bfb-install from the host. Exit 0 is not success until the DPU is ready.
- “bfb-install exited 0 but the DPU never came back.” — start at the six-state classifier, not a second burn.
Instructions
Follow Loading order below. Open the tasks companion for BFB push and recover. Open the capabilities companion for the RShim/BFB contract and safety overlay. Do not open every companion file.
Where to start: This skill is the bundle’s home for BlueField-3
day-1 platform bring-up — taking a BF3 from “powered card in the
slot” (or a card that just came back broken from a BFB push) to
“Arm OS healthy, TMFIFO up, host PFs bound, four-way version match
closed, ready to run a workload”. It owns the classic RShim/BFB
path that BF3 uses today; the newer BMC-Redfish provisioning path
is the sibling skill
doca-bf4-deployment (the BF4
equivalent). If the user has a BF3 and needs to push a BFB, recover
a DPU that did not come back, or verify the install, open
the tasks companion and start at
## configure. If the question is what shape
does the BF3 platform-bring-up surface even have, start at
the capabilities companion. Once the BF3 is healthy, this
skill routes onward to the deployment skills — running a binary
goes to
doca-bare-metal-deployment;
deploying a service container goes to
doca-container-deployment.
Every mutating burn invoked from a bring-up step — the BFB
reflash itself, any mlxconfig set (including a DPU/separated-host
mode flip), a firmware burn, or a kernel-boot-parameter change — is
governed by the change-application meta-policy in
doca-hardware-safety, which
the agent loads ALONGSIDE this skill. This skill adds only the
BF3-specific operational sequencing on top; it does NOT redefine
the preflight / OOB-console / maintenance-window / rollback
discipline that meta-policy owns.
Audience
This skill serves external DOCA operators bringing up a real BlueField-3 — i.e. people who already have:
- a physical BlueField-3 in a host (or a standalone BF3 they can reach over its console / management network),
- host-side RShim access to the DPU (the RShim userspace daemon and
the
/dev/rshim*character-device tree present over the PCIe or USB RShim interface), and - a matching DOCA-Host install on the host plus a BlueField bundle (BFB) image downloaded from the public DOCA Downloads page.
It is not for:
- BlueField-4 bring-up (the BMC-Redfish provisioning path) — route
to
doca-bf4-deployment, the BF4 equivalent of this skill, - kernel-driver or BlueField-OS developers contributing to
mlx5_*or the BFB image itself (that is internal-tree work, not a field deployment), - operators who already have a healthy BF3 and just want to run a
binary (route to
doca-bare-metal-deployment) or deploy a service container (route todoca-container-deployment), - fresh-no-hardware users with no DOCA install — route to
doca-setup ## no-install.
The skill teaches the agent the BF3 bring-up procedure and the
rules for quoting documented commands from the public BlueField
Platform Software Manual, the public DOCA Installation Guide, and
the MFT manual via
doca-public-knowledge-map;
it does not invent bfb-install flag sets, BFB image filenames,
RShim character-device paths, bf.cfg schema keys, mlxconfig
parameter names, or TMFIFO subnets from memory. Where a fact is
already vetted in
doca-bare-metal-deployment ## bluefield-lifecycle,
this skill reuses that exact fact rather than restating a new one.
When to load this skill
Load this skill when the user is doing hands-on BlueField-3 platform bring-up over the RShim/BFB path, or asking a cross-cutting BF3 lifecycle question that is not specific to one library’s API. Concretely:
- Pushing a BFB image to a BF3 for the first time (or re-pushing
after a failed install), from the host over the RShim interface
with
bfb-install. - Bringing up or recovering the host-to-DPU TMFIFO management
channel (
tmfifo_net0, the documented192.168.100.xconvention) and the RShim console. - Confirming RShim driver/daemon state on the host (the userspace
rshimdaemon and the/dev/rshim*tree) before any push or console capture. - Deciding (and routing) a DPU-mode change — DPU / embedded-function
mode vs separated-host / NIC mode — knowing the actual
mlxconfig setburn leaves this skill fordoca-hardware-safety. - Recovering a BF3 that did not come back after a BFB push:
bfb-installexited 0 but the DPU never reached the documentedDPU is readymarker;ping 192.168.100.2works but SSH refuses; host PFs are present inlspci -d 15b3:but their netdevs are gone. - Verifying a BF3 install —
cat /etc/mlnx-releaseon the Arm side, the four-way version match perdoca-version— and distinguishing the host-side DOCA install from the BlueField-Arm-side DOCA install. - Cross-cutting questions: “is DOCA on the host or on the Arm
side, and which one do I install?”, “my BF3 was fine last week
and after a BFB push it never came back — where do I start?”,
“how do I tell which
/dev/rshim<N>is which BlueField on a multi-DPU host?”.
Do not load this skill for: BlueField-4 bring-up (route to
doca-bf4-deployment, the BF4
equivalent); running a DOCA-linked binary on a healthy BF3 (route to
doca-bare-metal-deployment);
deploying a DOCA service container (route to
doca-container-deployment);
env-preparation including hugepages, IOMMU, pkg-config, and devlink
mode flips (use doca-setup); the body of
the version-match rule (use doca-version);
or any hardware-state-changing burn itself — the change-application
discipline is meta-policy owned by
doca-hardware-safety, loaded
ALONGSIDE this skill.
What this skill provides
This is a thin loader. Substantive material lives in two companion files:
- the capabilities companion — the BF3 platform-bring-up contract: the
RShim/BFB transport surface (the userspace RShim daemon, the
/dev/rshim*tree, console-over-rshim, the BFB image as the unit of input), the TMFIFO management-channel surface (tmfifo_net0/tm-br, the documented192.168.100.xconvention, theip route get-before-pingloopback gotcha), the DPU-mode surface (DPU / embedded-function vs separated-host / NIC mode, set viamlxconfigat BFB-install time — a MUTATING burn routed todoca-hardware-safety), the host-side-vs-Arm-side DOCA install distinction, the BF3-version overlay on the four-way match owned bydoca-version, the cross-cutting error taxonomy, the observability surface, and the safety policy (overlay ondoca-hardware-safety). - the tasks companion — step-by-step workflows for the in-scope BF3
lifecycle verbs:
configure,build(routing stub),modify,run(the BFB-install + RShim/TMFIFO bring-up sequence),test(the post-BFB readiness smoke),debug(the six-statebluefield-state-classifier), and theDeferred task verbsblock routing app-launch / container / install / library-API / hardware-state-change / BF4 questions out to their owning skills.
The skill assumes a target where:
- a BlueField-3 is physically present and powered, reachable from a
host that has the RShim daemon and
/dev/rshim*tree available, - the operator has a BFB image downloaded from the public DOCA
Downloads page (route via
doca-public-knowledge-map), and - the operator has an out-of-band path (BMC console, serial-over-LAN, or physical UART) to reach the BF3 if a push breaks the Arm OS.
It does not cover installing DOCA on a host from scratch (that
goes through doca-setup), and it does
not cover BlueField-4 (that goes through
doca-bf4-deployment).
Loading order
- Read this skill first to confirm the user’s question is in scope (BF3 platform bring-up over the RShim/BFB path; NOT BF4, NOT app-launch, NOT a library-API question).
- For the bring-up contract (RShim/BFB transport, TMFIFO channel, DPU-mode surface, host-vs-Arm install distinction, BF3-version overlay, error taxonomy, observability surface, BF3 safety overlay), see the capabilities companion.
- For step-by-step workflows —
configure,build(routing stub),modify,run(BFB install + RShim/TMFIFO bring-up),test(post-BFB readiness smoke),debug(the six-statebluefield-state-classifier), plus theDeferred task verbsblock — see the tasks companion.
Example questions this skill answers well
What this skill deliberately does not ship
Related skills
Skill frontmatter
Work with this as data
Every skill here is available over the APIs.io API and to AI agents over MCP.