diff options
author | Bastian Krause <bst@pengutronix.de> | 2019-09-27 11:59:52 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2019-09-30 20:39:04 +0200 |
commit | aada84e72e150e0d0abc835f5b2237d64499f9e0 (patch) | |
tree | e4c7d46eba389edbdec0a46fbb4d26f1ca661cc5 /include | |
parent | 0ef90e6b42aa38e07623d37583d30caab2582cd6 (diff) | |
download | barebox-aada84e72e150e0d0abc835f5b2237d64499f9e0.tar.gz barebox-aada84e72e150e0d0abc835f5b2237d64499f9e0.tar.xz |
common: machine_id: introduce machine id generation
This patch adds functionality to pass device-specific information that
will be hashed to generate a persistent unique machine id. It is then
available as global.machine_id. It can be overwritten with
nv.machine_id if necessary. Passing the machine id to the kernel is
done in a separate patch.
Note: if multiple sources provide hashable device-specific information
(via machine_id_set_hashable()) the information provided by the last call
prior to the late initcall set_machine_id() is used to generate the
machine id from. Thus when updating barebox the machine id might change.
Signed-off-by: Bastian Krause <bst@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'include')
-rw-r--r-- | include/machine_id.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/include/machine_id.h b/include/machine_id.h new file mode 100644 index 0000000000..31d5e0bb28 --- /dev/null +++ b/include/machine_id.h @@ -0,0 +1,16 @@ +#ifndef __MACHINE_ID_H__ +#define __MACHINE_ID_H__ + +#if IS_ENABLED(CONFIG_MACHINE_ID) + +void machine_id_set_hashable(const void *hashable, size_t len); + +#else + +static inline void machine_id_set_hashable(const void *hashable, size_t len) +{ +} + +#endif /* CONFIG_MACHINE_ID */ + +#endif /* __MACHINE_ID_H__ */ |