cardem: Add SIMTRACE_MSGT_BD_CEMU_CONFIG

The new SIMTRACE_MSGT_BD_CEMU_CONFIG command can be used to set/change
a bitmask of optional features that can be enabled in the simtrace
by the host software.  This is useful for enabling features in the
firmware which are not supported by older host utilities.

The firmware will return the actually set/configured features in
response.

The feature bitmask is not yet used anywhere; it will be by subequent
patches.

Change-Id: I7cdd3f9171dbed45de0089defe29d2b59044bd84
This commit is contained in:
Harald Welte
2019-12-16 10:39:55 +01:00
parent 140f007c3e
commit a5bbe78d2d
4 changed files with 54 additions and 0 deletions

View File

@@ -507,6 +507,7 @@ static void dispatch_usb_command_cardem(struct msgb *msg, struct cardem_inst *ci
struct simtrace_msg_hdr *hdr;
struct cardemu_usb_msg_set_atr *atr;
struct cardemu_usb_msg_cardinsert *cardins;
struct cardemu_usb_msg_config *cfg;
struct llist_head *queue;
hdr = (struct simtrace_msg_hdr *) msg->l1h;
@@ -541,6 +542,10 @@ static void dispatch_usb_command_cardem(struct msgb *msg, struct cardem_inst *ci
card_emu_report_status(ci->ch, false);
usb_buf_free(msg);
break;
case SIMTRACE_MSGT_BD_CEMU_CONFIG:
cfg = (struct cardemu_usb_msg_config *) msg->l2h;
card_emu_set_config(ci->ch, cfg, msgb_l2len(msg));
break;
case SIMTRACE_MSGT_BD_CEMU_STATS:
default:
/* FIXME: Send Error */