Hailo-10H HAILO_COMMUNICATION_CLOSED(62) on Jetson Orin Nano, JetPack 7.2.1 (L4T R39.2.1, kernel 6.8.12-tegra), HailoRT 5.4.0

Hi,

I’m experiencing HAILO_COMMUNICATION_CLOSED(62) with Hailo-10H on a Jetson Orin Nano Developer Kit. All software components install cleanly and the firmware loads successfully, but hailortcli fw-control identify fails. This is the same symptom as thread 19352 (JetPack 6.x), but on the JetPack 7.2.1 / L4T R39 line — where downgrading is not an option for us.

Environment

  • Hardware: NVIDIA Jetson Orin Nano Developer Kit
  • Hailo device: Hailo-10H M.2, PCIe 0004:01:00.0, VID:PID 1e60:45c4
  • JetPack 7.2.1 / L4T R39.2.1
    (nv_tegra_release: # R39 (release), REVISION: 2.1, GCID: 46758480, BOARD: generic, EABI: aarch64)
  • Kernel: 6.8.12-1021-tegra (aarch64)
  • HailoRT: 5.4.0 arm64 deb (latest in Developer Zone, Aug 16 2026)
  • Driver: hailo1x_pci 5.4.0 via DKMS, loaded with no_power_mode=Y

What works

PCIe enumeration and link are healthy (Gen3 x4, no errors):

$ sudo lspci -vv -s 0004:01:00.0 | grep -E 'LnkSta|DevSta'
  DevSta: CorrErr- NonFatalErr- FatalErr- UnsupReq- AuxPwr- TransPend-
  LnkSta: Speed 8GT/s, Width x4

Firmware loads successfully from a cold boot (fresh load, not a reattach):

hailo1x 0004:01:00.0: SOC Firmware Batch loaded successfully
hailo1x 0004:01:00.0: Firmware loaded in 1242 ms
hailo1x 0004:01:00.0: Device created at /dev/h1x-0

hailortcli scan finds the device:

Hailo Devices:
[-] Device: pci/0004:01:00.0

What fails

$ sudo hailortcli fw-control identify --extended
[HailoRT] [error] CHECK_SUCCESS failed with status=HAILO_COMMUNICATION_CLOSED(62)
[HailoRT] [error] CHECK_SUCCESS failed with status=HAILO_COMMUNICATION_CLOSED(62) - Failed to set default notification callbacks for Device HRPC-client

hailortcli logs runtime and logs system_control fail with the same error.

Attempted (all failed)

  • modprobe -r hailo1x_pci && modprobe hailo1x_pci (plain reload — driver reattaches: “SOC Firmware batch was already loaded”)
  • Reload with support_soft_reset=Y
  • no_power_mode=Y persisted in /etc/modprobe.d/hailo1x_pci.conf (driver confirms “compiled with power modes disabled”, ASPM L0s disabled)
  • True cold power cycle (power cut 30s+, firmware verifiably re-loaded in 1242 ms on next boot) — identify still fails as the very first command after boot
  • No SMMU/IOMMU faults in dmesg for the device

Since the firmware loads fresh and the PCIe link is clean, the SoC-internal hailort_server apparently never becomes reachable over the RPC channel.

Questions

  1. Is Hailo-10H PCIe validated on JetPack 7.2.1 / L4T R39 / kernel 6.8? If yes, is there a known-good configuration (SMMU settings, kernel cmdline, firmware version)?
  2. If R39 is not yet supported, is there an ETA or a beta driver we can test?
  3. Is there any way to confirm whether hailort_server is actually running inside the Hailo-10H after firmware boot?

Happy to provide full dmesg, lspci, or run any diagnostic build. Thank you.


sudo dmesg | grep -iE ‘hailo|0004:01:00’
[    5.520311] pci 0004:01:00.0: [1e60:45c4] type 00 class 0x0b4000 PCIe Endpoint
[    5.521877] pci 0004:01:00.0: BAR 0 [mem 0x00000000-0x00003fff 64bit pref]
[    5.522996] pci 0004:01:00.0: BAR 2 [mem 0x00000000-0x00000fff 64bit pref]
[    5.524134] pci 0004:01:00.0: BAR 4 [mem 0x00000000-0x00003fff 64bit pref]
[    5.525925] pci 0004:01:00.0: PME# supported from D3hot
[    5.540814] pci 0004:01:00.0: BAR 0 [mem 0x2140000000-0x2140003fff 64bit pref]: assigned
[    5.540900] pci 0004:01:00.0: BAR 4 [mem 0x2140004000-0x2140007fff 64bit pref]: assigned
[    5.540985] pci 0004:01:00.0: BAR 2 [mem 0x2140008000-0x2140008fff 64bit pref]: assigned
[    5.541229] pci 0004:01:00.0: Max Payload Size set to  256/ 256 (was  128), Max Read Rq  256
[    9.237366] hailo1x_pci: module verification failed: signature and/or required key missing - tainting kernel
[    9.246275] hailo1x: Init module. driver version 5.4.0
[    9.250322] hailo1x 0004:01:00.0: Adding to iommu group 6
[    9.250408] hailo1x 0004:01:00.0: Probing on: 1e60:45c4…
[    9.252000] hailo1x 0004:01:00.0: PCIe driver was compiled with power modes disabled
[    9.253713] hailo1x 0004:01:00.0: Probing: Allocate memory for device extension, 8176
[    9.255278] hailo1x 0004:01:00.0: enabling device (0000 → 0002)
[    9.255317] hailo1x 0004:01:00.0: Probing: Device enabled 1e60:45c4 enabled
[    9.259220] hailo1x 0004:01:00.0: Probing: mapped bar 0 - 00000000bb34316f 16384
[    9.260827] hailo1x 0004:01:00.0: Probing: mapped bar 2 - 00000000fd2dd6f3 4096
[    9.262248] hailo1x 0004:01:00.0: Probing: mapped bar 4 - 00000000a8f32602 16384
[    9.263774] hailo1x 0004:01:00.0: Probing: Setting max_desc_page_size to 256, (PAGE_SIZE=4096)
[    9.265342] hailo1x 0004:01:00.0: Probing: Enabled 64 bit dma
[    9.266673] hailo1x 0004:01:00.0: Probing: Using specialized dma_ops=iommu_dma_ops
[    9.266703] hailo1x 0004:01:00.0: Disabling ASPM L0s
[    9.266719] hailo1x 0004:01:00.0: Successfully disabled ASPM L0s
[    9.267050] hailo1x 0004:01:00.0: Writing file hailo/hailo10h/customer_certificate.bin
[    9.270500] hailo1x 0004:01:00.0: File hailo/hailo10h/customer_certificate.bin written successfully
[    9.270509] hailo1x 0004:01:00.0: Writing file hailo/hailo10h/scu_fw.bin
[    9.406114] hailo1x 0004:01:00.0: File hailo/hailo10h/scu_fw.bin written successfully
[    9.462138] hailo1x 0004:01:00.0: Board SKU-ID is: 10
[    9.462154] hailo1x 0004:01:00.0: Writing file hailo/hailo10h/u-boot-10.dtb.signed
[    9.482828] hailo1x 0004:01:00.0: File hailo/hailo10h/u-boot-10.dtb.signed written successfully
[    9.704063] hailo1x 0004:01:00.0: Firmware file programmed successfully
[    9.704078] hailo1x 0004:01:00.0: File hailo/hailo10h/u-boot-spl.bin programmed for DMA transfer
[    9.705522] hailo1x 0004:01:00.0: Firmware file programmed successfully
[    9.705530] hailo1x 0004:01:00.0: File hailo/hailo10h/fitImage programmed for DMA transfer
[    9.717053] hailo1x 0004:01:00.0: Firmware file programmed successfully
[    9.717060] hailo1x 0004:01:00.0: File hailo/hailo10h/image-fs programmed for DMA transfer
[    9.717062] hailo1x 0004:01:00.0: Firmware batch programming completed for stage 3
[    9.765300] hailo1x 0004:01:00.0: vDMA transfer completed, triggering boot
[   10.509809] hailo1x 0004:01:00.0: SOC Firmware Batch loaded successfully
[   10.509821] hailo1x 0004:01:00.0: Firmware loaded in 1242 ms
[   10.510361] hailo1x 0004:01:00.0: Device created at /dev/h1x-0





sudo lspci -vv -d 1e60:
0004:01:00.0 Co-processor: Hailo Technologies Ltd. Device 45c4 (rev 01)
Subsystem: Hailo Technologies Ltd. Device 45c4
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0
Interrupt: pin A routed to IRQ 182
IOMMU group: 6
Region 0: Memory at 2140000000 (64-bit, prefetchable) [size=16K]
Region 2: Memory at 2140008000 (64-bit, prefetchable) [size=4K]
Region 4: Memory at 2140004000 (64-bit, prefetchable) [size=16K]
Capabilities: [80] Express (v2) Endpoint, MSI 00
DevCap: MaxPayload 256 bytes, PhantFunc 0, Latency L0s <64ns, L1 unlimited
ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset+ SlotPowerLimit 0W
DevCtl: CorrErr+ NonFatalErr+ FatalErr+ UnsupReq+
RlxdOrd+ ExtTag+ PhantFunc- AuxPwr- NoSnoop+ FLReset-
MaxPayload 256 bytes, MaxReadReq 256 bytes
DevSta: CorrErr- NonFatalErr- FatalErr- UnsupReq- AuxPwr- TransPend-
LnkCap: Port #0, Speed 8GT/s, Width x4, ASPM L0s L1, Exit Latency L0s <1us, L1 <2us
ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
LnkCtl: ASPM Disabled; RCB 64 bytes, Disabled- CommClk+
ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
LnkSta: Speed 8GT/s, Width x4
TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
DevCap2: Completion Timeout: Not Supported, TimeoutDis+ NROPrPrP- LTR+
10BitTagComp- 10BitTagReq- OBFF Not Supported, ExtFmt+ EETLPPrefix-
EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit-
FRS- TPHComp- ExtTPHComp-
AtomicOpsCap: 32bit- 64bit- 128bitCAS-
DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR+ 10BitTagReq- OBFF Disabled,
AtomicOpsCtl: ReqEn-
LnkCap2: Supported Link Speeds: 2.5-8GT/s, Crosslink- Retimer- 2Retimers- DRS-
LnkCtl2: Target Link Speed: 8GT/s, EnterCompliance- SpeedDis-
Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
Compliance Preset/De-emphasis: -6dB de-emphasis, 0dB preshoot
LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete+ EqualizationPhase1+
EqualizationPhase2+ EqualizationPhase3+ LinkEqualizationRequest-
Retimer- 2Retimers- CrosslinkRes: unsupported
Capabilities: [e0] MSI: Enable- Count=1/1 Maskable- 64bit+
Address: 0000000000000000  Data: 0000
Capabilities: [f8] Power Management version 3
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot+,D3cold-)
Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=1 PME-
Capabilities: [100 v1] Vendor Specific Information: ID=1556 Rev=1 Len=008 <?>
Capabilities: [108 v1] Latency Tolerance Reporting
Max snoop latency: 0ns
Max no snoop latency: 0ns
Capabilities: [110 v1] L1 PM Substates
L1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+
PortCommonModeRestoreTime=10us PortTPowerOnTime=10us
L1SubCtl1: PCI-PM_L1.2- PCI-PM_L1.1- ASPM_L1.2- ASPM_L1.1-
T_CommonMode=0us LTR1.2_Threshold=106496ns
L1SubCtl2: T_PwrOn=40us
Capabilities: [128 v1] Alternative Routing-ID Interpretation (ARI)
ARICap: MFVC- ACS-, Next Function: 0
ARICtl: MFVC- ACS-, Function Group: 0
Capabilities: [200 v2] Advanced Error Reporting
UESta:  DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UEMsk:  DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UESvrt: DLP+ SDES- TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
CESta:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr-
CEMsk:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+
AERCap: First Error Pointer: 00, ECRCGenCap+ ECRCGenEn- ECRCChkCap+ ECRCChkEn-
MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
HeaderLog: 00000000 00000000 00000000 00000000
Capabilities: [300 v1] Secondary PCI Express
LnkCtl3: LnkEquIntrruptEn- PerformEqu-
LaneErrStat: 0
Kernel driver in use: hailo1x
Kernel modules: hailo1x_pci

modinfo hailo1x_pci | head -20
filename:       /lib/modules/6.8.12-1021-tegra/updates/dkms/hailo1x_pci.ko
version:        5.4.0
license:        GPL v2
description:    Hailo PCIe driver
author:         Hailo Technologies Ltd.
import_ns:      DMA_BUF
srcversion:     1055C339BC57433BE164E58
alias:          pci:v00001E60d000026A2sv*sd*bc*sc*i*
alias:          pci:v00001E60d000043A2sv*sd*bc*sc*i*
alias:          pci:v00001E60d000045C4sv*sd*bc*sc*i*
depends:        
name:           hailo1x_pci
vermagic:       6.8.12-1021-tegra SMP preempt mod_unload modversions aarch64
parm:           o_dbg:int
parm:           no_power_mode:Disables automatic D0->D3 PCIe transactions (invbool)
parm:           force_desc_page_size:Determines the maximum DMA descriptor page size (must be a power of 2) (int)
parm:           force_hailo10h_legacy_mode:Forces work with Hailo10h in legacy mode(relevant for emulators) (bool)
parm:           support_soft_reset:enables driver reload to reload a new firmware as well (bool)
parm:           force_hailo_pcie_boot_mode_over_bars:Forces work with Hailo10h in boot modeover BARs instead over vDMA (bool)