MCUXpresso_MIMXRT1052xxxxB/components/silicon_id/fsl_silicon_id.h

43 lines
1.1 KiB
C

/*
* Copyright 2022 NXP
*
* SPDX-License-Identifier: BSD-3-Clause
*/
#ifndef _FSL_SILICON_ID_H_
#define _FSL_SILICON_ID_H_
#include "fsl_common.h"
#define SILICONID_MAX_LENGTH 16U
#if defined(__cplusplus)
extern "C" {
#endif
/*!
* @brief Get the silicon ID.
*
* @param siliconId[out] Memory address to store silicon ID, array length depends on specific Soc. The
* SILICONID_MAX_LENGTH is the maximun length of all supported Socs.
* @param idLen[in/out] Silicon ID byte length. Set the length to read, return the length read out.
* @retval kStatus_Success Succeed to get silicon ID.
* @retval kStatus_Fail Fail to get silicon ID.
*/
status_t SILICONID_GetID(uint8_t *siliconId, uint32_t *idLen);
/*!
* @brief Get and convert the silicon ID to ethernet MAC address.
*
* @param macAddr[out] Memory address to store ethernet MAC address.
* @retval kStatus_Success Succeed to get silicon ID and finish conversion.
* @retval kStatus_Fail Fail to get silicon ID and finish conversion.
*/
status_t SILICONID_ConvertToMacAddr(uint8_t (*macAddr)[6]);
#if defined(__cplusplus)
}
#endif
#endif /* _FSL_SILICON_ID_H_ */