Commit b71dda81 authored by Russell King (Oracle)'s avatar Russell King (Oracle) Committed by Jakub Kicinski
Browse files

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: default avatarRussell King (Oracle) <rmk+kernel@armlinux.org.uk>
Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent ff31a0c4
Loading
Loading
Loading
Loading
+4 −12
Original line number Diff line number Diff line
@@ -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)