summaryrefslogtreecommitdiffstats
path: root/inc/phNfcStatus.h
diff options
context:
space:
mode:
authorNick Pelly <npelly@google.com>2010-10-16 17:51:57 -0700
committerNick Pelly <npelly@google.com>2010-10-16 17:51:57 -0700
commita5086a29ed4333070c7488765c22b6d3a8eef296 (patch)
tree5c92f196c0ff720018d2705cd268cacacae4c47b /inc/phNfcStatus.h
parent4ff7c86a2c706b150078274455406f1b04966e1a (diff)
downloadexternal_libnfc-nxp-a5086a29ed4333070c7488765c22b6d3a8eef296.zip
external_libnfc-nxp-a5086a29ed4333070c7488765c22b6d3a8eef296.tar.gz
external_libnfc-nxp-a5086a29ed4333070c7488765c22b6d3a8eef296.tar.bz2
Merge libnfc_ndef from gingerbread.
libnfc_ndef is the NDEF message parsing library. Change-Id: I8bf13873342097eaf7c1237737f3230411be111e Signed-off-by: Nick Pelly <npelly@google.com>
Diffstat (limited to 'inc/phNfcStatus.h')
-rw-r--r--inc/phNfcStatus.h343
1 files changed, 343 insertions, 0 deletions
diff --git a/inc/phNfcStatus.h b/inc/phNfcStatus.h
new file mode 100644
index 0000000..01f48fb
--- /dev/null
+++ b/inc/phNfcStatus.h
@@ -0,0 +1,343 @@
+/*
+ * 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 phNfcStatus.h
+ * \brief NFC Status Values - Function Return Codes
+ *
+ * Project: NFC MW / HAL
+ *
+ * $Date: Wed Apr 29 16:28:21 2009 $
+ * $Author: ing04880 $
+ * $Revision: 1.31 $
+ * $Aliases: NFC_FRI1.1_WK918_R24_1,NFC_FRI1.1_WK920_PREP1,NFC_FRI1.1_WK920_R25_1,NFC_FRI1.1_WK922_PREP1,NFC_FRI1.1_WK922_R26_1,NFC_FRI1.1_WK924_PREP1,NFC_FRI1.1_WK924_R27_1,NFC_FRI1.1_WK926_R28_1,NFC_FRI1.1_WK928_R29_1,NFC_FRI1.1_WK930_R30_1,NFC_FRI1.1_WK934_PREP_1,NFC_FRI1.1_WK934_R31_1,NFC_FRI1.1_WK941_PREP1,NFC_FRI1.1_WK941_PREP2,NFC_FRI1.1_WK941_1,NFC_FRI1.1_WK943_R32_1,NFC_FRI1.1_WK949_PREP1,NFC_FRI1.1_WK943_R32_10,NFC_FRI1.1_WK943_R32_13,NFC_FRI1.1_WK943_R32_14,NFC_FRI1.1_WK1007_R33_1,NFC_FRI1.1_WK1007_R33_4,NFC_FRI1.1_WK1017_PREP1,NFC_FRI1.1_WK1017_R34_1,NFC_FRI1.1_WK1017_R34_2,NFC_FRI1.1_WK1023_R35_1 $
+ *
+ */
+
+#ifndef PHNFCSTATUS_H /* */
+#define PHNFCSTATUS_H/* */
+
+#ifndef PH_FRINFC_EXCLUDE_FROM_TESTFW /* */
+
+/**
+ * \name NFC Status
+ *
+ * File: \ref phNfcStatus.h
+ *
+ *\defgroup grp_retval ERROR Status Codes
+ */
+/*@{*/
+#define PHNFCSTATUS_FILEREVISION "$Revision: 1.31 $" /**< \ingroup grp_file_attributes */
+#define PHNFCSTATUS_FILEALIASES "$Aliases: NFC_FRI1.1_WK918_R24_1,NFC_FRI1.1_WK920_PREP1,NFC_FRI1.1_WK920_R25_1,NFC_FRI1.1_WK922_PREP1,NFC_FRI1.1_WK922_R26_1,NFC_FRI1.1_WK924_PREP1,NFC_FRI1.1_WK924_R27_1,NFC_FRI1.1_WK926_R28_1,NFC_FRI1.1_WK928_R29_1,NFC_FRI1.1_WK930_R30_1,NFC_FRI1.1_WK934_PREP_1,NFC_FRI1.1_WK934_R31_1,NFC_FRI1.1_WK941_PREP1,NFC_FRI1.1_WK941_PREP2,NFC_FRI1.1_WK941_1,NFC_FRI1.1_WK943_R32_1,NFC_FRI1.1_WK949_PREP1,NFC_FRI1.1_WK943_R32_10,NFC_FRI1.1_WK943_R32_13,NFC_FRI1.1_WK943_R32_14,NFC_FRI1.1_WK1007_R33_1,NFC_FRI1.1_WK1007_R33_4,NFC_FRI1.1_WK1017_PREP1,NFC_FRI1.1_WK1017_R34_1,NFC_FRI1.1_WK1017_R34_2,NFC_FRI1.1_WK1023_R35_1 $" /**< \ingroup grp_file_attributes */
+/*@}*/
+
+#endif /* PH_FRINFC_EXCLUDE_FROM_TESTFW */
+
+#include <phNfcTypes.h>
+
+/* Internally required by \ref PHNFCSTVAL. */
+#define PHNFCSTSHL8 (8U)
+/* Required by \ref PHNFCSTVAL. */
+#define PHNFCSTBLOWER ((NFCSTATUS)(0x00FFU))
+
+/**
+ * \name NFC Status Composition Macro
+ *
+ * This is the macro which must be used to compose status values.
+ *
+ * \param[in] phNfcCompID Component ID, as defined in \ref phNfcCompId.h .
+ * \param[in] phNfcStatus Status values, as defined in \ref phNfcStatus.h .
+ *
+ * \note The macro is not required for the \ref NFCSTATUS_SUCCESS value. This is the only
+ * return value to be used directly.
+ * For all other values it shall be used in assigment and conditional statements e.g.:
+ * - NFCSTATUS status = PHNFCSTVAL(phNfcCompID, phNfcStatus); ...
+ * - if (status == PHNFCSTVAL(phNfcCompID, phNfcStatus)) ...
+ *
+ */
+#define PHNFCSTVAL(phNfcCompID, phNfcStatus) \
+ ( ((phNfcStatus) == (NFCSTATUS_SUCCESS)) ? (NFCSTATUS_SUCCESS) : \
+ ( (((NFCSTATUS)(phNfcStatus)) & (PHNFCSTBLOWER)) | \
+ (((uint16_t)(phNfcCompID)) << (PHNFCSTSHL8)) ) ) /**< \ingroup grp_retval
+ Use this macro for return value composition. */
+#define PHNFCSTATUS(phNfcStatus) ((phNfcStatus) & 0x00FFU)
+#define PHNFCCID(phNfcStatus) (((phNfcStatus) & 0xFF00U)>>8)
+
+/**
+ * \name Status Codes
+ *
+ * Generic Status codes for the NFC components. Combined with the Component ID
+ * they build the value (status) returned by each
+ * function. Some Specific E.g.:\n
+ * <UL>
+ * <LI> \ref grp_comp_id "Component ID" - e.g. 0x10, plus </LI>
+ * <LI> status code as listed in this file - e.g. 0x03 </LI>
+ * </UL>
+ * result in a status value of 0x0003.
+ *
+ * \note The \ref grp_comp_id "Component ID" used for return codes
+ must not be \ref CID_NFC_NONE
+ * except for the value \ref NFCSTATUS_SUCCESS.
+ */
+/*@{*/
+
+/** \ingroup grp_retval
+ The function indicates successful completion. */
+#define NFCSTATUS_SUCCESS (0x0000)
+
+/** \ingroup grp_retval
+ At least one paramter could not be properly interpreted. */
+#define NFCSTATUS_INVALID_PARAMETER (0x0001)
+
+/** \ingroup grp_retval
+ The buffer provided by the caller is too small. */
+#define NFCSTATUS_BUFFER_TOO_SMALL (0x0003)
+
+/** \ingroup grp_retval
+ Device specifier/handle value is invalid for the operation. */
+#define NFCSTATUS_INVALID_DEVICE (0x0006)
+
+/** \ingroup grp_retval
+ The function executed successfully but could have returned
+ more information than space provided by the caller. */
+#define NFCSTATUS_MORE_INFORMATION (0x0008)
+
+/** \ingroup grp_retval
+ No response from the remote device received: Time-out.*/
+#define NFCSTATUS_RF_TIMEOUT (0x0009)
+
+/** \ingroup grp_retval
+ RF Error during data transaction with the remote device.*/
+#define NFCSTATUS_RF_ERROR (0x000A)
+
+/** \ingroup grp_retval
+ Not enough resources (e.g. allocation failed.). */
+#define NFCSTATUS_INSUFFICIENT_RESOURCES (0x000C)
+
+/** \ingroup grp_retval
+ A non-blocking function returns this immediately to indicate
+ that an internal operation is in progress. */
+#define NFCSTATUS_PENDING (0x000D)
+
+/** \ingroup grp_retval
+ A board communication error occurred
+ (e.g. configuration went wrong). */
+#define NFCSTATUS_BOARD_COMMUNICATION_ERROR (0x000F)
+
+/** \ingroup grp_retval
+ Invalid State of the particular state machine
+ */
+#define NFCSTATUS_INVALID_STATE (0x0011)
+
+
+/** \ingroup grp_retval
+ This Layer is Not initialised, hence initialisation required.
+ */
+#define NFCSTATUS_NOT_INITIALISED (0x0031)
+
+
+/** \ingroup grp_retval
+ The Layer is already initialised, hence initialisation repeated.
+ */
+#define NFCSTATUS_ALREADY_INITIALISED (0x0032)
+
+
+/** \ingroup grp_retval
+ Feature not supported . */
+#define NFCSTATUS_FEATURE_NOT_SUPPORTED (0x0033)
+
+/** \ingroup grp_retval
+ The Unregistration command has failed because the user wants to unregister on
+ an element for which he was not registered*/
+#define NFCSTATUS_NOT_REGISTERED (0x0034)
+
+
+/** \ingroup grp_retval
+ The Registration command has failed because the user wants to register on
+ an element for which he is already registered*/
+#define NFCSTATUS_ALREADY_REGISTERED (0x0035)
+
+/** \ingroup grp_retval
+ Single Tag with Multiple
+ Protocol support detected. */
+#define NFCSTATUS_MULTIPLE_PROTOCOLS (0x0036)
+
+/** \ingroup grp_retval
+ Feature not supported . */
+#define NFCSTATUS_MULTIPLE_TAGS (0x0037)
+
+/** \ingroup grp_retval
+ A DESELECT event has occurred. */
+#define NFCSTATUS_DESELECTED (0x0038)
+
+/** \ingroup grp_retval
+ A RELEASE event has occurred. */
+#define NFCSTATUS_RELEASED (0x0039)
+
+/** \ingroup grp_retval
+ The operation is currently not possible or not allowed */
+#define NFCSTATUS_NOT_ALLOWED (0x003A)
+
+/** \ingroup grp_retval
+ The sytem is busy with the previous operation.
+*/
+#define NFCSTATUS_BUSY (0x006F)
+
+
+/* NDEF Mapping error codes */
+
+/** \ingroup grp_retval
+ The remote device (type) is not valid for this request. */
+#define NFCSTATUS_INVALID_REMOTE_DEVICE (0x001D)
+
+/** \ingroup grp_retval
+ Smart tag functionality not supported */
+#define NFCSTATUS_SMART_TAG_FUNC_NOT_SUPPORTED (0x0013)
+
+/** \ingroup grp_retval
+ Read operation failed */
+#define NFCSTATUS_READ_FAILED (0x0014)
+
+/** \ingroup grp_retval
+ Write operation failed */
+#define NFCSTATUS_WRITE_FAILED (0x0015)
+
+/** \ingroup grp_retval
+ Non Ndef Compliant */
+#define NFCSTATUS_NO_NDEF_SUPPORT (0x0016)
+
+/** \ingroup grp_retval
+ Could not proceed further with the write operation: reached card EOF*/
+#define NFCSTATUS_EOF_NDEF_CONTAINER_REACHED (0x001A)
+
+/** \ingroup grp_retval
+ Incorrect number of bytes received from the card*/
+#define NFCSTATUS_INVALID_RECEIVE_LENGTH (0x001B)
+
+/** \ingroup grp_retval
+ The data format/composition is not understood/correct. */
+#define NFCSTATUS_INVALID_FORMAT (0x001C)
+
+
+/** \ingroup grp_retval
+ There is not sufficient storage available. */
+#define NFCSTATUS_INSUFFICIENT_STORAGE (0x001F)
+
+/** \ingroup grp_retval
+ The Ndef Format procedure has failed. */
+#define NFCSTATUS_FORMAT_ERROR (0x0023)
+
+
+/*
+ * Macros Required for FRI Stack
+NFCSTATUS_INVALID_PARAMETER
+NFCSTATUS_CMD_ABORTED
+NFCSTATUS_FORMAT_STATUS
+NFSTATUS_SUCCESS
+NFCSTATUS_INVALID_REMOTE_DEVICE
+NFCSTATUS_PENDING
+NFCSTATUS_EOF_NDEF_CONTAINED_REACHED
+NFCSTATUS_NO_NDEF_SUPPORT
+NFCSTATUS_SMART_TAG_FUNC_NOT_SUPPORTED
+NFCSTATUS_READ_FAILED
+NFCSTATUS_WRITE_FAILED
+NFCSTATUS_INVALID_RECEIVE_LENGTH
+NFCSTATUS_BUFFER_TOO_SMALL
+NFCSTATUS_NODE_NOT_FOUND
+*/
+
+
+/* 0x70 to 0xCF Values are Component Specific Error Values */
+
+
+/** \ingroup grp_retval
+ Max number of Status Codes*/
+#define NFCSTATUS_FAILED (0x00FF)
+
+/*@}*/
+
+#ifdef RFU_STATUS_CODES /* To Be Removed later */
+
+/** \ingroup grp_retval
+ The function/command has been aborted. */
+#define NFCSTATUS_CMD_ABORTED (0x0002)
+
+/** \ingroup grp_retval
+ * Repeated call of the connecting function is not allowed.
+ * \if hal
+ * \sa \ref phHalNfc_Connect
+ * \endif */
+#define NFCSTATUS_ALREADY_CONNECTED (0x0004)
+
+/** \ingroup grp_retval
+ * Calling the polling function is not allowed when remote device
+ * are allready connected.
+ * \if hal
+ * \sa \ref phHalNfc_Poll
+ * \endif */
+#define NFCSTATUS_MULTI_POLL_NOT_SUPPORTED (0x0005)
+
+
+/** \ingroup grp_retval
+ No target found after poll.*/
+#define NFCSTATUS_NO_DEVICE_FOUND (0x000A)
+
+/** \ingroup grp_retval
+ No target found after poll.*/
+#define NFCSTATUS_NO_TARGET_FOUND (0x000A)
+
+/** \ingroup grp_retval
+ Attempt to disconnect a not connected remote device. */
+#define NFCSTATUS_NO_DEVICE_CONNECTED (0x000B)
+
+/** \ingroup grp_retval
+ External RF field detected. */
+#define NFCSTATUS_EXTERNAL_RF_DETECTED (0x000E)
+
+/** \ingroup grp_retval
+ Message is not allowed by the state machine
+ (e.g. configuration went wrong). */
+#define NFCSTATUS_MSG_NOT_ALLOWED_BY_FSM (0x0010)
+
+/** \ingroup grp_retval
+ No access has been granted. */
+#define NFCSTATUS_ACCESS_DENIED (0x001E)
+
+/** \ingroup grp_retval
+ No registry node matches the specified input data. */
+#define NFCSTATUS_NODE_NOT_FOUND (0x0017)
+
+/** \ingroup grp_retval
+ The current module is busy ; one might retry later */
+#define NFCSTATUS_SMX_BAD_STATE (0x00F0)
+
+
+/** \ingroup grp_retval
+ The Abort mechanism has failed for unexpected reason: user can try again*/
+#define NFCSTATUS_ABORT_FAILED (0x00F2)
+
+
+/** \ingroup grp_retval
+ The Registration command has failed because the user wants to register as target
+ on a operating mode not supported*/
+#define NFCSTATUS_REG_OPMODE_NOT_SUPPORTED (0x00F5)
+
+
+#endif
+
+
+#endif /* PHNFCSTATUS_H */
+