Mario Limonciello
8aa5d41eb7
Add external interface messages
2020-10-26 12:05:20 -05:00
Richard Hughes
6450d0deb4
Add FwupdInstallFlags of _IGNORE_CHECKSUM, _IGNORE_VID_PID and _IGNORE_POWER
...
The FWUPD_INSTALL_FLAG_FORCE flag has really unclear semantics, and ignoring a
file CRC, checksum or model ID should only be done when using fwupdtool actually
debugging a plugin or firmware parser.
Use the existing --force flag when we want a "gentle nudge" like reuploading
previously processed reports.
2020-10-07 13:15:09 +01:00
Mario Limonciello
0ebddc9fcf
trivial: fix some unused variables found by clang-10
2020-08-10 10:33:31 -05:00
Ryan Lee
0b5ed33b23
ccgx: Modify readme to remove customer info
2020-07-29 12:01:31 +01:00
Ryan Lee
ef7b7b0efd
ccgx: modify installation time for hp g2 dock
2020-07-07 13:00:02 +01:00
Ryan Lee
62618bedb6
ccgx: add extra 45% removal time for worst case
2020-07-03 10:18:57 +01:00
Richard Hughes
d09cf101c3
Change all instances of master/slave to initiator/target
...
This makes perfect sense, because the 'initiator' starts the transaction and
the 'target' is the addressee of the transaction. Even the I²C spec defines the
'master' as 'initiating' the transaction.
This is the same nomenclature now used by the Glasgow project too.
2020-07-01 15:44:30 +01:00
Ryan Lee
7ebcd06ae4
ccgx: remove verify flag in plugin
2020-07-01 14:14:10 +01:00
Ryan Lee
609d0c570f
ccgx: Add more hybrid dock support
...
Also add HPI command retry.
2020-06-25 18:30:30 +01:00
Ryan Lee
4c177ad540
ccgx: add new protocol for dmc dock
2020-06-22 12:57:43 +01:00
Richard Hughes
e5a4d52ea1
trivial: Spelling fixes from codespell
2020-06-18 20:49:12 +01:00
Ryan Lee
59bb497a3e
ccgx: modify install duration for dmc device
2020-06-09 10:37:26 +01:00
Ryan Lee
0942dcc413
ccgx: Add support for HP DMC dock devices
2020-06-05 13:35:54 +01:00
Richard Hughes
4b16642dc5
ccgx: Fix a potential division by zero
...
Spotted by Coverity.
2020-05-22 15:34:16 +01:00
Richard Hughes
9ed79ae644
Fix various build issues with -Wdiscarded-qualifiers
...
Fixes https://github.com/fwupd/fwupd/issues/2068
2020-05-07 16:15:30 +01:00
Richard Hughes
b74db0618c
ccgx: Only update the FW2 partition of the ThinkPad USB-C Dock Gen2
2020-04-21 14:34:03 +01:00
Richard Hughes
6adbcd2e62
ccgx: Expand the FWImageType for future hardware
...
This is needed to handle devices that do need the bootloader updated before the
actual firmware image.
2020-04-21 14:34:03 +01:00
Richard Hughes
ec279f161c
ccgx: Always report 100% when finished writing
2020-04-17 21:49:15 +01:00
Richard Hughes
da645fe912
ccgx: Set the device name and summary from quirk files
...
Based on a patch by Ryan Lee <ryle@cypress.com>, many thanks.
2020-04-17 21:48:02 +01:00
Richard Hughes
08d5caa758
ccgx: Split out a trivial helper to set the instance IDs
...
As a consequence, the version number is also set in the event that the silicon
or firmware app-id is not set, which also seems like the right thing to do.
2020-04-16 15:52:55 +01:00
Richard Hughes
919d90e941
ccgx: Set the device name to be more useful
...
Based on a patch by Ryan Lee <ryle@cypress.com>, many thanks.
2020-04-16 15:52:55 +01:00
Richard Hughes
e419792c61
ccgx: Set the logical ID as the FwMode
2020-04-16 15:52:55 +01:00
Richard Hughes
d41e8254ca
ccgx: Split out a trivial function to set the version
2020-04-16 15:52:55 +01:00
Richard Hughes
71f5eaa371
ccgx: Do not reboot the device write after installing
...
Since a8c6c0 we do not conditionalize the attach on the BOOTLOADER flag, and so
attach gets run once manually, and then again automatically.
2020-04-16 15:52:55 +01:00
Richard Hughes
54e3feae12
ccgx: Do no show the flash parameters when unknown
2020-04-16 15:52:55 +01:00
Ryan Lee
ac58360be7
ccgx: remove update message
2020-04-08 13:27:37 +01:00
Ryan Lee
d3fe478168
ccgx: add parent guid for hybrid dock
2020-04-08 09:09:54 +01:00
Richard Hughes
d38baba712
ccgx: Use a smaller timeout for i2c read and write operations
2020-04-07 19:50:43 +01:00
Richard Hughes
ebaa488b64
ccgx: Retry the register read and write with a i2c reset
...
Based on a patch by Ryan Lee <ryle@cypress.com>, many thanks.
2020-04-07 19:50:43 +01:00
Richard Hughes
2e0954f5c9
ccgx: Fix buffer overflow when reading out i2c status
...
Based on a patch by Ryan Lee <ryle@cypress.com>, many thanks.
2020-04-07 19:50:43 +01:00
Richard Hughes
1ae10f1016
Revert "ccgx: Reset the i2c bridge on status failure"
...
This reverts commit 49797d7de4
.
2020-04-07 19:50:43 +01:00
Richard Hughes
5a7095dee4
ccgx: Retry the HID disconnect up to 5 times
...
Based on a patch by Ryan Lee <ryle@cypress.com>, many thanks.
2020-04-07 19:50:43 +01:00
Richard Hughes
920713245d
ccgx: Show a better error message on failure
2020-04-07 12:50:28 -05:00
Richard Hughes
481b01046b
ccgx: Allow forcing firmware of the wrong app_type with fwupdtool
...
If we corrupt the flash, the app_type is 0x0 and we need to force this with a
known-good image to recover the hardware. Ask me how I know.
2020-04-07 18:43:31 +01:00
Ryan Lee
b9fecc4b9c
ccgx: Fix critical warning on i2c write failure
2020-04-07 10:47:01 +01:00
Richard Hughes
b951a18fae
ccgx: Do not add the HID device that will disconnect
2020-04-01 10:38:50 +01:00
ChangHee (Ryan) Lee
60103e2207
ccgx: Use Silicon ID and Application type to set flash parameters
...
Also remove unused instance id and fix application type matching as we now get
the image type from the quirk file.
2020-04-01 10:38:50 +01:00
Richard Hughes
61d9449d31
ccgx: Show the UpdateMessage in the correct device mode
2020-03-31 08:59:27 +01:00
Richard Hughes
be12af78f0
ccgx: Add extra instance IDs to match specific firmware
...
The VID:PID of the device in HPI mode is shared between multiple vendors, and
so we need to use both the silicon ID and the application ID to match specific
firmware updates.
2020-03-31 08:59:27 +01:00
Richard Hughes
49797d7de4
ccgx: Reset the i2c bridge on status failure
2020-03-28 12:46:03 +00:00
Richard Hughes
5d787b5958
trivial: Set up the parent GUIDs for the Lenovo Gen2 Dock
2020-03-27 13:57:09 +00:00
Richard Hughes
81da69e73d
ccgx: Implement writing firmware to flash
...
Correctly attach into the alternate mode after the update has completed.
The vendor was appending two files to make LVFS distribution 'easier' but I'd
much rather use the same deliverables as Windows. This also allows us to
simplify the firmware loading.
2020-03-27 13:25:40 +00:00
Changhee (Ryan) Lee
338f5a4083
ccgx: Add i2c status check when reading or writing registers
...
Signed-off-by: Richard Hughes <richard@hughsie.com>
2020-03-27 13:25:40 +00:00
Changhee (Ryan) Lee
064c5cce19
ccgx: Add 5ms delay between read registers to avoid an i2c error
...
Signed-off-by: Richard Hughes <richard@hughsie.com>
2020-03-27 13:25:40 +00:00
Richard Hughes
87d39d06a3
ccgx: Do not store the silicon ID in the image address
...
First, it's a hack; second we actually need to store the start address for
flashing FW2 on asymmetric hardware...
2020-03-24 21:16:08 +00:00
Richard Hughes
bf5481e358
ccgx: Add device quirks for the Lenovo Hybrid Dock
2020-03-24 21:16:08 +00:00
Richard Hughes
9278e265b4
ccgx: Switch HID mode to HPI mode at startup
2020-03-24 21:16:08 +00:00
Richard Hughes
dab6bda2be
ccgx: Clear the event queue when in startup
2020-03-24 21:16:08 +00:00
Richard Hughes
fd7f13f905
ccgx: Wait for hardware to settle when coming out of reset
2020-03-24 21:16:08 +00:00
Richard Hughes
3990a71401
ccgx: Do not mark the device as updatable when in boot mode
2020-03-24 21:16:08 +00:00