You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
182 lines
6.8 KiB
182 lines
6.8 KiB
/* |
|
* Copyright (C) 2012-2014 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. |
|
*/ |
|
#ifndef _PHNXPNCIHAL_SELFTEST_H_ |
|
#define _PHNXPNCIHAL_SELFTEST_H_ |
|
|
|
#ifdef NXP_HW_SELF_TEST |
|
|
|
#include <phNfcStatus.h> |
|
#include <phNxpNciHal.h> |
|
#include <phTmlNfc.h> |
|
|
|
/* PRBS Generation type */ |
|
typedef enum { |
|
NFC_FW_PRBS, /* FW software would generate the PRBS */ |
|
NFC_HW_PRBS /* Hardware would generate the PRBS */ |
|
} phNxpNfc_PrbsType_t; |
|
|
|
/* Different HW PRBS types */ |
|
typedef enum { NFC_HW_PRBS9, NFC_HW_PRBS15 } phNxpNfc_PrbsHwType_t; |
|
/* RF Technology */ |
|
typedef enum { |
|
NFC_RF_TECHNOLOGY_A, |
|
NFC_RF_TECHNOLOGY_B, |
|
NFC_RF_TECHNOLOGY_F, |
|
} phNxpNfc_Tech_t; |
|
|
|
/* Bit rates */ |
|
typedef enum { |
|
NFC_BIT_RATE_106, |
|
NFC_BIT_RATE_212, |
|
NFC_BIT_RATE_424, |
|
NFC_BIT_RATE_848, |
|
} phNxpNfc_Bitrate_t; |
|
|
|
typedef struct phAntenna_St_Resp { |
|
/* Txdo Raw Value*/ |
|
uint16_t wTxdoRawValue; |
|
uint16_t wTxdoMeasuredRangeMin; /*Txdo Measured Range Max */ |
|
uint16_t wTxdoMeasuredRangeMax; /*Txdo Measured Range Min */ |
|
uint16_t wTxdoMeasuredTolerance; /*Txdo Measured Range Tolerance */ |
|
/* Agc Values */ |
|
uint16_t wAgcValue; /*Agc Min Value*/ |
|
uint16_t wAgcValueTolerance; /*Txdo Measured Range*/ |
|
/* Agc value with NFCLD */ |
|
uint16_t wAgcValuewithfixedNFCLD; /*Agc Value with Fixed NFCLD Max */ |
|
uint16_t wAgcValuewithfixedNFCLDTolerance; /*Agc Value with Fixed NFCLD |
|
Tolerance */ |
|
/* Agc Differential Values With Open/Short RM */ |
|
uint16_t wAgcDifferentialWithOpen1; /*Agc Differential With Open 1*/ |
|
uint16_t wAgcDifferentialWithOpenTolerance1; /*Agc Differential With Open |
|
Tolerance 1*/ |
|
uint16_t wAgcDifferentialWithOpen2; /*Agc Differential With Open 2*/ |
|
uint16_t wAgcDifferentialWithOpenTolerance2; /*Agc Differential With Open |
|
Tolerance 2*/ |
|
} phAntenna_St_Resp_t; /* Instance of Transaction structure */ |
|
|
|
/******************************************************************************* |
|
** |
|
** Function phNxpNciHal_TestMode_open |
|
** |
|
** Description It opens the physical connection with NFCC (pn547) and |
|
** creates required client thread for operation. |
|
** |
|
** Returns NFCSTATUS_SUCCESS if successful,otherwise NFCSTATUS_FAILED. |
|
** |
|
******************************************************************************/ |
|
|
|
NFCSTATUS phNxpNciHal_TestMode_open(void); |
|
|
|
/******************************************************************************* |
|
** |
|
** Function phNxpNciHal_TestMode_close |
|
** |
|
** Description This function close the NFCC interface and free all |
|
** resources. |
|
** |
|
** Returns None. |
|
** |
|
******************************************************************************/ |
|
|
|
void phNxpNciHal_TestMode_close(void); |
|
|
|
/******************************************************************************* |
|
** |
|
** Function phNxpNciHal_SwpTest |
|
** |
|
** Description Test function to validate the SWP line. SWP line number is |
|
** is sent as parameter to the API. |
|
** |
|
** Returns NFCSTATUS_SUCCESS if successful,otherwise NFCSTATUS_FAILED. |
|
** |
|
******************************************************************************/ |
|
|
|
NFCSTATUS phNxpNciHal_SwpTest(uint8_t swp_line); |
|
|
|
/******************************************************************************* |
|
** |
|
** Function phNxpNciHal_PrbsTestStart |
|
** |
|
** Description Test function start RF generation for RF technology and bit |
|
** rate. RF technology and bit rate are sent as parameter to |
|
** the API. |
|
** |
|
** Returns NFCSTATUS_SUCCESS if RF generation successful, |
|
** otherwise NFCSTATUS_FAILED. |
|
** |
|
******************************************************************************/ |
|
#if (NFC_NXP_CHIP_TYPE != PN547C2) |
|
NFCSTATUS phNxpNciHal_PrbsTestStart(phNxpNfc_PrbsType_t prbs_type, |
|
phNxpNfc_PrbsHwType_t hw_prbs_type, |
|
phNxpNfc_Tech_t tech, |
|
phNxpNfc_Bitrate_t bitrate); |
|
#else |
|
NFCSTATUS phNxpNciHal_PrbsTestStart(phNxpNfc_Tech_t tech, |
|
phNxpNfc_Bitrate_t bitrate); |
|
#endif |
|
/******************************************************************************* |
|
** |
|
** Function phNxpNciHal_PrbsTestStop |
|
** |
|
** Description Test function stop RF generation for RF technology started |
|
** by phNxpNciHal_PrbsTestStart. |
|
** |
|
** Returns NFCSTATUS_SUCCESS if operation successful, |
|
** otherwise NFCSTATUS_FAILED. |
|
** |
|
******************************************************************************/ |
|
|
|
NFCSTATUS phNxpNciHal_PrbsTestStop(); |
|
|
|
/******************************************************************************* |
|
** |
|
** Function phNxpNciHal_AntennaSelfTest |
|
** |
|
** Description Test function to validate the Antenna's discrete |
|
** components connection. |
|
** |
|
** Returns NFCSTATUS_SUCCESS if successful,otherwise NFCSTATUS_FAILED. |
|
** |
|
*******************************************************************************/ |
|
|
|
NFCSTATUS phNxpNciHal_AntennaSelfTest(phAntenna_St_Resp_t* phAntenna_St_Resp); |
|
|
|
/******************************************************************************* |
|
** |
|
** Function phNxpNciHal_RfFieldTest |
|
** |
|
** Description Test function performs RF filed test. |
|
** |
|
** Returns NFCSTATUS_SUCCESS if successful,otherwise NFCSTATUS_FAILED. |
|
** |
|
*******************************************************************************/ |
|
|
|
NFCSTATUS phNxpNciHal_RfFieldTest(uint8_t on); |
|
|
|
/******************************************************************************* |
|
** |
|
** Function phNxpNciHal_DownloadPinTest |
|
** |
|
** Description Test function to validate the FW download pin connection. |
|
** |
|
** Returns NFCSTATUS_SUCCESS if successful,otherwise NFCSTATUS_FAILED. |
|
** |
|
******************************************************************************/ |
|
|
|
NFCSTATUS phNxpNciHal_DownloadPinTest(void); |
|
|
|
#endif /* _NXP_HW_SELF_TEST_H_ */ |
|
#endif /* _PHNXPNCIHAL_SELFTEST_H_ */
|
|
|