Skip to content

Commit a648d6d

Browse files
committed
Snagboot v2.3 release
- treewide: add mechanisms for packaging Snagboot into an executable installer for Windows - snagfactory: make the "fb-buffer-size" parameter optional - snagflash: move "interactive mode" Fastboot commands into a separate "fastboot-uboot" protocol, deprecate using these with the "fastboot" protocol make the "fb-size" environment variable optional for flashing - snagrecover: reinstate AM335x UART recovery warn if given firmware looks like a text file Signed-off-by: Romain Gantois <romain.gantois@bootlin.com>
1 parent 4a5bb61 commit a648d6d

3 files changed

Lines changed: 21 additions & 17 deletions

File tree

README.md

Lines changed: 19 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -76,18 +76,33 @@ available.
7676

7777
**Note:** Am335x devices are not supported on Windows!
7878

79+
Snagboot requires the "libusb-win32" driver to be bound to any device it
80+
processes **apart from i.MX and SAMA5 devices, which already have their own
81+
s**. This can be done using the Zadig tool which you can obtain [here](https://github.com/pbatard/libwdi/releases/download/v1.5.1/zadig-2.9.exe).
82+
83+
84+
After opening Zadig, select the device entry corresponding to your board's
85+
VID:PID pair.
86+
87+
Then, make sure the "libusb-win32" driver is selected and click on "Install
88+
driver". You should only have to do this once for a given VID:PID pair.
89+
90+
Powershell is required by Snagboot, but it should already be installed.
91+
92+
### Option 1: Using the snagboot installer
93+
94+
An executable installer based on [PyInstaller](https://pyinstaller.org/en/stable/) and [InnoSetup](https://jrsoftware.org/isinfo.php) can be downloaded [from the latest Snagboot release](https://github.com/bootlin/snagboot/releases/latest/download/snagboot_installer.exe).
95+
96+
### Option 2: Using pip
97+
7998
Please install the following software:
8099

81100
- Python 3.8 or later: https://www.python.org/downloads/windows/
82101

83102
- Swig: http://prdownloads.sourceforge.net/swig/swigwin-4.2.1.zip
84103

85-
- Zadig: https://github.com/pbatard/libwdi/releases/download/v1.5.1/zadig-2.9.exe
86-
87104
- python3-libusb: run `pip install libusb`
88105

89-
Powershell is also required but it should already be installed.
90-
91106
After installing Python, Swig and libusb, you should add them to your PATH environment variable:
92107

93108
- Open the start menu and type « environment variable » into the search bar
@@ -104,17 +119,6 @@ C:\Users\yourusername\AppData\Roaming\Python\Python312\Scripts
104119

105120
setuptools: Run `pip install setuptools` then `pip install snagboot` in powershell
106121

107-
Snagboot requires the "libusb-win32" driver to be bound to any device it
108-
processes **apart from i.MX and SAMA5 devices, which already have their own
109-
system drivers**. This can be done using the Zadig tool which you previously
110-
installed.
111-
112-
After opening Zadig, select the device entry corresponding to your board's
113-
VID:PID pair.
114-
115-
Then, make sure the "libusb-win32" driver is selected and click on "Install
116-
driver". You should only have to do this once for a given VID:PID pair.
117-
118122
## Usage guide
119123

120124
**Note:** On Linux, running snagboot as root is not recommended and will typically not

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,9 @@ authors = [
2222
description = "Generic recovery and reflashing tool for embedded platforms"
2323
readme = "README.md"
2424
requires-python = ">=3.8"
25+
license = "GPL-2.0-only"
2526
classifiers = [
2627
"Programming Language :: Python :: 3",
27-
"License :: OSI Approved :: GNU General Public License v2 (GPLv2)",
2828
"Operating System :: POSIX :: Linux",
2929
"Operating System :: Microsoft :: Windows :: Windows 10",
3030
"Operating System :: Microsoft :: Windows :: Windows 11"

src/snagrecover/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,4 @@
55
"""
66

77
# Global version string for Snagboot
8-
__version__ = "2.2"
8+
__version__ = "2.3"

0 commit comments

Comments
 (0)