M .gitmodules => .gitmodules +0 -1
@@ 59,7 59,6 @@
[submodule "module-bsp/board/rt1051/bsp/usb"]
path = module-bsp/board/rt1051/bsp/usb
url = ../usb_stack.git
- branch = stable
[submodule "module-vfs/thirdparty/fatfs"]
path = module-vfs/thirdparty/fatfs
url = ../fatfs.git
M module-bsp/board/linux/usb_cdc/usb_cdc.cpp => module-bsp/board/linux/usb_cdc/usb_cdc.cpp +5 -0
@@ 150,6 150,11 @@ namespace bsp
std::remove(ptsFileName);
}
+ void usbReinit(const char * /*mtpRoot*/)
+ {
+ LOG_INFO("usbReinit");
+ }
+
int usbInit(xQueueHandle receiveQueue, xQueueHandle irqQueue, USBDeviceListener *)
{
M module-bsp/board/rt1051/bsp/usb => module-bsp/board/rt1051/bsp/usb +1 -1
@@ 1,1 1,1 @@
-Subproject commit 99d53c995db6f00dcea5e3a312426481dba78ea3
+Subproject commit 4381632145feb752622397d1f04b8064b1e96811
M module-bsp/bsp/usb/usb.hpp => module-bsp/bsp/usb/usb.hpp +2 -0
@@ 44,4 44,6 @@ namespace bsp
int usbCDCSend(std::string *sendMsg);
int usbCDCSendRaw(const char *dataPtr, size_t dataLen);
void usbDeinit();
+ void usbReinit(const char *mtpRoot);
+
} // namespace bsp
M module-services/service-desktop/ServiceDesktop.cpp => module-services/service-desktop/ServiceDesktop.cpp +1 -0
@@ 114,6 114,7 @@ sys::ReturnCodes ServiceDesktop::InitHandler()
backupStatus.state = BackupRestore::BackupUserFiles(this, backupStatus.backupTempDir);
backupStatus.location =
(purefs::dir::getBackupOSPath() / backupStatus.task).replace_extension(purefs::extension::tar);
+ desktopWorker->reinit(backupStatus.location.parent_path());
}
return sys::MessageNone{};
});
M module-services/service-desktop/WorkerDesktop.cpp => module-services/service-desktop/WorkerDesktop.cpp +10 -0
@@ 50,6 50,16 @@ bool WorkerDesktop::deinit(void)
return true;
}
+bool WorkerDesktop::reinit(const std::filesystem::path &path)
+{
+ LOG_DEBUG("Reinit USB begin");
+
+ bsp::usbReinit(path.c_str());
+
+ LOG_DEBUG("Reinit USB end");
+ return true;
+}
+
bool WorkerDesktop::handleMessage(uint32_t queueID)
{
auto &queue = queues[queueID];
M module-services/service-desktop/service-desktop/WorkerDesktop.hpp => module-services/service-desktop/service-desktop/WorkerDesktop.hpp +2 -0
@@ 30,6 30,8 @@ class WorkerDesktop : public sys::Worker, public bsp::USBDeviceListener
virtual bool init(std::list<sys::WorkerQueueInfo> queues) override;
virtual bool deinit() override;
+ bool reinit(const std::filesystem::path &path);
+
bool handleMessage(uint32_t queueID) override final;
xQueueHandle getReceiveQueue()