Richard Hughes
74a80ccc50
dell: Use the new quirk infrastructure for version numbers
2017-11-02 19:08:51 +00:00
Richard Hughes
24c452297d
dfu: Use the FuQuirk infrastructure to move the quirks out of the code
...
This is slightly more verbose than desired as we also have to include the quirk
information when running the dfu-tool, which does not have an already set-up
FuQuirks object as it has no plugin.
2017-11-02 19:08:51 +00:00
Richard Hughes
9c028f06b5
Move the database of supported devices out into runtime loaded files
...
When fwupd is installed in long-term support distros it's very hard to backport
new versions as new hardware is released.
There are several reasons why we can't just include the mapping and quirk
information in the AppStream metadata:
* The extra data is hugely specific to the installed fwupd plugin versions
* The device-id is per-device, and the mapping is usually per-plugin
* Often the information is needed before the FuDevice is created
* There are security implications in allowing plugins to handle new devices
The idea with quirks is that the end user can drop an additional (or replace
an existing) file in a .d director with a simple format and the hardware will
magically start working. This assumes no new quirks are required, as this would
obviously need code changes, but allows us to get most existing devices working
in an easy way without the user compiling anything.
This allows us to fix issues like https://github.com/hughsie/fwupd/issues/265
2017-11-02 19:08:51 +00:00
Richard Hughes
78c1e6c009
dfu: Correctly output Intel HEX files with > 16bit offset addresses
...
Also, fix the checksum to actually produce valid files...
2017-10-31 18:30:05 +00:00
Richard Hughes
6e72343851
dfu: Allow specifying the output file type for 'dfu-tool read'
...
Guess the file type if it is not explicitly specified.
2017-10-31 18:30:05 +00:00
Richard Hughes
c4e9b08f41
dfu: Remove the CanDownload and CanUpload attribute when required
...
When the AVR device is not recognised as a supported part we can't read or
write the firmware from the chip.
2017-10-31 18:30:05 +00:00
Richard Hughes
3e1e8227be
dfu: Add support for one type of AVR32 device
...
Currently the only supported model is the AT32UC3A3256S, more to come...
2017-10-31 18:30:05 +00:00
Richard Hughes
d49f64f700
dfu: Split out the STM functionality to a new file
2017-10-31 18:30:05 +00:00
Richard Hughes
fc27df7ceb
dfu: Add the ability to dump the raw DFU packets
2017-10-31 18:30:05 +00:00
Richard Hughes
c314b89316
dfu: Add DfuChunked
...
This allows us to segment a buffer taking into account page borders and maximum
transfer sizes.
2017-10-31 18:30:05 +00:00
Richard Hughes
9acf8cd16f
dfu: Set up the DfuTarget when opening the DfuDevice
...
In the future we'll use this to set vendor-specific quirks.
2017-10-31 18:30:05 +00:00
Richard Hughes
1b577710c5
dfu: Ignore the not-supported error code when opening the DfuDevice
...
This allows us to fail optional things and still show useful output in:
$ dfu-tool list
2017-10-31 18:30:05 +00:00
Richard Hughes
97520bd583
dfu: Add support for a chip ID
...
This allows us to show the user something they can include in a bug report.
2017-10-31 18:30:05 +00:00
Richard Hughes
9c0405576b
trivial: Add installed tests for the Jabra Speak devices
...
This makes sure the tests are run on the release-time CI server and prevents
regressions between versions.
2017-10-30 13:37:11 +00:00
Richard Hughes
f3e27065e6
dfu: Support devices with truncated DFU interface data
...
We can assume they support DFU 1.1. Fixes flashing the Jabra Speak 410.
2017-10-30 13:37:11 +00:00
Richard Hughes
54c7c0cc9f
dfu: Only detach the HID interface when updating Jabra devices
2017-10-30 13:37:11 +00:00
Richard Hughes
ac32f71a00
trivial: Remove the GObjectClass padding for private objects
2017-10-28 15:18:35 +01:00
Mario Limonciello
f8451a907e
Make the error message clearer when sans fonts are missing ( Closes #289 )
2017-10-27 11:10:35 -05:00
Mario Limonciello
8b2fbb2664
trivial: debian: debci: shuffle dependency location
2017-10-26 15:44:12 -05:00
Richard Hughes
66513c3b9d
dfu: Don't show a debug message when the download timeout is zero
2017-10-26 20:49:10 +01:00
Richard Hughes
181f516114
dfu: Guess the transfer size if it is not specified
2017-10-26 20:49:10 +01:00
Richard Hughes
55d5fb1ab0
dfu: Remove redundant dfu_device_has_dfuse_support()
2017-10-26 20:49:10 +01:00
Richard Hughes
3dd875f975
dfu: Add some utility functions to dfu-common.h
2017-10-26 20:49:10 +01:00
Richard Hughes
3218de03b9
dfu: Add dfu_target_get_sector_default()
...
This allows us to get the first sector defined for the target.
2017-10-26 20:49:10 +01:00
Richard Hughes
1b1f9d7b6a
dfu: Support the IHEX record type 0x05
2017-10-26 08:48:20 +01:00
Mario Limonciello
cc9cfbc74a
debian/debci: add explicit dependency on policykit-1 for the test
2017-10-25 09:12:14 -05:00
Mario Limonciello
d00b05959d
debian: update standards version
2017-10-24 16:21:35 -05:00
Richard Hughes
3b84753769
Use help2man to generate the man page at build time
...
The man pages are always old and out-of-sync with the actual tool, so just
generate them using the output of --help.
Fixes https://github.com/hughsie/fwupd/issues/285
2017-10-23 16:47:08 +01:00
Kelly Anderson
c015642803
fix mispelled redesign
2017-10-19 22:35:17 -05:00
Richard Hughes
98a8046d7b
trivial: Fix a tiny memory leak when processing signals from the daemon
2017-10-19 17:13:19 +01:00
Mario Limonciello
e1ab2e8818
debian: explicitly depend on umockdev in build depends
...
The previous problem for umockdev wasn't caught in debian buildds
with umockdev 0.9.4 due to they weren't installing the umockdev
package.
2017-10-19 08:40:08 -05:00
Mario Limonciello
fecfe3b8db
thunderbolt: move test for mock environment ( Closes #280 )
...
umockdev 0.9.4 changed how to test for running in mock and this
causes the assumptions on mock testing at init to fail.
Move the test for this to after the environment has been set up.
2017-10-19 08:40:08 -05:00
Bruno Pagani
d8d90bff74
ci: Make use of arch-meson in PKGBUILD
...
The helper specify `-D b_lto=true` though, so override that since it fails to build with it.
2017-10-18 15:41:07 -05:00
Mario Limonciello
69b2133def
debci: use the needs-root restriction
2017-10-18 14:01:43 -05:00
Mario Limonciello
7f4104176b
don't use dpkg-reconfigure in CI script
2017-10-18 11:12:35 -05:00
Mario Limonciello
bd0f3f8920
rename fu-dell-common to fu-dell-smi
...
Since it's not being used by other plugins, make it represent
what it really does now.
2017-10-18 08:27:54 -05:00
Mario Limonciello
7af941fee4
synaptics: drop hard dependency on dell plugin and libsmbios
...
Rather than have a hard dependency use metadata and internal DMI
to communicate the relevant details
2017-10-18 08:27:38 -05:00
Mario Limonciello
ed538c2b84
drop fu_dell_get_cable_type, unused
2017-10-18 08:22:43 -05:00
Mario Limonciello
bce4ab675c
Don't run -enable-werror on anything but CI.
...
Fixes fails to build from source on alpha and hppa (#278 )
2017-10-18 08:20:40 -05:00
Richard Hughes
37ca220f9b
dfu: Set the vendor ID to the runtime USB VID
2017-10-14 10:22:23 +01:00
Richard Hughes
61222fcb60
dfu: Add the various device quirks for the Jabra Speak devices
...
With much help from Niels Skou Olsen <nolsen@jabra.com>, many thanks.
2017-10-13 17:24:35 +01:00
Richard Hughes
3d2baa7476
dfu: Add DFU_DEVICE_QUIRK_ATTACH_EXTRA_RESET
...
Some devices need yet another reset to get them back into runtime mode.
2017-10-13 17:20:20 +01:00
Richard Hughes
7a42f5eab9
dfu: Add DFU_DEVICE_QUIRK_IGNORE_UPLOAD
...
Some DFU implementations (e.g. CSR) do not properly support verification of
firmware using the upload mechanism.
2017-10-13 17:20:20 +01:00
Richard Hughes
c995a0218e
dfu: Use the correct wDetachTimeOut when writing firmware
...
Although it makes things faster to ignore the timeout, it violates the DFU
specification which could break some devices.
Lets err on the side of caution for now, even if this means slowing down an
uncommon operation.
This reverts commit 144473c1f4
.
2017-10-13 17:20:20 +01:00
Richard Hughes
ce7baf4e2e
dfu: Don't infer that NO_DFU_RUNTIME always requires user action
2017-10-13 17:20:20 +01:00
Richard Hughes
9fac3a2895
dfu: Unbind the kernel module when claiming the device DFU interface
2017-10-13 17:20:20 +01:00
Richard Hughes
5bb91535ce
Format the BCD USB revision numbers correctly
...
Add lots of code because it's not cool to hard depend on appstream-glib master.
2017-10-13 10:03:06 +01:00
Richard Hughes
8232d250a2
dfu: Do not try to verify the element write if upload is unsupported
2017-10-13 09:14:10 +01:00
Richard Hughes
64179e42af
dfu: Print the device attributes when using 'dfu-tool list'
2017-10-13 09:13:42 +01:00
Richard Hughes
839099418f
trivial: Add the start of a plugin tutorial
2017-10-12 22:07:44 +01:00