From 96abe9a5cd8b8be674bb66d83fc1e30cfe51e130 Mon Sep 17 00:00:00 2001 From: Daniel Hammer Date: Mon, 18 May 2026 17:53:10 +0200 Subject: [PATCH] fix: USB mass storage polish --- kernel/src/Drivers/USB/MassStorage.cpp | 4 ++-- kernel/src/Drivers/USB/Xhci.cpp | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/kernel/src/Drivers/USB/MassStorage.cpp b/kernel/src/Drivers/USB/MassStorage.cpp index 151515a..6471aa5 100644 --- a/kernel/src/Drivers/USB/MassStorage.cpp +++ b/kernel/src/Drivers/USB/MassStorage.cpp @@ -358,10 +358,10 @@ namespace Drivers::USB::MassStorage { uint8_t cdb[6] = {}; cdb[0] = SCSI_TEST_UNIT_READY; - for (int i = 0; i < 20; i++) { + for (int i = 0; i < 5; i++) { if (ScsiCommand(dev, cdb, 6, nullptr, 0, 0, false)) return true; RequestSense(dev); - PollWaitMs(100); + PollWaitMs(50); } return false; diff --git a/kernel/src/Drivers/USB/Xhci.cpp b/kernel/src/Drivers/USB/Xhci.cpp index a0287f7..d13c2d6 100644 --- a/kernel/src/Drivers/USB/Xhci.cpp +++ b/kernel/src/Drivers/USB/Xhci.cpp @@ -578,8 +578,8 @@ namespace Drivers::USB::Xhci { } } - KernelLogStream(WARNING, "xHCI") << "Control transfer timeout on slot " << base::dec << (uint64_t)slotId; - + // Callers already log their own error with request context; the xHCI + // layer just returns 0xFF and recovers EP0 so the next transfer works. // Recover EP0 ring: Stop Endpoint, then Set TR Dequeue Pointer // so that subsequent control transfers on this slot still work. TRB stopTrb = {};