summaryrefslogtreecommitdiffstats
path: root/src/phLlcNfc_Timer.h
diff options
context:
space:
mode:
authorNick Pelly <npelly@google.com>2010-09-23 12:47:58 -0700
committerNick Pelly <npelly@google.com>2010-09-23 13:53:18 -0700
commit5d9927ba30ba449badb9f6df0fbeb4d6aedc6e2a (patch)
tree190f9251c6db03d3550ec7f30b51a2561c01d9cf /src/phLlcNfc_Timer.h
parent4ff7c86a2c706b150078274455406f1b04966e1a (diff)
downloadexternal_libnfc-nxp-5d9927ba30ba449badb9f6df0fbeb4d6aedc6e2a.zip
external_libnfc-nxp-5d9927ba30ba449badb9f6df0fbeb4d6aedc6e2a.tar.gz
external_libnfc-nxp-5d9927ba30ba449badb9f6df0fbeb4d6aedc6e2a.tar.bz2
Initial libnfc checkin
Source: Trusted_NFC_Device_Host_AA03.01e02_google.zip code drop (23-Sep-2010) Change-Id: Ie47f18423f949a8d3e0815d13f55c814312add24 Signed-off-by: Nick Pelly <npelly@google.com>
Diffstat (limited to 'src/phLlcNfc_Timer.h')
-rw-r--r--src/phLlcNfc_Timer.h210
1 files changed, 210 insertions, 0 deletions
diff --git a/src/phLlcNfc_Timer.h b/src/phLlcNfc_Timer.h
new file mode 100644
index 0000000..d8f702a
--- /dev/null
+++ b/src/phLlcNfc_Timer.h
@@ -0,0 +1,210 @@
+/*
+ * Copyright (C) 2010 NXP Semiconductors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/*!
+* \file phLlcNfc_Timer.h
+* \brief To create, start, stop and destroy timer.
+*
+* Project: NFC-FRI-1.1
+*
+* $Date: Thu Jun 10 17:26:41 2010 $
+* $Author: ing02260 $
+* $Revision: 1.14 $
+* $Aliases: NFC_FRI1.1_WK1023_R35_1 $
+*
+*/
+
+#ifndef PHLLCNFC_TIMER_H
+#define PHLLCNFC_TIMER_H
+
+/**
+* \name LLC NFC state machine handling
+*
+* File: \ref phLlcNfc_StateMachine.h
+*
+*/
+/*@{*/
+#define PH_LLCNFC_TIMER_FILEREVISION "$Revision: 1.14 $" /**< \ingroup grp_hal_nfc_llc_helper */
+#define PH_LLCNFC_TIMER_FILEALIASES "$Aliases: NFC_FRI1.1_WK1023_R35_1 $" /**< \ingroup grp_hal_nfc_llc_helper */
+/*@}*/
+/*************************** Includes *******************************/
+
+/*********************** End of includes ****************************/
+
+/***************************** Macros *******************************/
+#define PH_LLCNFC_CONNECTIONTIMER (0x00) /**< Timer for connection time out */
+#define PH_LLCNFC_GUARDTIMER (0x01) /**< Timer for guard time out */
+#define PH_LLCNFC_ACKTIMER (0x02) /**< Timer for ack time out */
+#define PH_LLCNFC_MAX_RETRY_COUNT (0x03) /**< Retries */
+/** Resolution value for the timer */
+#define PH_LLCNFC_RESOLUTION TIMER_RESOLUTION
+/**< 0x05 Timer for connection time out value */
+#define PH_LLCNFC_CONNECTION_TO_VALUE LINK_CONNECTION_TIMEOUT
+/**< 0x05 Timer for guard time out value */
+#define PH_LLCNFC_GUARD_TO_VALUE LINK_GUARD_TIMEOUT
+
+#ifdef LLC_RESET_DELAY
+ #define LLC_URSET_DELAY_TIME_OUT LLC_RESET_DELAY
+#else
+ #define LLC_URSET_DELAY_TIME_OUT 50
+#endif /* */
+
+
+
+/************************ End of macros *****************************/
+
+/********************** Callback functions **************************/
+
+/******************* End of Callback functions **********************/
+
+/********************* Structures and enums *************************/
+
+/****************** End of structures and enums *********************/
+
+/******************** Function declarations *************************/
+/**
+* \ingroup grp_hal_nfc_llc_helper
+*
+* \brief LLC timer functions \b Timer Init function
+*
+* \copydoc page_reg This is to store LLCs main context structure
+*
+* \param[in, out] psLlcCtxt Llc main structure information
+*
+* \retval NFCSTATUS_SUCCESS Operation successful.
+* \retval NFCSTATUS_INVALID_PARAMETER At least one parameter of the function is invalid.
+*
+*/
+NFCSTATUS
+phLlcNfc_TimerInit (
+ phLlcNfc_Context_t *psLlcCtxt
+);
+
+/**
+* \ingroup grp_hal_nfc_llc_helper
+*
+* \brief LLC timer functions \b Timer UnInit function
+*
+* \copydoc page_reg This is to uninitialise all timer related information
+*
+* \param[in, out] psLlcCtxt Llc main structure information
+*
+* \retval NFCSTATUS_SUCCESS Operation successful.
+* \retval NFCSTATUS_INVALID_PARAMETER At least one parameter of the function is invalid.
+*
+*/
+void
+phLlcNfc_TimerUnInit (
+ phLlcNfc_Context_t *psLlcCtxt
+);
+
+/**
+* \ingroup grp_hal_nfc_llc_helper
+*
+* \brief LLC timer functions \b Create timer function
+*
+* \copydoc page_reg creates all the timers in the LLC context
+*
+*
+*/
+void
+phLlcNfc_CreateTimers (void);
+
+/**
+* \ingroup grp_hal_nfc_llc_helper
+*
+* \brief LLC timer functions \b Start timer function
+*
+* \copydoc page_reg starts the timer type given by the user
+*
+* \param[in] TimerType Timer type to start
+* \param[in] ns_value Value of N(S) for which the timer is started
+*
+* \retval NFCSTATUS_SUCCESS Operation successful.
+* \retval NFCSTATUS_INVALID_PARAMETER At least one parameter of the function is invalid.
+* \retval Others Errors related to OsalNfc.
+*
+*/
+NFCSTATUS
+phLlcNfc_StartTimers (
+ uint8_t TimerType,
+ uint8_t ns_value
+);
+
+/**
+* \ingroup grp_hal_nfc_llc_helper
+*
+* \brief LLC timer functions \b Stop timer function
+*
+* \copydoc page_reg stop the timer type given by the user
+*
+* \param[in] TimerType Timer type to start
+* \param[in] no_of_gaurd_to_del Guard time-out count shall be decreased as and when
+* frame is removed
+*
+*
+*/
+void
+phLlcNfc_StopTimers (
+ uint8_t TimerType,
+ uint8_t no_of_guard_to_del
+);
+
+/**
+* \ingroup grp_hal_nfc_llc_helper
+*
+* \brief LLC timer functions \b Stop timer function
+*
+* \copydoc page_reg stop the timer type given by the user
+*
+*
+*
+*
+*/
+void
+phLlcNfc_StopAllTimers (void);
+
+
+/**
+* \ingroup grp_hal_nfc_llc_helper
+*
+* \brief LLC timer functions \b Delete timer function
+*
+* \copydoc page_reg deletes all the timers in the LLC context
+*
+* \retval NFCSTATUS_SUCCESS Operation successful.
+* \retval NFCSTATUS_INVALID_PARAMETER At least one parameter of the function is invalid.
+* \retval Others Errors related to OsalNfc.
+*
+*/
+void
+phLlcNfc_DeleteTimer (void);
+
+#ifdef LLC_URSET_NO_DELAY
+
+ /* NO definition required */
+
+#else /* #ifdef LLC_URSET_NO_DELAY */
+
+void
+phLlcNfc_URSET_Delay_Notify (
+ uint32_t delay_id,
+ void *pContext);
+
+#endif /* #ifdef LLC_URSET_NO_DELAY */
+
+/****************** End of Function declarations ********************/
+#endif /* PHLLCNFC_TIMER_H */