Hi.
Is there any reason why in the sim_handler() function, in
case SIM_STATE_TX_DATA:
if (!txDoneFlag)
break; /* wait until data is transmitted */
/* Disable all interrupt driven functions */
writew(0xFF, REG_SIM_MASKIT);
/* Ignore waiting char for RUN GSM ALGORITHM */
/* TODO: implement proper handling of the "Procedure Bytes"
than this is no longer needed */
if(sim_data[1] == 0x88)
sim_ignore_waiting_char = 1;
sim_state = SIM_STATE_RX_STATUS;
calypso_sim_receive(response + length + 1, 2);
break;
we do "calypso_sim_receive(response + length + 1, 2);" instead of "calypso_sim_receive(response + 1, 2);".
Seems an unnecessary overhead sending back some junk chars there. Or I'm missing something?
Cheers,
Mihai.