diff --git a/crates/api-core/src/ipxe.rs b/crates/api-core/src/ipxe.rs index 473a0ce5c7..0450725fc3 100644 --- a/crates/api-core/src/ipxe.rs +++ b/crates/api-core/src/ipxe.rs @@ -353,8 +353,7 @@ exit || // use: // - If we don't have an exploration report for this MAC address, don't PXE boot at all // - If it's X86 and we have an exploration report, assume it's a Host. - // - If it's ARM and we have an exploration report, check if the report has a - // BlueField part number. + // - If it's ARM, only treat it as a DPU when the explored endpoint is itself a DPU BMC. let Some(endpoint) = db::explored_endpoints::find_by_mac_address(&mut *txn, interface.mac_address) .await? @@ -370,7 +369,7 @@ exit || let (machine_type, console) = match target.arch { rpc::MachineArchitecture::X86 => (MachineType::PredictedHost, console), rpc::MachineArchitecture::Arm => { - if endpoint.has_bluefield_part_number() { + if endpoint.report.is_dpu() { (MachineType::Dpu, console) } else { (MachineType::PredictedHost, "ttyAMA0")