laforge has uploaded this change for review. ( 
https://gerrit.osmocom.org/c/simtrace2/+/28795 )


Change subject: cardem: reset the uC in case of USB disconnect
......................................................................

cardem: reset the uC in case of USB disconnect

This fixes the firmware USB interface somehow getting stuck
after a USB disconnect/reconnect without power cycle.

Right now there are a number of things we only execute the first time we
reach USBD_STATE_CONFIGURED, but not at any subsequent such event.

It's also rather clear that this doesn't really show in simtrace2 as it
is bus-powered. And it doesn't show on OWHW as we don't have any USB
unplug situations of the USB between the on-board traces of USB host and
SAM3S.  So this really only is relevant to QMOD.

A cheap and dirty work-around is to simply reset the entire uC every
time a USB unplug happens.

Change-Id: I6678bb2192c1419ed388b46c4ae7aa1ce18dc7ee
Related: OS#5578
---
M firmware/apps/cardem/main.c
1 file changed, 4 insertions(+), 0 deletions(-)



  git pull ssh://gerrit.osmocom.org:29418/simtrace2 refs/changes/95/28795/1

diff --git a/firmware/apps/cardem/main.c b/firmware/apps/cardem/main.c
index 347ccbd..4c337c8 100644
--- a/firmware/apps/cardem/main.c
+++ b/firmware/apps/cardem/main.c
@@ -206,6 +206,10 @@
                        if (isUsbConnected) {
                                isUsbConnected = 0;
                        }
+                       /* HACK: we don't really deal with USB disconnect yet,
+                        * so let's just reset the entire uC if this happens */
+                       TRACE_INFO("Resetting uC on USB disconnect\n\r");
+                       NVIC_SystemReset();
                } else if (isUsbConnected == 0) {
                        TRACE_INFO("USB is now configured\n\r");


--
To view, visit https://gerrit.osmocom.org/c/simtrace2/+/28795
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.osmocom.org/settings

Gerrit-Project: simtrace2
Gerrit-Branch: master
Gerrit-Change-Id: I6678bb2192c1419ed388b46c4ae7aa1ce18dc7ee
Gerrit-Change-Number: 28795
Gerrit-PatchSet: 1
Gerrit-Owner: laforge <[email protected]>
Gerrit-MessageType: newchange

Reply via email to