/*
 * Created by hongbo.he@lnxall.com
 *
 * 2025/09/02
 */
#ifndef LNXUTILS_PRODUCT_H
#define LNXUTILS_PRODUCT_H

#include <stddef.h>

/*
 * get product name like `WL-EMS-500'
 *
 * RETURN VALUE
 *	if success, return 0
 *	when error occurrd, return -1 and set the errno
 *
 */
int lnxutil_get_product_name(char *outbuf, size_t len);

/*
 * get board info
 * exp:
 *  board-name: WLOSANY_RK3568
 *  board-sn: 202506191019
 *  board-mac:
 *
 * RETURN VALUE
 *	if success, return 0
 *	when error occurrd, return -1 and set the errno
 *
 */
int lnxutil_get_board_name(char *outbuf, size_t len);

int lnxutil_get_board_sn(char *outbuf, size_t len);

int lnxutil_get_board_mac(char *outbuf, size_t len);

/*
 * get version of software and hardware
 *
 * RETURN VALUE
 *	if success, return 0
 *	when error occurrd, return -1
 */
int lnxutil_get_software_ver(char *ver);

int lnxutil_get_hardware_ver(char *ver);

#endif
