net: sfp: use device_get_match_data()

Rather than using of_match_node() to get the matching of_device_id
to then retrieve the match data, use device_get_match_data() instead
to avoid firmware specific functions, and free the driver from having
firmware specific code.

Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Russell King (Oracle) 2023-01-18 10:21:03 +00:00 committed by Jakub Kicinski
parent ff31a0c496
commit b71dda8112

View File

@ -2685,19 +2685,11 @@ static int sfp_probe(struct platform_device *pdev)
if (err < 0)
return err;
sff = sfp->type = &sfp_data;
sff = device_get_match_data(sfp->dev);
if (!sff)
sff = &sfp_data;
if (pdev->dev.of_node) {
const struct of_device_id *id;
id = of_match_node(sfp_of_match, pdev->dev.of_node);
if (WARN_ON(!id))
return -EINVAL;
sff = sfp->type = id->data;
} else if (!has_acpi_companion(&pdev->dev)) {
return -EINVAL;
}
sfp->type = sff;
err = sfp_i2c_get(sfp);
if (err)