1/****************************************************************************** 2 * 3 * Copyright (C) 2010-2013 Broadcom Corporation 4 * 5 * Licensed under the Apache License, Version 2.0 (the "License"); 6 * you may not use this file except in compliance with the License. 7 * You may obtain a copy of the License at: 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 * See the License for the specific language governing permissions and 15 * limitations under the License. 16 * 17 ******************************************************************************/ 18 19 20/****************************************************************************** 21 * 22 * This is the private interface file for the NFA system manager. 23 * 24 ******************************************************************************/ 25#ifndef NFA_SYS_INT_H 26#define NFA_SYS_INT_H 27 28#include "nfa_sys_ptim.h" 29 30/***************************************************************************** 31** Constants and data types 32*****************************************************************************/ 33 34 35/* nfa_sys flags */ 36#define NFA_SYS_FL_INITIALIZED 0x00000001 /* nfa_sys initialized */ 37 38/***************************************************************************** 39** state table 40*****************************************************************************/ 41 42/* system manager control block */ 43typedef struct 44{ 45 UINT32 flags; /* nfa_sys flags (must be first element of structure) */ 46 tNFA_SYS_REG *reg[NFA_ID_MAX]; /* registration structures */ 47 BOOLEAN is_reg[NFA_ID_MAX]; /* registration structures */ 48 tPTIM_CB ptim_cb; /* protocol timer list */ 49 tNFA_SYS_ENABLE_CBACK *p_enable_cback; 50 UINT16 enable_cplt_flags; 51 UINT16 enable_cplt_mask; 52 53 tNFA_SYS_PROC_NFCC_PWR_MODE_CMPL *p_proc_nfcc_pwr_mode_cmpl_cback; 54 UINT16 proc_nfcc_pwr_mode_cplt_flags; 55 UINT16 proc_nfcc_pwr_mode_cplt_mask; 56 57 BOOLEAN graceful_disable; /* TRUE if NFA_Disable () is called with TRUE */ 58 BOOLEAN timers_disabled; /* TRUE if sys timers disabled */ 59 UINT8 trace_level; /* Trace level */ 60} tNFA_SYS_CB; 61 62 63 64/***************************************************************************** 65** Global variables 66*****************************************************************************/ 67 68/* system manager control block */ 69#if NFA_DYNAMIC_MEMORY == FALSE 70extern tNFA_SYS_CB nfa_sys_cb; 71#else 72extern tNFA_SYS_CB *nfa_sys_cb_ptr; 73#define nfa_sys_cb (*nfa_sys_cb_ptr) 74#endif 75 76 77/* system manager configuration structure */ 78extern tNFA_SYS_CFG *p_nfa_sys_cfg; 79 80BOOLEAN nfa_sys_sm_execute (BT_HDR *p_msg); 81 82#endif /* NFA_SYS_INT_H */ 83