aboutsummaryrefslogtreecommitdiffstats
path: root/community/heimdall/reset-device-before-handshake.patch
diff options
context:
space:
mode:
Diffstat (limited to 'community/heimdall/reset-device-before-handshake.patch')
-rw-r--r--community/heimdall/reset-device-before-handshake.patch50
1 files changed, 0 insertions, 50 deletions
diff --git a/community/heimdall/reset-device-before-handshake.patch b/community/heimdall/reset-device-before-handshake.patch
deleted file mode 100644
index 6ca2e620cad..00000000000
--- a/community/heimdall/reset-device-before-handshake.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From 745dbb46004a328f0db04cc75b6d4124562591a2 Mon Sep 17 00:00:00 2001
-From: Jesse Chan <jc@linux.com>
-Date: Tue, 5 May 2020 16:14:46 +0800
-Subject: [PATCH] InitialiseProtocol: reset device before handshake
-
-Heimdall fails to handshake with device on my Linux installation:
-Initialising protocol...
-ERROR: libusb error -7 whilst sending bulk transfer. Retrying...
-ERROR: libusb error -7 whilst sending bulk transfer. Retrying...
-ERROR: libusb error -7 whilst sending bulk transfer. Retrying...
-ERROR: libusb error -7 whilst sending bulk transfer. Retrying...
-ERROR: libusb error -7 whilst sending bulk transfer. Retrying...
-ERROR: libusb error -7 whilst sending bulk transfer.
-ERROR: Failed to send handshake!
-ERROR: Failed to receive handshake response. Result: -7
-ERROR: Protocol initialisation failed!
-
-However, with the same USB cable, port and device, Heimdall
-successfully handshake with the device on Windows via WinUSB.
-This indicates handling of USB devices of host (AMD X570) on
-Linux might lead to undesired results. Though, without further
-testing, the interference from userspace (Ubuntu 20.04, KDE) can
-not be ruled out.
-
-Thus, this patch calls libusb_reset_device to ensure
-the USB port is in a clean state before we send the data.
-
-Fixes issues with newer devices and hosts.
-
-Signed-off-by: Jesse Chan <jc@linux.com>
----
- heimdall/source/BridgeManager.cpp | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/heimdall/source/BridgeManager.cpp b/heimdall/source/BridgeManager.cpp
-index 1b658c8..1ad217c 100644
---- a/heimdall/source/BridgeManager.cpp
-+++ b/heimdall/source/BridgeManager.cpp
-@@ -303,6 +303,11 @@ bool BridgeManager::InitialiseProtocol(void)
- memcpy(dataBuffer, "ODIN", 4);
- memset(dataBuffer + 4, 0, 1);
-
-+ if (libusb_reset_device(deviceHandle))
-+ {
-+ Interface::PrintError("Failed to reset device!");
-+ }
-+
- if (!SendBulkTransfer(dataBuffer, 4, 1000))
- {
- Interface::PrintError("Failed to send handshake!");