enable (empty) sniffer support for SIMtrace board

This commit is contained in:
Kevin Redon 2018-06-04 16:30:01 +02:00
parent 33d62aa17a
commit 7bcbae3ad9
2 changed files with 15 additions and 8 deletions

View File

@ -11,7 +11,7 @@
/** Phone (SIM card emulator)/CCID Reader/MITM configuration **/
/* Normally the communication lines between phone and SIM card are disconnected */
// Disconnect SIM card I/O, VPP line from the phone lines
// FIXME: Per default pins are input, therefore high-impedance, therefore they don not activate the bus switch, right?
// FIXME: Per default pins are input, therefore high-impedance, therefore the bus switch is in an unknown state by default for hardware version <= 1.4. It should be pulled high by an external resistor to set the bus switch to high-impedance (e.g. off).
#define PIN_SC_SW_DEFAULT {PIO_PA20, PIOA, ID_PIOA, PIO_OUTPUT_1, PIO_DEFAULT}
// Disconnect SIM card RST, CLK line from the phone lines
#define PIN_IO_SW_DEFAULT {PIO_PA19, PIOA, ID_PIOA, PIO_OUTPUT_1, PIO_DEFAULT}
@ -82,7 +82,7 @@
#define BOARD_DFU_USB_PRODUCT_ID USB_PRODUCT_SIMTRACE2_DFU
#define BOARD_USB_RELEASE 0x000
//#define HAVE_SNIFFER
#define HAVE_SNIFFER
#define HAVE_CCID
#define HAVE_CARDEM
//#define HAVE_MITM

View File

@ -27,14 +27,15 @@
* ----------------------------------------------------------------------------
*/
#include "board.h"
#include "simtrace.h"
#ifdef HAVE_SNIFFER
/*------------------------------------------------------------------------------
* Headers
*------------------------------------------------------------------------------*/
#include "board.h"
#include <string.h>
/*------------------------------------------------------------------------------
@ -67,6 +68,12 @@ static struct Usart_info usart_info = {
.state = USART_RCV,
};
int check_data_from_phone(void)
{
TRACE_INFO("check data from phone\n\r");
}
/*-----------------------------------------------------------------------------
* Initialization routine
*-----------------------------------------------------------------------------*/
@ -74,22 +81,22 @@ static struct Usart_info usart_info = {
/* Called during USB enumeration after device is enumerated by host */
void Sniffer_configure(void)
{
TRACE_INFO("Sniffer config\n");
TRACE_INFO("Sniffer config\n\r");
}
/* called when *different* configuration is set by host */
void Sniffer_exit(void)
{
TRACE_INFO("Sniffer exit\n");
TRACE_INFO("Sniffer exit\n\r");
USART_DisableIt(USART_PHONE, US_IER_RXRDY);
NVIC_DisableIRQ(USART1_IRQn);
USART_SetReceiverEnabled(USART_PHONE, 0);
}
/* called when *CCID* configuration is set by host */
/* called when *Sniffer* configuration is set by host */
void Sniffer_init(void)
{
TRACE_INFO("Sniffer Init\n");
TRACE_INFO("Sniffer Init\n\r");
/* Configure ISO7816 driver */
PIO_Configure(pinsISO7816_sniff, PIO_LISTSIZE(pinsISO7816_sniff));
PIO_Configure(pins_bus, PIO_LISTSIZE(pins_bus));