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/imx/soc-imx8m.c | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/drivers/soc/imx/soc-imx8m.c b/drivers/soc/imx/soc-imx8m.c index 04a1b60f2f2b52cc374714f9a1205496c1762f39..925a9aed756103a5a74d5d840b54a2179cd78061 100644 --- a/drivers/soc/imx/soc-imx8m.c +++ b/drivers/soc/imx/soc-imx8m.c @@ -222,7 +222,6 @@ static int imx8m_soc_probe(struct platform_device *pdev) const struct imx8_soc_data *data; struct imx8_soc_drvdata *drvdata; struct device *dev = &pdev->dev; - const struct of_device_id *id; struct soc_device *soc_dev; u32 soc_rev = 0; u64 soc_uid[2] = {0, 0}; @@ -240,15 +239,11 @@ static int imx8m_soc_probe(struct platform_device *pdev) soc_dev_attr->family = "Freescale i.MX"; - ret = of_property_read_string(of_root, "model", &soc_dev_attr->machine); + ret = soc_device_get_machine(soc_dev_attr); if (ret) return ret; - id = of_match_node(imx8_soc_match, of_root); - if (!id) - return -ENODEV; - - data = id->data; + data = device_get_match_data(dev); if (data) { soc_dev_attr->soc_id = data->name; ret = imx8m_soc_prepare(pdev, data->ocotp_compatible); @@ -322,7 +317,7 @@ static int __init imx8_soc_init(void) int ret; /* No match means this is non-i.MX8M hardware, do nothing. */ - if (!of_match_node(imx8_soc_match, of_root)) + if (!of_machine_device_match(imx8_soc_match)) return 0; ret = platform_driver_register(&imx8m_soc_driver); -- 2.47.3
