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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions