Skip to content

Integration test: MCUboot raw serial recovery (SMPSerialRawTransport) #118

Description

@JPHutchins

Follow-up to #106 (PR comment).

mcu-tools/mcuboot#2755"boot: boot_serial: add raw (non-console) SMP recovery protocol" (merged) — lets MCUboot serial recovery speak the raw SMP framing. We should extend the recovery integration suite to cover it with SMPSerialRawTransport, the raw analog of the existing base64 tests/integration/test_serial_recovery.py.

Blocked on

A vendored raw-mode MCUboot serial-recovery fixture from the build farm: intercreate/smp-server-fixtures#8. The current serial_recovery fixtures are base64 (transport: serial); this needs a serial_recovery_raw build (transport: serial_raw, mcuboot: true, serial_recovery: true).

Harness work (smpclient side)

test_serial_recovery.py reboots an app into recovery (os reset boot_mode=BOOTLOADER) and uploads via the socket-backed QemuSocketSerialTransport (encoded) against the emulated mps2 bootloader. The raw transport is currently wired only for native_sim PTY endpoints (conftest._build_transport). So depending on the fixture's target:

  • native_sim raw recovery fixture → works with the existing PTY wiring, or
  • mps2_an385 (emulated) raw recovery fixture → also needs a socket-backed raw transport (a raw counterpart to QemuSocketSerialTransport).

The test itself mirrors the existing one: reset into the bootloader, reconnect with SMPSerialRawTransport, upload an image, and assert the bootloader reassembles it.

Refs: mcu-tools/mcuboot#2755, #106

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions