1 /*
2  * Copyright (c) 2015, Freescale Semiconductor, Inc.
3  * Copyright 2016-2017 NXP
4  * All rights reserved.
5  *
6  * SPDX-License-Identifier: BSD-3-Clause
7  */
8 
9 #include "fsl_sim.h"
10 
11 /*******************************************************************************
12  * Codes
13  ******************************************************************************/
14 #if (defined(FSL_FEATURE_SIM_OPT_HAS_USB_VOLTAGE_REGULATOR) && FSL_FEATURE_SIM_OPT_HAS_USB_VOLTAGE_REGULATOR)
SIM_SetUsbVoltRegulatorEnableMode(uint32_t mask)15 void SIM_SetUsbVoltRegulatorEnableMode(uint32_t mask)
16 {
17     SIM->SOPT1CFG |= (SIM_SOPT1CFG_URWE_MASK | SIM_SOPT1CFG_UVSWE_MASK | SIM_SOPT1CFG_USSWE_MASK);
18 
19     SIM->SOPT1 = (SIM->SOPT1 & ~kSIM_UsbVoltRegEnableInAllModes) | mask;
20 }
21 #endif /* FSL_FEATURE_SIM_OPT_HAS_USB_VOLTAGE_REGULATOR */
22 
SIM_GetUniqueId(sim_uid_t * uid)23 void SIM_GetUniqueId(sim_uid_t *uid)
24 {
25 #if defined(SIM_UIDH)
26     uid->H = SIM->UIDH;
27 #endif
28 #if (defined(FSL_FEATURE_SIM_HAS_UIDM) && FSL_FEATURE_SIM_HAS_UIDM)
29     uid->M = SIM->UIDM;
30 #else
31     uid->MH = SIM->UIDMH;
32     uid->ML = SIM->UIDML;
33 #endif /* FSL_FEATURE_SIM_HAS_UIDM */
34     uid->L = SIM->UIDL;
35 }
36 
37 #if (defined(FSL_FEATURE_SIM_HAS_RF_MAC_ADDR) && FSL_FEATURE_SIM_HAS_RF_MAC_ADDR)
SIM_GetRfAddr(sim_rf_addr_t * info)38 void SIM_GetRfAddr(sim_rf_addr_t *info)
39 {
40     info->rfAddrL = SIM->RFADDRL;
41     info->rfAddrH = SIM->RFADDRH;
42 }
43 #endif /* FSL_FEATURE_SIM_HAS_RF_MAC_ADDR */
44