1 /****************************************************************************** 2 * 3 * Copyright (C) 2010-2014 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 */ 43 typedef 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 70 extern tNFA_SYS_CB nfa_sys_cb; 71 #else 72 extern 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 */ 78 extern tNFA_SYS_CFG *p_nfa_sys_cfg; 79 80 BOOLEAN nfa_sys_sm_execute (BT_HDR *p_msg); 81 82 #endif /* NFA_SYS_INT_H */ 83