1 /****************************************************************************** 2 * 3 * Copyright (C) 1999-2012 Broadcom Corporation 4 * Copyright 2018-2019 NXP 5 * 6 * Licensed under the Apache License, Version 2.0 (the "License"); 7 * you may not use this file except in compliance with the License. 8 * You may obtain a copy of the License at: 9 * 10 * http://www.apache.org/licenses/LICENSE-2.0 11 * 12 * Unless required by applicable law or agreed to in writing, software 13 * distributed under the License is distributed on an "AS IS" BASIS, 14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 * See the License for the specific language governing permissions and 16 * limitations under the License. 17 * 18 ******************************************************************************/ 19 #ifndef UWA_SYS_INT_H 20 #define UWA_SYS_INT_H 21 22 #include "uwa_sys_ptim.h" 23 24 /***************************************************************************** 25 ** Constants and data types 26 *****************************************************************************/ 27 28 /* uwa_sys flags */ 29 #define UWA_SYS_FL_INITIALIZED 0x00000001 /* uwa_sys initialized */ 30 31 /***************************************************************************** 32 ** state table 33 *****************************************************************************/ 34 35 /* system manager control block */ 36 typedef struct { 37 uint32_t flags; /* uwa_sys flags (must be first element of structure) */ 38 tUWA_SYS_REG* reg[UWA_ID_MAX]; /* registration structures */ 39 bool is_reg[UWA_ID_MAX]; /* registration structures */ 40 tPTIM_CB ptim_cb; /* protocol timer list */ 41 tUWA_SYS_ENABLE_CBACK* p_enable_cback; 42 uint16_t enable_cplt_flags; 43 uint16_t enable_cplt_mask; 44 45 bool graceful_disable; /* TRUE if UWA_Disable () is called with TRUE */ 46 bool timers_disabled; /* TRUE if sys timers disabled */ 47 } tUWA_SYS_CB; 48 49 /***************************************************************************** 50 ** Global variables 51 *****************************************************************************/ 52 53 /* system manager control block */ 54 extern tUWA_SYS_CB uwa_sys_cb; 55 56 /* system manager configuration structure */ 57 extern tUWA_SYS_CFG* p_uwa_sys_cfg; 58 59 #endif /* UWA_SYS_INT_H */ 60