]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
soc: imx8m: Fix match data lookup for soc device
authorPeng Fan <peng.fan@nxp.com>
Mon, 27 Apr 2026 01:01:48 +0000 (09:01 +0800)
committerFrank Li <Frank.Li@nxp.com>
Thu, 7 May 2026 15:45:36 +0000 (11:45 -0400)
The i.MX8M soc device is registered via platform_device_register_simple(),
so it is not associated with a Device Tree node and the imx8m_soc_driver
has no of_match_table.

As a result, device_get_match_data() always returns NULL when probing
the soc device.

Retrieve the match data directly from the machine compatible using
of_machine_get_match_data(imx8_soc_match), which provides the correct SoC
data.

Fixes: 2524b293a59e5 ("soc: imx8m: don't access of_root directly")
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Frank Li <Frank.Li@nxp.com>
drivers/soc/imx/soc-imx8m.c

index 77763a107edbd11302017e3f61ecb4369fda1ab0..fc080e56f50d423b88a673181a6bc986eb4c1691 100644 (file)
@@ -247,7 +247,7 @@ static int imx8m_soc_probe(struct platform_device *pdev)
        if (ret)
                return ret;
 
-       data = device_get_match_data(dev);
+       data = of_machine_get_match_data(imx8_soc_match);
        if (data) {
                soc_dev_attr->soc_id = data->name;
                ret = imx8m_soc_prepare(pdev, data->ocotp_compatible);