Skip to main content

HPM.1 file conversion tool

Project description

bin2hpm

This is a tool that creates HPM.1 firmware update files to be used by a HPM.1 updater such as ipmitool hpm upgrade.

It can be used with MMC-STAMP based AMC boards, such as the DAMC-FMC2ZUP and DAMC-FMC1Z7IO, to facilitate in-system-upgrade of various components (MMC, CPLDs, FPGAs) over IPMI.

Features

  • Converts from binary file to firmware update file according to HPM.1 spec
  • Creates a sequence of two HPM.1 actions; first Prepare component, then Upload image
  • Embeds metadata according to HPM.1 spec:
    • IANA manufacturer / product ID
    • Target device / component
    • Version information
    • Auxillary metadata
  • Parses Xilinx bitstream file (optional)
  • Performs RLE compression (optional / DESY MMC proprietary)

File mode

By default, Xilinx bitfile mode is determined from the input file name. If it ends on .bit, the bitfile mode is selected. Bitfile mode can also be forced (-b) or suppressed (-n) independent of file name.

Usage

$ bin2hpm --help
usage: bin2hpm [-h] [--version] [-o OUTFILE] [-v FILE_VERSION] [-a AUXILLARY] [-c COMPONENT] [-d DEVICE] [-m MANUFACTURER] [-p PRODUCT] [-r] [-s DESCRIPTION] [-b | -n] infile

HPM.1 update file converter

positional arguments:
  infile                Input file

optional arguments:
  -h, --help            show this help message and exit
  --version             show program's version number and exit
  -o OUTFILE, --outfile OUTFILE
                        output file (derived from input file if not set)
  -v FILE_VERSION, --file-version FILE_VERSION
                        file version information (format major.minor, e.g. 1.2)
  -a AUXILLARY, --auxillary AUXILLARY
                        additional metadata, hex format, 4 bytes
  -c COMPONENT, --component COMPONENT
                        HPM component ID (default 1)
  -d DEVICE, --device DEVICE
                        HPM device ID (hex, default 0)
  -m MANUFACTURER, --manufacturer MANUFACTURER
                        IANA manufacturer ID (hex, 6 bytes max)
  -p PRODUCT, --product PRODUCT
                        IANA product ID (hex, 4 bytes max)
  -r, --compress        Enable RLE compression (requires DESY MMC)
  -s DESCRIPTION, --description DESCRIPTION
                        Additional description string (max. 21 chars)
  -b, --bitfile         Force bitfile mode
  -n, --binfile         Force binfile mode

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bin2hpm-0.2.1.tar.gz (7.4 kB view details)

Uploaded Source

Built Distribution

bin2hpm-0.2.1-py3-none-any.whl (10.6 kB view details)

Uploaded Python 3

File details

Details for the file bin2hpm-0.2.1.tar.gz.

File metadata

  • Download URL: bin2hpm-0.2.1.tar.gz
  • Upload date:
  • Size: 7.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for bin2hpm-0.2.1.tar.gz
Algorithm Hash digest
SHA256 210e104e4a58977241e87492e41550db11b86fcad2186525a8bea07ad4c499ca
MD5 327e0c8d5079ece44d18a5bdf772df88
BLAKE2b-256 d72ae7ba59cb11b176bf4444a4f55a830d40d78b1d4c9dc15b6fbf50d0435872

See more details on using hashes here.

File details

Details for the file bin2hpm-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: bin2hpm-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 10.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for bin2hpm-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 fe99348bfcf9c1fd661e25e95f27a95b746f5444d9f9a5327c858a8edab69779
MD5 c7765f8865ce2598f8d77588dc1e6c95
BLAKE2b-256 bc22b306e434eb7fcbd41a50c4cc4c1dc84bd437787b78aaa978bf450e2c458f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page