📄 smi_bt.c
字号:
/*
+-----------------------------------------------------------------------------
| Project : GSM-F&D (8411)
| Modul : SMI
+-----------------------------------------------------------------------------
| 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 : Functions for processing incomming primitives from the Bluetooth
| Interface, which are called by the GSM stack
+-----------------------------------------------------------------------------
*/
#define ENTITY_SMI
#if defined (NEW_FRAME)
#include <string.h>
#include <stdarg.h>
#include "typedefs.h"
#include "vsi.h"
#include "custom.h"
#include "gsm.h"
#include "prim.h"
#include "tok.h"
#include "aci_cmh.h"
#include "ksd.h"
#include "aca.h"
#include "smi.h"
#include "gdi.h"
#include "audio.h"
#else
#include <string.h>
#include <stdarg.h>
#include "stddefs.h"
#include "custom.h"
#include "gsm.h"
#include "prim.h"
#include "vsi.h"
#include "tok.h"
#include "aci_cmh.h"
#include "ksd.h"
#include "aca.h"
#include "smi.h"
#include "gdi.h"
#include "audio.h"
#endif
#ifdef BT_ADAPTER
#include "dti.h"
#include "bti.h"
#endif
#ifdef BT_INTERFACE
#include "p_btp.h"
#endif /* BT_ADAPTER */
static UBYTE dummy[BTI_BD_ADDR_LENGTH];
/*
+--------------------------------------------------------------------+
| PROJECT : GSM-F&D (8411) MODULE : SMI_BT |
| STATE : code ROUTINE : bt_init_profile_cnf |
+--------------------------------------------------------------------+
PURPOSE : Process primitive BTP_INIT_PROFILE_CNF received from Bluetooth interface.
*/
GLOBAL const void bt_init_profile_cnf
(
T_BTP_INIT_PROFILE_CNF *btp_init_profile_cnf
)
{
TRACE_FUNCTION ("bt_init_profile_cnf()");
PACCESS (btp_init_profile_cnf);
switch (btp_init_profile_cnf->device)
{
case BTI_HEADSET:
if(btp_init_profile_cnf->result==BTI_OK)
ui_bt(UI_BT_HS_INIT_SUCCES, dummy);
else
ui_bt(UI_BT_HS_INIT_ERROR, dummy);
break;
case BTI_DIAL_UP:
if(btp_init_profile_cnf->result==BTI_OK)
ui_bt(UI_BT_DU_INIT_SUCCES, dummy);
else
ui_bt(UI_BT_DU_INIT_ERROR, dummy);
break;
default:
ui_bt(UI_BT_UNKNOWN_DEVICE, dummy);
break;
}
PFREE (btp_init_profile_cnf);
}
/*
+--------------------------------------------------------------------+
| PROJECT : GSM-F&D (8411) MODULE : SMI_BT |
| STATE : code ROUTINE : bt_deinit_profile_cnf|
+--------------------------------------------------------------------+
PURPOSE : Process primitive BTP_DEINIT_PROFILE_CNF received from Bluetooth Interface.
*/
GLOBAL const void bt_deinit_profile_cnf
(
T_BTP_DEINIT_PROFILE_CNF *btp_deinit_profile_cnf
)
{
TRACE_FUNCTION ("bt_deinit_profile_cnf()");
PACCESS (btp_deinit_profile_cnf);
switch (btp_deinit_profile_cnf->device)
{
case BTI_HEADSET:
if(btp_deinit_profile_cnf->result==BTI_OK)
ui_bt(UI_BT_HS_DEINIT_SUCCES, dummy);
else
ui_bt(UI_BT_HS_DEINIT_ERROR, dummy);
break;
case BTI_DIAL_UP:
if(btp_deinit_profile_cnf->result==BTI_OK)
ui_bt(UI_BT_DU_DEINIT_SUCCES, dummy);
else
ui_bt(UI_BT_DU_DEINIT_ERROR, dummy);
break;
default:
ui_bt(UI_BT_UNKNOWN_DEVICE, dummy);
break;
}
PFREE (btp_deinit_profile_cnf);
}
/*
+--------------------------------------------------------------------+
| PROJECT : GSM-F&D (8411) MODULE : SMI_BT |
| STATE : code ROUTINE : bt_device_search_cnf |
+--------------------------------------------------------------------+
PURPOSE : Process primitive BTP_DEVICE_SEARCH_CNF received from Bluetooth Interface.
*/
GLOBAL const void bt_device_search_cnf
(
T_BTP_DEVICE_SEARCH_CNF *btp_device_search_cnf
)
{
TRACE_FUNCTION ("bt_device_search_cnf()");
PACCESS (btp_device_search_cnf);
switch (btp_device_search_cnf->result)
{
case BTI_HEADSET:
ui_bt(UI_BT_HS_SEARCH_FINISHED, dummy);
break;
case BTI_DIAL_UP:
ui_bt(UI_BT_DU_SEARCH_FINISHED, dummy);
break;
default:
ui_bt(UI_BT_UNKNOWN_DEVICE, dummy);
break;
}
PFREE (btp_device_search_cnf);
}
/*
+--------------------------------------------------------------------+
| PROJECT : GSM-F&D (8411) MODULE : SMI_BT |
| STATE : code ROUTINE : bt_device_found_ind |
+--------------------------------------------------------------------+
PURPOSE : Process primitive BTP_DEVICE_FOUND_IND received from Bluetooth Interface.
*/
GLOBAL const void bt_device_found_ind
(
T_BTP_DEVICE_FOUND_IND *btp_device_found_ind
)
{
TRACE_FUNCTION ("bt_device_found_ind()");
PACCESS (btp_device_found_ind);
switch (btp_device_found_ind->services)
{
case BTI_HEADSET:
ui_bt(UI_BT_HS_FOUND, btp_device_found_ind->bd_addr);
break;
case BTI_DIAL_UP:
ui_bt(UI_BT_DU_FOUND, btp_device_found_ind->bd_addr);
break;
default:
ui_bt(UI_BT_UNKNOWN_DEVICE, dummy);
break;
}
PFREE (btp_device_found_ind);
}
/*
+--------------------------------------------------------------------+
| PROJECT : GSM-F&D (8411) MODULE : SMI_BT |
| STATE : code ROUTINE : bt_connect_device_cnf|
+--------------------------------------------------------------------+
PURPOSE : Process primitive BTP_CONNECT_DEVICE_CNF received from Bluetooth Interface.
*/
GLOBAL const void bt_connect_device_cnf
(
T_BTP_CONNECT_DEVICE_CNF *btp_connect_device_cnf
)
{
TRACE_FUNCTION ("bt_connect_device_cnf()");
PACCESS (btp_connect_device_cnf);
switch (btp_connect_device_cnf->device)
{
case BTI_HEADSET:
if(btp_connect_device_cnf->result==BTI_OK)
ui_bt(UI_BT_HS_CONNECTED, btp_connect_device_cnf->bd_addr);
else
ui_bt(UI_BT_HS_CONNECT_ERROR, btp_connect_device_cnf->bd_addr);
break;
case BTI_DIAL_UP:
if(btp_connect_device_cnf->result==BTI_OK)
ui_bt(UI_BT_DU_CONNECTED, btp_connect_device_cnf->bd_addr);
else
ui_bt(UI_BT_DU_CONNECT_ERROR, btp_connect_device_cnf->bd_addr);
break;
default:
ui_bt(UI_BT_UNKNOWN_DEVICE, dummy);
break;
}
PFREE (btp_connect_device_cnf);
}
/*
+--------------------------------------------------------------------+
| PROJECT : GSM-F&D (8411) MODULE : SMI_BT |
| STATE : code ROUTINE : bt_connect_device_ind|
+--------------------------------------------------------------------+
PURPOSE : Process primitive BTP_CONNECT_DEVICE_IND received from Bluetooth Interface.
*/
GLOBAL const void bt_connect_device_ind
(
T_BTP_CONNECT_DEVICE_IND *btp_connect_device_ind
)
{
TRACE_FUNCTION ("bt_connect_device_ind()");
PACCESS (btp_connect_device_ind);
PFREE (btp_connect_device_ind);
}
/*
+--------------------------------------------------------------------+
| PROJECT : GSM-F&D (8411) MODULE : SMI_BT |
| STATE : code ROUTINE : bt_disconnect_device_cnf|
+--------------------------------------------------------------------+
PURPOSE : Process primitive BTP_DISCONNECT_DEVICE_CNF received from Bluetooth Interface.
*/
GLOBAL const void bt_disconnect_device_cnf
(
T_BTP_DISCONNECT_DEVICE_CNF *btp_disconnect_device_cnf
)
{
TRACE_FUNCTION ("bt_disconnect_device_cnf()");
PACCESS (btp_disconnect_device_cnf);
switch (btp_disconnect_device_cnf->device)
{
case BTI_HEADSET:
ui_bt(UI_BT_HS_DISCONNECTED, btp_disconnect_device_cnf->bd_addr);
break;
case BTI_DIAL_UP:
ui_bt(UI_BT_DU_DISCONNECTED, btp_disconnect_device_cnf->bd_addr);
break;
default:
ui_bt(UI_BT_UNKNOWN_DEVICE, dummy);
break;
}
PFREE (btp_disconnect_device_cnf);
}
/*
+--------------------------------------------------------------------+
| PROJECT : GSM-F&D (8411) MODULE : SMI_BT |
| STATE : code ROUTINE : bt_disconnect_device_ind|
+--------------------------------------------------------------------+
PURPOSE : Process primitive BTP_DISCONNECT_DEVICE_IND received from Bluetooth Interface.
*/
GLOBAL const void bt_disconnect_device_ind
(
T_BTP_DISCONNECT_DEVICE_IND *btp_disconnect_device_ind
)
{
TRACE_FUNCTION ("bt_disconnect_device_ind()");
PACCESS (btp_disconnect_device_ind);
switch (btp_disconnect_device_ind->device)
{
case BTI_HEADSET:
ui_bt(UI_BT_HS_DISCONNECTED, btp_disconnect_device_ind->bd_addr);
break;
case BTI_DIAL_UP:
ui_bt(UI_BT_DU_DISCONNECTED, btp_disconnect_device_ind->bd_addr);
break;
default:
ui_bt(UI_BT_UNKNOWN_DEVICE, dummy);
break;
}
PFREE (btp_disconnect_device_ind);
}
/*
+--------------------------------------------------------------------+
| PROJECT : GSM-F&D (8411) MODULE : SMI_BT |
| STATE : code ROUTINE : bt_audio_connection_ind|
+--------------------------------------------------------------------+
PURPOSE : Process primitive BTP_AUDIO_CONNECTION_IND received from Bluetooth Interface.
*/
GLOBAL const void bt_audio_connection_ind
(
T_BTP_AUDIO_CONNECTION_IND *btp_audio_connection_ind
)
{
TRACE_FUNCTION ("bt_audio_connection_ind()");
PACCESS (btp_audio_connection_ind);
PFREE (btp_audio_connection_ind);
}
/*
+--------------------------------------------------------------------+
| PROJECT : GSM-F&D (8411) MODULE : SMI_BT |
| STATE : code ROUTINE : bt_transfer_audio_in_cnf|
+--------------------------------------------------------------------+
PURPOSE : Process primitive BTP_TRANSFER_AUDIO_IN_CNF received from Bluetooth Interface.
*/
GLOBAL const void bt_transfer_audio_in_cnf
(
T_BTP_TRANSFER_AUDIO_IN_CNF *btp_transfer_audio_in_cnf
)
{
TRACE_FUNCTION ("bt_transfer_audio_in_cnf()");
PACCESS (btp_transfer_audio_in_cnf);
PFREE (btp_transfer_audio_in_cnf);
}
/*
+--------------------------------------------------------------------+
| PROJECT : GSM-F&D (8411) MODULE : SMI_BT |
| STATE : code ROUTINE : bt_transfer_audio_out_cnf|
+--------------------------------------------------------------------+
PURPOSE : Process primitive BTP_TRANSFER_AUDIO_OUT_CNF received from Bluetooth Interface.
*/
GLOBAL const void bt_transfer_audio_out_cnf
(
T_BTP_TRANSFER_AUDIO_OUT_CNF *btp_transfer_audio_out_cnf
)
{
TRACE_FUNCTION ("bt_transfer_audio_out_cnf()");
PACCESS (btp_transfer_audio_out_cnf);
PFREE (btp_transfer_audio_out_cnf);
}
/*
+--------------------------------------------------------------------+
| PROJECT : GSM-F&D (8411) MODULE : SMI_BT |
| STATE : code ROUTINE : bt_pin_ind |
+--------------------------------------------------------------------+
PURPOSE : Process primitive BTP_PIN_IND received from Bluetooth Interface.
*/
GLOBAL const void bt_pin_ind
(
T_BTP_PIN_IND *btp_pin_ind
)
{
TRACE_FUNCTION ("bt_pin_ind()");
PACCESS (btp_pin_ind);
PFREE (btp_pin_ind);
}
/*
+--------------------------------------------------------------------+
| PROJECT : GSM-F&D (8411) MODULE : SMI_BT |
| STATE : code ROUTINE : bt_reconfig_profile_cnf|
+--------------------------------------------------------------------+
PURPOSE : Process primitive BTP_RECONFIG_PROFILE_CNF received from Bluetooth Interface.
*/
GLOBAL const void bt_reconfig_profile_cnf
(
T_BTP_RECONFIG_PROFILE_CNF *btp_reconfig_profile_cnf
)
{
TRACE_FUNCTION ("bt_reconfig_profile_cnf()");
PACCESS (btp_reconfig_profile_cnf);
PFREE (btp_reconfig_profile_cnf);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -