mcu_hi3321_watch/tjd/service/service_nv.c
2025-05-26 20:15:20 +08:00

35 lines
899 B
C

#include "nv.h"
#include "service_nv.h"
errcode_t tjd_service_nv_write_mac_addr(uint8_t *mac)
{
if (mac == NULL)
return ERRCODE_FAIL;
errcode_t nv_op = uapi_nv_write((uint16_t)NV_ID_MAC_ADDR, mac, 6);
if (nv_op != ERRCODE_SUCC) {
printf("[%s]error returned %x\n",__func__, nv_op);
return ERRCODE_FAIL;
}
if (uapi_nv_flush() != ERRCODE_SUCC) {
printf("[%s][%d]error returned %x\n",__func__, __LINE__, nv_op);
}
return ERRCODE_SUCC;
}
errcode_t tjd_service_nv_read_mac_addr(uint8_t *des)
{
if (des == NULL)
return ERRCODE_FAIL;
uint16_t valid_length = 0;
errcode_t nv_op = uapi_nv_read((uint16_t)NV_ID_MAC_ADDR, 6, &valid_length, des);
if (nv_op != ERRCODE_SUCC && valid_length != 6) {
printf("[%s]error returned %x\n",__func__, nv_op);
return ERRCODE_FAIL;
}
return ERRCODE_SUCC;
}