laforge has submitted this change. ( 
https://gerrit.osmocom.org/c/simtrace2/+/24535 )

Change subject: firmware: cardem: re-factor CARDINSERT command processing
......................................................................

firmware: cardem: re-factor CARDINSERT command processing

move it out of the general command dispatch switch statement
and into a separate function.

Change-Id: Ia40c3d9999be68248da0dcc69d298450ca6e4869
---
M firmware/libcommon/source/mode_cardemu.c
1 file changed, 17 insertions(+), 12 deletions(-)

Approvals:
  Jenkins Builder: Verified
  laforge: Looks good to me, approved



diff --git a/firmware/libcommon/source/mode_cardemu.c 
b/firmware/libcommon/source/mode_cardemu.c
index 8a59e16..3863767 100644
--- a/firmware/libcommon/source/mode_cardemu.c
+++ b/firmware/libcommon/source/mode_cardemu.c
@@ -652,6 +652,22 @@
        usb_buf_free(msg);
 }

+static void process_card_insert(struct cardem_inst *ci, bool card_insert)
+{
+       TRACE_INFO("%u: set card_insert to %s\r\n", ci->num, card_insert ? 
"INSERTED" : "REMOVED");
+
+       if (!ci->pin_insert.pio) {
+               TRACE_INFO("%u: skipping unsupported card_insert to %s\r\n",
+                          ci->num, card_insert ? "INSERTED" : "REMOVED");
+               return;
+       }
+
+       if (card_insert)
+               PIO_Set(&ci->pin_insert);
+       else
+               PIO_Clear(&ci->pin_insert);
+}
+
 /* handle a single USB command as received from the USB host */
 static void dispatch_usb_command_cardem(struct msgb *msg, struct cardem_inst 
*ci)
 {
@@ -675,18 +691,7 @@
                break;
        case SIMTRACE_MSGT_DT_CEMU_CARDINSERT:
                cardins = (struct cardemu_usb_msg_cardinsert *) msg->l2h;
-               if (!ci->pin_insert.pio) {
-                       TRACE_INFO("%u: skipping unsupported card_insert to 
%s\r\n",
-                                  ci->num, cardins->card_insert ? "INSERTED" : 
"REMOVED");
-                       usb_buf_free(msg);
-                       break;
-               }
-               TRACE_INFO("%u: set card_insert to %s\r\n", ci->num,
-                          cardins->card_insert ? "INSERTED" : "REMOVED");
-               if (cardins->card_insert)
-                       PIO_Set(&ci->pin_insert);
-               else
-                       PIO_Clear(&ci->pin_insert);
+               process_card_insert(ci, cardins->card_insert);
                usb_buf_free(msg);
                break;
        case SIMTRACE_MSGT_BD_CEMU_STATUS:

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

Gerrit-Project: simtrace2
Gerrit-Branch: master
Gerrit-Change-Id: Ia40c3d9999be68248da0dcc69d298450ca6e4869
Gerrit-Change-Number: 24535
Gerrit-PatchSet: 1
Gerrit-Owner: laforge <lafo...@osmocom.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <lafo...@osmocom.org>
Gerrit-MessageType: merged

Reply via email to