Richard Hughes
3ae417b960
Add a set-address command to dfu-util
...
This allows us to set the start address of DfuSe elements.
2016-08-23 09:55:39 +01:00
Richard Hughes
e02eaf27ab
trivial: Allow setting a firmware release of '0'
2016-08-23 09:54:37 +01:00
Richard Hughes
5e4cc87d6c
Support the 'DEVO' cipher kind in libdfu
...
This is not really a cipher, more just obfuscation and is specific to the
Walkera Devo line of RC controllers. Many thanks to Mike Meyer for the help.
2016-08-23 09:28:10 +01:00
Richard Hughes
abe1de75ec
trivial: Split out the XTEA cipher to a new file
2016-08-23 08:59:02 +01:00
Richard Hughes
f854e6eb80
Add a set-target-size command to dfu-tool
...
This allows us to specify the padding byte value and makes the convert command
easier to understand.
2016-08-23 08:35:55 +01:00
Richard Hughes
33a518a615
Add another compile warning and fix up any build failures
2016-07-27 16:57:36 +01:00
Richard Hughes
ce38d94d5e
trivial: Get rid of useless internal-only gtk-doc markup
2016-06-29 11:25:25 +01:00
Richard Hughes
16261e3f76
libdfu: Show the DFU protocol version in 'dfu-tool list'
2016-06-08 15:14:06 +01:00
Richard Hughes
11dc9ace51
trivial: Fix up some warnings spotted by new GCC
2016-06-07 10:11:00 +01:00
Richard Hughes
280745f5f0
Release fwupd 0.6.0
2015-12-07 16:20:59 +00:00
Richard Hughes
7774f815a7
trivial: Fix clang-spotted hard-to-hit crash in dfu-tool
2015-12-06 16:36:58 +00:00
Richard Hughes
032596e800
libdfu: Fix several reported crashes in the inhex32 import code
...
This also adds the ability to write simple Intel HEX files too.
2015-12-06 16:27:16 +00:00
Richard Hughes
564303d877
libdfu: Only enumerate the DfuContext when required
...
This speeds up afl fuzzing significantly.
2015-12-06 16:27:03 +00:00
Richard Hughes
7c37e55459
libdfu: Add support for the draft 'DFU Metadata Table Specification'
2015-12-04 16:01:40 +00:00
Richard Hughes
4545dd70af
libdfu: Add DfuCipher which is a property on a target and a firmware file
...
At the moment we're not doing anything smart other than looking at the
firmware filename, but in the future we might do something better.
2015-12-04 12:58:05 +00:00
Richard Hughes
045198d643
libdfu: Add commands to encrypt and decrypt firmware images
...
This uses XTEA to encrypt and decrypt images in the firmware file, although
I'm open for adding other methods as required.
2015-12-02 15:48:03 +00:00
Richard Hughes
1936e4afb5
libdfu: Display all the files shown with 'dfu-tool dump'
...
Also, show the file CRC in the debug output.
2015-12-01 14:53:04 +00:00
Richard Hughes
14d2b80503
libdfu: Make reading and writing to targets easier to understand
...
Rename the 'upload' command to read, and 'download' to write to make things
easier for end users. Also, break the last bits of compatibility with dfu-util.
2015-11-30 09:49:25 +00:00
Richard Hughes
9b1349b885
libdfu: Add an explicit 'attach' method
...
This can also deal with the m-stack quirk in a central place.
2015-11-27 10:54:26 +00:00
Richard Hughes
385bba0ada
libdfu: Add a quirk to support DFU runtime-less devices
2015-11-26 18:59:59 +00:00
Richard Hughes
60b7eeeca9
libdfu: Handle cancellation with ctrl+c in dfu-tool
2015-11-26 12:36:53 +00:00
Richard Hughes
d3afaaab9f
libdfu: Add a context object to handle device hotplug
...
Also, add a 'watch' command to dfu-tool to test this.
2015-11-23 13:53:06 +00:00
Richard Hughes
5d6066c002
libdfu: Use signals to propagate device state
...
Also, add padding to the various class structs so we can add more signals in
the future without breaking ABI.
2015-11-23 10:19:24 +00:00
Richard Hughes
e7aaf39de2
libdfu: Fix multi-interface devices like the Neo Freerunner
...
The DFU specification specifies that only one of the DFU interfaces has to
export a functional descriptor; I assumed they all had to. Adding support
for this kind of device rapidly turned into a massive restructure and it was
all too complicated anyway.
Reorganise the code so that we can support these kinds of devices and clean up
the API so it's sane and easy to use. This also allows us to generate the
GObject introspection GIR and to also install libdfu as a shared library.
If you've got any comments about the API, please shout now as when 6.0 is
released it will become API and ABI stable.
2015-11-22 21:17:48 +00:00
Richard Hughes
e7ba943cf5
libdfu: Support download and upload to ST DfuSe devices
...
Also, simplify the general download and upload API now we can deal with
element data in chunks.
2015-11-20 14:14:05 +00:00
Richard Hughes
0256f04338
libdfu: Improve the output of 'dfu-util list'
...
Being semi-compatible with dfu-util isn't important anymore.
2015-11-20 12:30:53 +00:00
Richard Hughes
3391e6b154
libdfu: Use the progress bar for all uploads and downloads
2015-11-19 17:44:29 +00:00
Richard Hughes
664bb739b0
libdfu: Require a --force flag to flash wildcard firmware
2015-11-17 08:59:24 +00:00
Richard Hughes
f048fbc703
libdfu: Call the progress callback when doing detach
...
This allows the UI to show something sane, and also allows fwupd to start any
timeout for ignoring detach:replug.
2015-11-16 16:28:10 +00:00
Richard Hughes
859fe0b43e
libdfu: Check for extra args to dfu-tool convert
2015-11-16 11:48:20 +00:00
Richard Hughes
e8a6d3d0cb
trivial: libdfu: flip reversed command descriptions
2015-11-16 11:47:16 +00:00
Richard Hughes
b5936f9eef
libdfu: Correctly implement auto-boot in dfu_device_download()
2015-11-16 11:46:36 +00:00
Richard Hughes
b4eaec3654
libdfu: Allow choosing a different alt-setting when downloading
2015-11-15 19:12:13 +00:00
Richard Hughes
3a40e94567
libdfu: Add a merge command to dfu-tool
2015-11-15 19:00:03 +00:00
Richard Hughes
31aa1dd3df
libdfu: Allow setting the alternate settings in DfuSe firmware
2015-11-15 16:52:46 +00:00
Richard Hughes
cfd399498d
libdfu: Use a custom error domain
2015-11-14 17:34:08 +00:00
Richard Hughes
460bc2012e
libdfu: Move the VID:PID checks from the tool to DfuDevice
2015-11-14 17:12:29 +00:00
Richard Hughes
62633af0db
libdfu: Add support for DfuSe firmware
...
Also, move some shared stuff down from DfuTarget to DfuDevice.
2015-11-14 16:34:09 +00:00
Richard Hughes
a3acd7f711
Add support for updating USB devices with DFU
...
This adds a private libdfu library and also a small utility program called
dfu-tool.
2015-11-12 17:32:48 +00:00