precision-converters-firmware
Loading...
Searching...
No Matches
adi_version.h
Go to the documentation of this file.
1/*************************************************************************/
14#ifndef ADI_VERSION_H
15#define ADI_VERSION_H
16
17/* Quality Levels
18 * Dev: Unstable, in development phase.
19 * Alpha: Does not contain all features, may contain bugs, not fully tested.
20 * Beta: Supports all features, may contain bugs. Suitable for testing.
21 * Release candidate: Stable, with all features. May undergo final testing.
22 * Intended for production use.
23 * Release to Manufacturing: Ready for production after extensive testing.
24 * General Availability: Stable, reliable version. Intended for public use.
25 */
26#define QUALITY_LEVEL_DEV "d"
27#define QUALITY_LEVEL_ALPHA "a"
28#define QUALITY_LEVEL_BETA "b"
29#define QUALITY_LEVEL_RC "rc"
30#define QUALITY_LEVEL_RTM "rtm"
31#define QUALITY_LEVEL_GA "ga"
32
33/* Construct firmware_version string
34 * Format: v<Major>.<Minor>.<Patch>-<Quality Level>.<State>
35 *
36 * Major: Significant/Breaking changes.
37 * Minor: New features without breaking existing functionality.
38 * Patch: Bug fixes, minor improvements.
39 * Quality Level: Current quality level.
40 * State: Indicate the number of internally released versions at given quality level.
41 * e.g., "0" for initial release, "1" for next iteration, etc.
42 */
43#define ADI_CONSTRUCT_VERSION(major, minor, patch, quality, state) \
44 ("v" STR(major) "." STR(minor) "." STR(patch) "-" quality "." STR(state))
45
46#endif /* ADI_VERSION_H */