barebox_set_soc_uid() calls barebox_set_soc_uid() the same way as done
previously, but also exposes the SoC ID in the barebox environment.

Signed-off-by: Sascha Hauer <[email protected]>
---
 drivers/nvmem/bsec.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/drivers/nvmem/bsec.c b/drivers/nvmem/bsec.c
index 
b67b55addfe0ebf1546e6b382a1f65af5c3ad423..1e85d4c9fcb43e90657ebf65bde976293bfa042f
 100644
--- a/drivers/nvmem/bsec.c
+++ b/drivers/nvmem/bsec.c
@@ -110,13 +110,16 @@ static void stm32_bsec_set_unique_machine_id(struct 
regmap *map)
 {
        u32 unique_id[3];
        int ret;
+       char *uidstr;
 
        ret = regmap_bulk_read(map, BSEC_OTP_SERIAL * 4,
                               unique_id, sizeof(unique_id) / 4);
        if (ret)
                return;
 
-       machine_id_set_hashable(unique_id, sizeof(unique_id));
+       uidstr = xasprintf("%08X%08X%08X", unique_id[0], unique_id[1], 
unique_id[2);
+       barebox_set_soc_uid(uidstr, unique_id, sizeof(unique_id));
+       free(uidstr);
 }
 
 static int stm32_bsec_read_mac(struct bsec_priv *priv, int offset, u8 *mac)
@@ -278,8 +281,7 @@ static int stm32_bsec_probe(struct device *dev)
        if (IS_ERR(nvmem))
                return PTR_ERR(nvmem);
 
-       if (IS_ENABLED(CONFIG_MACHINE_ID))
-               stm32_bsec_set_unique_machine_id(map);
+       stm32_bsec_set_unique_machine_id(map);
 
        stm32_bsec_init_dt(priv, dev, map);
 

-- 
2.47.3


Reply via email to