diff --git a/firmware/include_board/owhw/board.h b/firmware/include_board/owhw/board.h index fa1cac16..cd15339a 100644 --- a/firmware/include_board/owhw/board.h +++ b/firmware/include_board/owhw/board.h @@ -35,6 +35,8 @@ #define PINS_USIM1 PINS_TC_USIM1, PINS_ISO7816_USIM1, PIN_USIM1_nRST, PIN_SET_USIM1_PRES #define PINS_USIM2 PINS_TC_USIM2, PINS_ISO7816_USIM2, PIN_USIM2_nRST, PIN_SET_USIM2_PRES +#define PINS_CARDSIM { PIN_SET_USIM1_PRES, PIN_SET_USIM2_PRES } + #define SIMTRACE_VENDOR_ID 0x1d50 #define SIMTRACE_PRODUCT_ID 0x60e3 /* FIXME */ #define USB_VENDOR_ID SIMTRACE_VENDOR_ID diff --git a/firmware/src_board/owhw.c b/firmware/src_board/owhw.c new file mode 100644 index 00000000..c020d64d --- /dev/null +++ b/firmware/src_board/owhw.c @@ -0,0 +1,39 @@ +/* Card simulator specific functions */ +/* (C) 2015 by Harald Welte + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + */ + +#include "chip.h" +#include "board.h" + +static const Pin pins_cardsim[] = PINS_CARDSIM; + +void cardsim_set_simpres(uint8_t slot, int present) +{ + if (slot > 1) + return; + + if (present) + PIO_Set(&pins_cardsim[slot]); + else + PIO_Clear(&pins_cardsim[slot]); +} + +void cardsim_gpio_init(void) +{ + PIO_Configure(&pins_cardsim, ARRAY_SIZE(pins_cardsim)); +}