view src/g23m-aci/aci/psa_smss.c @ 673:62a5285e014a

Lorekeeping: allow tpudrv-leonardo.lib on Leonardo/Tango Back in 2015 the Mother's idea was to produce a FreeCalypso development board that would be a clone of TI Leonardo, including the original quadband RFFE; one major additional stipulation was that this board needed to be able to run original unmodified TCS211-20070608 firmware with all blobs intact, with only minimal binary patches to main.lib and tpudrv.lib. The necessary patched libs were produced at that time in the tcs211-patches repository. That plan was changed and we produced FCDEV3B instead, with Openmoko's triband RFFE instead of Leonardo quadband, but when FC Magnetite started in 2016, a TPUDRV_blob= provision was still made, allowing the possibility of patching OM's tpudrv.lib for a restored Leonardo RFFE. Now in 2020 we have FC Tango which is essentially a verbatim clone of Leonardo core, including the original quadband RFFE. We have also deblobbed our firmware so much that we have absolutely no real need for a blob version of tpudrv.lib - but I thought it would be neat to put the ancient TPUDRV_blob= mechanism (classic config) to its originally intended use, just for the heck of it.
author Mychaela Falconia <falcon@freecalypso.org>
date Fri, 29 May 2020 03:55:36 +0000
parents 53929b40109c
children
line wrap: on
line source

/* 
+----------------------------------------------------------------------------- 
|  Project :  GSM-PS (6147)
|  Modul   :  PSA_SMSS
+----------------------------------------------------------------------------- 
|  Copyright 2002 Texas Instruments Berlin, AG 
|                 All rights reserved. 
| 
|                 This file is confidential and a trade secret of Texas 
|                 Instruments Berlin, AG 
|                 The receipt of or possession of this file does not convey 
|                 any rights to reproduce or disclose its contents or to 
|                 manufacture, use, or sell anything it may describe, in 
|                 whole, or in part, without the specific written consent of 
|                 Texas Instruments Berlin, AG. 
+----------------------------------------------------------------------------- 
|  Purpose :  This module defines the signalling functions of the 
|             protocol stack adapter for the short message service SMS.
+----------------------------------------------------------------------------- 
*/ 

#ifndef PSA_SMSS_C
#define PSA_SMSS_C
#endif

#include "aci_all.h"

/*==== INCLUDES ===================================================*/
#include "aci_cmh.h"
#include "ati_cmd.h"
#include "aci_cmd.h"
#include "aci.h"
#include "psa.h"
#include "psa_sms.h"
#include "cmh_sms.h"
/*==== CONSTANTS ==================================================*/

/*==== TYPES ======================================================*/


/*==== EXPORT =====================================================*/


/*==== VARIABLES ==================================================*/

/*==== FUNCTIONS ==================================================*/

GLOBAL SHORT psaSMS_ReadReq ( UBYTE mem_type,  USHORT rec_num, 
                              UBYTE read_mode, T_ACI_SMS_STAT cmh_state )
{
  UBYTE psa_state;

  TRACE_FUNCTION ("psaSMS_ReadReq()");

  /*
   *-------------------------------------------------------------------
   * create and send primitive for SMS read
   *-------------------------------------------------------------------
   */
  {
    PALLOC (mnsms_read_req, MNSMS_READ_REQ);

    mnsms_read_req -> mem_type  = mem_type;
    mnsms_read_req -> rec_num   = (UBYTE)rec_num;
    mnsms_read_req -> read_mode = read_mode;
    if (cmhSMS_getStatPsa(cmh_state, &psa_state))
      mnsms_read_req -> status = psa_state;
    else
      mnsms_read_req -> status = NOT_PRESENT_8BIT;
      
    PSENDX (SMS, mnsms_read_req);
  }

  return 0;
}

#ifdef TI_PS_FF_AT_P_CMD_CPRSM
/*
+-------------------------------------------------------------------+
| PROJECT : GSM-PS (6147)    MODULE  : PSA_SMSS                     |
|                            ROUTINE : psaSMS_PauseReq              |
+-------------------------------------------------------------------+

  ACI-ENH-19450: Added for %CPRMS command (MDF-07.04.2004)
  
  PURPOSE : build and send MNSMS_PAUSE_REQ to SMS

*/

GLOBAL void psaSMS_PauseReq ( )
{

  TRACE_FUNCTION ("psaSMS_PauseReq()");

  /* build and send MNSMS_PAUSE_REQ */
  {
    PALLOC (mnsms_pause_req, MNSMS_PAUSE_REQ);      
    PSENDX (SMS, mnsms_pause_req);
  }
  
}

/*
+-------------------------------------------------------------------+
| PROJECT : GSM-PS (6147)    MODULE  : PSA_SMSS                     |
|                            ROUTINE : psaSMS_ResumeReq             |
+-------------------------------------------------------------------+

  ACI-ENH-19450: Added for %CPRMS command (MDF-07.04.2004)
  
  PURPOSE : build and send MNSMS_RESUME_REQ to SMS

*/

GLOBAL void psaSMS_ResumeReq ( )
{

  TRACE_FUNCTION ("psaSMS_ResumeReq()");

  /* build and send MNSMS_PAUSE_REQ */
  {
    PALLOC (mnsms_resume_req, MNSMS_RESUME_REQ);      
    PSENDX (SMS, mnsms_resume_req);
  }
  
}

/*
+-------------------------------------------------------------------+
| PROJECT : GSM-PS (6147)    MODULE  : PSA_SMSS                     |
|                            ROUTINE : psaSMS_TestReq             |
+-------------------------------------------------------------------+

  ACI-ENH-19450: Added for %CPRMS command (MDF-07.04.2004)
  
  PURPOSE : build and send MNSMS_RESUME_REQ to SMS

*/

GLOBAL void psaSMS_QueryReq (UBYTE query_type)
{

  TRACE_FUNCTION ("psaSMS_QueryReq()");

  /* build and send MNSMS_QUERY_REQ */
  {
    PALLOC (mnsms_query_req, MNSMS_QUERY_REQ);

    mnsms_query_req->query_type = query_type; 
    
    PSENDX (SMS, mnsms_query_req);
  }
  
}
#endif /* TI_PS_FF_AT_P_CMD_CPRSM */

/*==== EOF ========================================================*/