FreeCalypso > hg > fc-magnetite
view cdg211/prim/gmmsm.pdf @ 635:baa0a02bc676
niq32.c DTR handling restored for targets that have it
TI's original TCS211 fw treated GPIO 3 as the DTR input (wired so on C-Sample
and D-Sample boards, also compatible with Leonardo and FCDEV3B which have a
fixed pull-down resistor on this GPIO line), and the code in niq32.c called
UAF_DTRInterruptHandler() (implemented in uartfax.c) from the
IQ_KeypadGPIOHandler() function. But on Openmoko's GTA02 with their official
fw this GPIO is a floating input, all of the DTR handling code in uartfax.c
including the interrupt logic is still there, but the hobbled TCS211-20070608
semi-src delivery which OM got from TI contained a change in niq32.c (which
had been kept in FC until now) that removed the call to
UAF_DTRInterruptHandler() as part of those not-quite-understood "CC test"
hacks.
The present change fixes this bug at a long last: if we are building fw for a
target that has TI's "classic" DTR & DCD GPIO arrangement (dsample, fcmodem and
gtm900), we bring back all of TI's original code in both uartfax.c and niq32.c,
whereas if we are building fw for a target that does not use this classic GPIO
arrangement, the code in niq32.c goes back to what we got from OM and all
DTR & DCD code in uartfax.c is conditioned out. This change also removes the
very last remaining bit of "CC test" bogosity from our FreeCalypso code base.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sun, 19 Jan 2020 01:41:35 +0000 |
parents | 56abf6cf8a0b |
children |
line wrap: on
line source
;******************************************************************************** ;*** File : gmmsm.pdf ;*** Creation : Fri Jun 08 13:57:29 CST 2007 ;*** XSLT Processor : Apache Software Foundation / http://xml.apache.org/xalan-j / supports XSLT-Ver: 1 ;*** Copyright : (c) Texas Instruments AG, Berlin Germany 2002 ;******************************************************************************** ;*** Document Type : Service Access Point Specification ;*** Document Name : gmmsm ;*** Document No. : 8441.106.00.005 ;*** Document Date : 2003-01-23 ;*** Document Status: BEING_PROCESSED ;*** Document Author: FRI ;******************************************************************************** PRAGMA SRC_FILE_TIME "Mon Nov 24 15:49:28 2003" PRAGMA LAST_MODIFIED "2003-01-23" PRAGMA ID_AND_VERSION "8441.106.00.005" CONST GMMSM_MAX_N_PDU_NUMBER_LIST 16 ; maximum sequence number value VALTAB VAL_sm_cause VAL 0x0A30 - 0x0A3F "retry upon entry into a new cell" VAL DEF "Protocol error, unspecified" VAL 0x0A02 SM_ERRCS_IMSI_UNKNOWN "IMSI unknown in HLR" VAL 0x0A03 SM_ERRCS_ILLEGAL_MS "Illegal MS" VAL 0x0A04 SM_ERRCS_IMEI_NOT_ACCEPTED "IMEI not accepted" VAL 0x0A06 SM_ERRCS_ILLEGAL_ME "Illegal ME" VAL 0x0A07 SM_ERRCS_GPRS_NOT_ALLOWED "GPRS services not allowed" VAL 0x0A08 SM_ERRCS_GSM_GPRS_NOT_ALLOWED "GPRS services and non-GPRS services not allowed" VAL 0x0A09 SM_ERRCS_NO_MS_ID "MS identity cannot be derived by the network" VAL 0x0A0A SM_ERRCS_IMPLICIT_DETACHED "Implicitly detached" VAL 0x0A0B SM_ERRCS_PLMN_NOT_ALLOWED "PLMN not allowed" VAL 0x0A0C SM_ERRCS_LA_NOT_ALLOWED "Location Area not allowed" VAL 0x0A0D SM_ERRCS_ROAMING_NOT_ALLOWED "Roaming not allowed in this location area" VAL 0x0A10 SM_ERRCS_MSC_TEMP_NOT_RECHABLE "MSC temporarily not reachable" VAL 0x0A11 SM_ERRCS_NET_FAIL "Network failure" VAL 0x0A16 SM_ERRCS_CONGESTION "Congestion" VAL 0x0A5F SM_ERRCS_SEMANTIC_INCORRECT "Semantically incorrect message" VAL 0x0A60 SM_ERRCS_INVALID_M_INFO "Invalid mandatory information" VAL 0x0A61 SM_ERRCS_TYPE_INVALID "Message type non-existent or not implemented" VAL 0x0A62 SM_ERRCS_TYPE_INCOMPATIBLE "Message type not compatible with the protocol state" VAL 0x0A63 SM_ERRCS_IE_INVALID "Information element non-existent or not implemented" VAL 0x0A64 SM_ERRCS_COND_IE_ERROR "Conditional IE error" VAL 0x0A65 SM_ERRCS_MESSAGE_INVALID "Message not compatible with the protocol state" VAL 0x0A6F SM_ERRCS_PROTOCOL_ERROR "Protocol error, unspecified" VAL 0x0A70 SM_ERRCS_POWER_OFF "local detach on power off" VALTAB VAL_nsapi VAL DEF "reserved" VAL 5 GMMSM_NSAPI_5 "NSAPI 5" VAL 6 GMMSM_NSAPI_6 "NSAPI 6" VAL 7 GMMSM_NSAPI_7 "NSAPI 7" VAL 8 GMMSM_NSAPI_8 "NSAPI 8" VAL 9 GMMSM_NSAPI_9 "NSAPI 9" VAL 10 GMMSM_NSAPI_10 "NSAPI 10" VAL 11 GMMSM_NSAPI_11 "NSAPI 11" VAL 12 GMMSM_NSAPI_12 "NSAPI 12" VAL 13 GMMSM_NSAPI_13 "NSAPI 13" VAL 14 GMMSM_NSAPI_14 "NSAPI 14" VAL 15 GMMSM_NSAPI_15 "NSAPI 15" VAR l_buf "length of content in bit" S VAR o_buf "offset of content in bit" S VAR buf "buffer content" B VAR sm_cause "error cause" S VAL @p_gmmsm - VAL_sm_cause@ VAR nsapi "NSAPI" B VAL @p_gmmsm - VAL_nsapi@ VAR receive_n_pdu_number_val "Receive N-PDU Number value" B COMP sdu "service data unit" { l_buf ; length of content in bit o_buf ; offset of content in bit buf [1] ; buffer content } COMP npdu_list "list of received N-PDU numbers" { nsapi ; NSAPI receive_n_pdu_number_val ; Receive N-PDU Number value } ; GMMSM_ESTABLISH_REQ 0x2400 ; GMMSM_ESTABLISH_CNF 0x6400 ; GMMSM_ESTABLISH_REJ 0x6401 ; GMMSM_RELEASE_IND 0x6402 ; GMMSM_UNITDATA_REQ 0x2401 ; GMMSM_UNITDATA_IND 0x6403 ; GMMSM_SEQUENCE_IND 0x6404 ; GMMSM_SEQUENCE_RES 0x2402 PRIM GMMSM_ESTABLISH_REQ 0x2400 { } PRIM GMMSM_ESTABLISH_CNF 0x6400 { } PRIM GMMSM_ESTABLISH_REJ 0x6401 { sm_cause ; error cause } PRIM GMMSM_RELEASE_IND 0x6402 { } PRIM GMMSM_UNITDATA_REQ 0x2401 { sdu ; service data unit } PRIM GMMSM_UNITDATA_IND 0x6403 { sdu ; service data unit } PRIM GMMSM_SEQUENCE_IND 0x6404 { npdu_list [1..GMMSM_MAX_N_PDU_NUMBER_LIST] ; list of received N-PDU numbers } PRIM GMMSM_SEQUENCE_RES 0x2402 { npdu_list [1..GMMSM_MAX_N_PDU_NUMBER_LIST] ; list of received N-PDU numbers }