asm3042-flasher
asm3042-flasher — CLI-утилита для Linux для работы с контроллерами ASMedia ASM3042/ASM3142.
Установка
python -m pip install asm3042-flasher
Основные команды
asm3042-fw discover
Показывает найденные ASMedia PCIe USB-контроллеры.
Пример:
asm3042-fw discover
asm3042-fw inspect <firmware.bin>
Показывает сведения о firmware-файле: размер, теги, family.
Пример:
asm3042-fw inspect /path/to/firmware.bin
asm3042-fw version [--bdf ...]
Читает running firmware version из контроллера.
Ключи:
--bdf— PCI BDF, например0000:01:00.0--force-device— разрешить работу вне known-safe allowlist
Пример:
sudo asm3042-fw version --bdf 0000:01:00.0
asm3042-fw upload <firmware.bin> [--bdf ...]
Загружает firmware во временную SRAM, не пишет SPI ROM.
Ключи:
--bdf— PCI BDF--force-device— разрешить работу вне allowlist--force-running-firmware— разрешить upload поверх уже загруженной firmware--keep-driver-bound— не отвязывать драйвер на время операции
Пример:
sudo asm3042-fw upload /path/to/firmware.bin --bdf 0000:01:00.0
asm3042-fw permanent-read-internal <backup.bin> [--bdf ...]
Читает встроенный SPI ROM через внутренний ASMedia PCIe-протокол.
Ключи:
--bdf— PCI BDF--force-device— разрешить работу вне allowlist--keep-driver-bound— не отвязывать драйвер--size— прочитать только указанное число байт
Пример:
sudo asm3042-fw permanent-read-internal /root/asm.backup.bin --bdf 0000:01:00.0
asm3042-fw permanent-write-internal <firmware.bin> [--ini ...] [--bdf ...]
Пишет firmware во встроенный SPI ROM.
Команда включает fail-closed защиту (обязательный backup, manifest, rollback) и должна запускаться только после --plan и проверки лога.
Ключи:
--ini— путь кASMTxHCIMPTool.ini--unsafe-allow-ini-overrides— включить internal Windows-style overrides path--bdf— PCI BDF--force-device— разрешить работу вне allowlist--keep-driver-bound— не отвязывать драйвер--backup-file— путь для обязательного backup--overwrite-backup— разрешить перезапись backup--no-verify— отключить post-write verify--plan— только preflight и backup, без записи--require-primary-device-id— потребовать ожидаемый primary device id--require-subsystem-device-id— потребовать ожидаемый subsystem device id--require-subsystem-vendor-id— потребовать ожидаемый subsystem vendor id
Пример безопасного preflight:
sudo asm3042-fw permanent-write-internal \
/path/to/firmware.bin \
--bdf 0000:01:00.0 \
--backup-file /root/asm.backup.bin \
--plan
asm3042-fw crossflash-internal <firmware.bin> --ini ... [--bdf ...]
Упрощённый high-level wrapper вокруг internal write path.
Ключи:
--ini— путь кASMTxHCIMPTool.ini--bdf— PCI BDF--force-device— разрешить работу вне allowlist--backup-file— путь для backup--overwrite-backup— разрешить перезапись backup--no-verify— отключить verify--plan— только план и backup--apply— реально писать SPI
По умолчанию без --apply команда только строит план и сохраняет backup.
--apply запускает реальную запись SPI. Без --apply команда делает только план, валидацию и backup.
Примеры:
sudo asm3042-fw crossflash-internal \
/path/to/firmware.bin \
--ini /path/to/ASMTxHCIMPTool.ini \
--bdf 0000:01:00.0
sudo asm3042-fw crossflash-internal \
/path/to/firmware.bin \
--ini /path/to/ASMTxHCIMPTool.ini \
--backup-file /root/asm.backup.bin \
--bdf 0000:01:00.0 \
--apply
asm3042-fw audit-internal <firmware.bin> [--ini ...] [--bdf ...]
Сравнивает live PCI identity и текущий SPI с целевым образом, который будет собран из firmware.bin и optional .ini.
Ключи:
--ini— путь кASMTxHCIMPTool.ini--bdf— PCI BDF--force-device— разрешить работу вне allowlist
Пример:
sudo asm3042-fw audit-internal \
/path/to/firmware.bin \
--ini /path/to/ASMTxHCIMPTool.ini \
--bdf 0000:01:00.0
asm3042-fw permanent-restore-internal <backup.bin> [--bdf ...]
Восстанавливает встроенный SPI ROM из backup.
Восстановление использует тот же internal SPI write path и должно выполняться только с валидным backup/manifest.
Ключи:
--bdf— PCI BDF--force-device— разрешить работу вне allowlist--keep-driver-bound— не отвязывать драйвер--no-verify— отключить verify после restore
Пример:
sudo asm3042-fw permanent-restore-internal /root/asm.backup.bin --bdf 0000:01:00.0
asm3042-fw permanent-read <backup.bin> --programmer ...
Читает SPI через flashrom и внешний программатор.
Ключи:
--programmer— строка программатора дляflashrom--chip— имя SPI-чипа--flashrom-bin— путь к бинарюflashrom
Пример:
asm3042-fw permanent-read /root/asm.backup.bin --programmer ch341a_spi
asm3042-fw permanent-write <firmware.bin> --programmer ...
Пишет SPI через flashrom и внешний программатор.
Ключи:
--programmer— строка программатора дляflashrom--chip— имя SPI-чипа--flashrom-bin— путь к бинарюflashrom--backup-file— путь для обязательного backup--overwrite-backup— разрешить перезапись backup--no-verify— отключить verify
Пример:
asm3042-fw permanent-write \
/path/to/firmware.bin \
--programmer ch341a_spi \
--backup-file /root/asm.backup.bin
Логи
Опасные операции автоматически пишут *.log рядом с рабочим файлом или в текущую директорию. Этот лог можно сразу присылать для разбора ошибок.
Metadata
Release files for asm3042-flasher 0.4.29
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| asm3042_flasher-0.4.29-py3-none-any.whl | Python 3 | none | any | Details |
Release files / asm3042_flasher-0.4.29-py3-none-any.whl
| Download URL | asm3042_flasher-0.4.29-py3-none-any.whl |
|---|---|
| Size | 42.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0b8469eece685b9055e01f4c495d0c7e9a252a1648bd22c4e93c45598195545f
|
|
BLAKE2b-256 checksum How to use checksums |
7f9837df4ee5a4f9f81c576fce617603314af7597fc08f2b438ee7fcf09495ce
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.12
|
Security for asm3042-flasher 0.4.29
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.