From 66e97a3a3a70b4af6b142c12ed6fbc471e60f7f4 Mon Sep 17 00:00:00 2001 From: Default Name Date: Tue, 15 Sep 2020 12:01:43 +0100 Subject: [PATCH 1/3] Fix USB disconnect cycles setting EPs to not-ready indefinitely --- CHANGELOG.rst | 2 ++ lib_xud/src/core/included/XUD_Token_Out.S | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 87e9b844..67fcbcf3 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -5,6 +5,8 @@ lib_xud Change Log ----- * RESOLVED: Cases where disabling RxError caused firmware to crash + * RESOLVED: USB Disconnect on self-powered devices causing EP set to not-ready + indefinitely 1.1.0 ----- diff --git a/lib_xud/src/core/included/XUD_Token_Out.S b/lib_xud/src/core/included/XUD_Token_Out.S index 028e7870..1213dc6c 100755 --- a/lib_xud/src/core/included/XUD_Token_Out.S +++ b/lib_xud/src/core/included/XUD_Token_Out.S @@ -28,9 +28,10 @@ CheckEpTypeOut: bt r11, DoOutNonIso // ISO endpoint OutReady: - stw r11, r5[r10] // Clear ready straight away - we don't to CRC checking on Iso - else we would have to wait for end of packet bl doRXData clre + ldc r11, 0 + stw r11, r5[r10] // Clear ready after receiving packet - avoids EP getting stuck in not-ready state if interrupted InformEP_Iso: // Iso EP - no handshake ldw r11, r3[1] // Load EP chanend From 69f3b7a8fd98937b4a6a0461f659af3aabcfa5d6 Mon Sep 17 00:00:00 2001 From: Default Name Date: Tue, 15 Sep 2020 12:16:00 +0100 Subject: [PATCH 2/3] Fix changelog and copyright notices --- CHANGELOG.rst | 4 ++-- lib_xud/src/core/included/XUD_Token_Out.S | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 67fcbcf3..b08e850c 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -5,8 +5,8 @@ lib_xud Change Log ----- * RESOLVED: Cases where disabling RxError caused firmware to crash - * RESOLVED: USB Disconnect on self-powered devices causing EP set to not-ready - indefinitely + * RESOLVED: USB Disconnect on self-powered devices causing EP set to + not-ready indefinitely 1.1.0 ----- diff --git a/lib_xud/src/core/included/XUD_Token_Out.S b/lib_xud/src/core/included/XUD_Token_Out.S index 1213dc6c..cdca3491 100755 --- a/lib_xud/src/core/included/XUD_Token_Out.S +++ b/lib_xud/src/core/included/XUD_Token_Out.S @@ -1,4 +1,4 @@ -// Copyright (c) 2011-2018, XMOS Ltd, All rights reserved +// Copyright (c) 2011-2020, XMOS Ltd, All rights reserved // r10: EP number // OUT Token Packet ----------------------------------------------------------------------------- // Ports From 32f96f82dfa87cb39387052d1ea839ba4c2e686b Mon Sep 17 00:00:00 2001 From: Ross Owen Date: Tue, 15 Sep 2020 12:19:00 +0100 Subject: [PATCH 3/3] Update CHANGELOG.rst --- CHANGELOG.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index b08e850c..9fc055dc 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -5,8 +5,8 @@ lib_xud Change Log ----- * RESOLVED: Cases where disabling RxError caused firmware to crash - * RESOLVED: USB Disconnect on self-powered devices causing EP set to - not-ready indefinitely + * RESOLVED: USB Disconnect on self-powered devices intermittently causing + EP set to not-ready indefinitely 1.1.0 -----