Don't access of_root directly as it reduces the build test coverage for this driver with COMPILE_TEST=y and OF=n. Use existing helper functions to retrieve the relevant information.
Suggested-by: Rob Herring <[email protected]> Signed-off-by: Bartosz Golaszewski <[email protected]> --- drivers/soc/fsl/guts.c | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/drivers/soc/fsl/guts.c b/drivers/soc/fsl/guts.c index 6bf3e6a980ffc67c21ed7b62b5b638e37f27454e..88ba32a40f6a27f8ffd13624e940aa0edf48586f 100644 --- a/drivers/soc/fsl/guts.c +++ b/drivers/soc/fsl/guts.c @@ -186,7 +186,6 @@ static int __init fsl_guts_init(void) const struct fsl_soc_data *soc_data; const struct of_device_id *match; struct ccsr_guts __iomem *regs; - const char *machine = NULL; struct device_node *np; bool little_endian; u64 soc_uid = 0; @@ -217,13 +216,9 @@ static int __init fsl_guts_init(void) if (!soc_dev_attr) return -ENOMEM; - if (of_property_read_string(of_root, "model", &machine)) - of_property_read_string_index(of_root, "compatible", 0, &machine); - if (machine) { - soc_dev_attr->machine = kstrdup(machine, GFP_KERNEL); - if (!soc_dev_attr->machine) - goto err_nomem; - } + ret = soc_device_get_machine(soc_dev_attr); + if (ret) + of_machine_get_compatible(&soc_dev_attr->machine); soc_die = fsl_soc_die_match(svr, fsl_soc_die); if (soc_die) { @@ -267,7 +262,6 @@ static int __init fsl_guts_init(void) err_nomem: ret = -ENOMEM; err: - kfree(soc_dev_attr->machine); kfree(soc_dev_attr->family); kfree(soc_dev_attr->soc_id); kfree(soc_dev_attr->revision); -- 2.47.3
