Skip to main content

Genio Bootrom

genio-bootrom is a Python wrapper around a proprietary binary executable. It allows developers to transfer a given binary payload to a Genio SoC via a USB virtual serial port. The binary payload is usually a download agent that bootstraps the board and then enables flash storage programming.

The download agent binaries can be different for each SoC or board, and are not included in this module.

Installation

You can install the package from PyPI:

pip install genio-bootrom

In most workflows, genio-bootrom is used as part of the genio-tools package:

pip install genio-tools

Usage

This module can be launched directly as a command-line tool, or imported as a Python module. For example, the following command sends the payload bl2.bin to the connected Genio SoC:

genio-bootrom -a 0x201000 -m aarch64 -b bl2.bin

The following arguments are available:

  • -b <path-to-binary>: Assign the path to the binary payload to transfer to the Genio SoC. Default value: ./lk.bin.
  • -a <bootstrap-addr-hex>: Set the hexadecimal bootstrapping address of the payload. Default is 0x0, which automatically detects the SoC bootstrapping address.
  • -m <arch>: <arch> should be aarch64 or aarch32. This assigns the instruction set used in the binary payload. Defaults to aarch64.
  • -l: List all detected USB download port device IDs from Genio SoCs. Windows only.
  • -d <device-id>: Assign the USB download port device ID if there are multiple download port devices. Windows only.

This module is designed to be part of the Genio Tools package. Please refer to the IoT Yocto Develop Guide for more detailed usage and workflow examples.

Release Notes

Version 1.2

Released on 2025/12/29, version 1.2 provides the following updates:

  1. Support for Genio 520 and Genio 720 SoCs.

  2. (Windows only) Added two arguments to enable multiple device enumeration and selection:

    • -l to list all matching Boot ROM USB serial devices with device IDs.
    • -d to select which USB download port to connect to using the device ID.
  3. Fixed a genio-flash error when using the -P argument to assign an image directory.

  4. Print logs to STDOUT unbuffered to address out-of-order logs when launching from another process.

Version 1.1.12

Version 1.1.12 adds support for Python 3.12.

Version 1.1

Initial release.

Metadata

Release files for genio-bootrom 1.2.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for genio-bootrom 1.2.3
File Interpreter ABI Platform
genio_bootrom-1.2.3-py3-none-any.whl Python 3 none any Details

Release files / genio_bootrom-1.2.3-py3-none-any.whl

Download URL genio_bootrom-1.2.3-py3-none-any.whl
Size 94.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
de1e8bad86699c3298f52eb64018d7a3152fb9b01803a2d84a322ff059956a1a
BLAKE2b-256 checksum
How to use checksums
de2e8f70d4a5d54d22a4afdfe3ebb8b1b19c9dad14b1df807f31f1fb06d8b1ec
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.5

Release history Release notifications | RSS feed

This release

1.2.3 This release

1 release file

1.2.2

1 release file

1.2.1

1 release file

1.2.0

1 release file

1.1.12

1 release file

1.1.11

1 release file

1.1.10

1 release file

1.1.9

1 release file

1.1.8

1 release file

1.1.7

1 release file

1.1.6

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page