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.
178 lines
6.6 KiB
178 lines
6.6 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.
|
|
**
|
|
******************************************************************************/
|
|
|
|
extern "C" NFCSTATUS phNxpNciHal_TestMode_open(void);
|
|
|
|
/*******************************************************************************
|
|
**
|
|
** Function phNxpNciHal_TestMode_close
|
|
**
|
|
** Description This function close the NFCC interface and free all
|
|
** resources.
|
|
**
|
|
** Returns None.
|
|
**
|
|
******************************************************************************/
|
|
|
|
extern "C" 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.
|
|
**
|
|
******************************************************************************/
|
|
|
|
extern "C" 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.
|
|
**
|
|
******************************************************************************/
|
|
extern "C" NFCSTATUS phNxpNciHal_PrbsTestStart(
|
|
phNxpNfc_PrbsType_t prbs_type, phNxpNfc_PrbsHwType_t hw_prbs_type,
|
|
phNxpNfc_Tech_t tech, phNxpNfc_Bitrate_t bitrate);
|
|
/*******************************************************************************
|
|
**
|
|
** 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.
|
|
**
|
|
******************************************************************************/
|
|
|
|
extern "C" 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.
|
|
**
|
|
*******************************************************************************/
|
|
|
|
extern "C" 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.
|
|
**
|
|
*******************************************************************************/
|
|
|
|
extern "C" 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.
|
|
**
|
|
******************************************************************************/
|
|
|
|
extern "C" NFCSTATUS phNxpNciHal_DownloadPinTest(void);
|
|
|
|
#endif /* _NXP_HW_SELF_TEST_H_ */
|
|
#endif /* _PHNXPNCIHAL_SELFTEST_H_ */
|