[RFC] Provide a generic interface for getting the SOC ID and version


Liu, Baohong
 

Hi,

There can be a need to provide a generic interface API for getting the SOC ID, version, and
other identifying data. These data can be useful for an application to use to generate
unique Information (for example, MAC addresses).

This is based on ZEP-235.

Proposed Interface
***************

/**
* @brief Read SoC id
*
* @retval soc id. The information is SoC specific.
*/
static uint32_t soc_id_get(void);

For example, on Quark SE, this would return the value from the SCSS identification register.
On ARM based SOC, for example Atmel sam3, this would be the chip id from the id code
register.

/**
* @brief Read soc version
*
* @retval soc version. A platform dependent 32 bit version information.
*/
static uint32_t soc_version_get(void);

Depending on the SoC, this can include different types of version information for example,
SOC version, major, and minor revision numbers, etc.

For example, for Quark SE, this would be the rev number from the SCSS rev register.
For ARM based SOC, for example Atmel sam3, this will be the version value from id code
register.

Welcome feedback/comments or any concerns.

Thanks,
Baohong

Join devel@lists.zephyrproject.org to automatically receive all group messages.