Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bbaa9cd3 authored by Alan Tull's avatar Alan Tull Committed by Greg Kroah-Hartman
Browse files

fpga: region: don't use drvdata in common fpga code



Changes to fpga_region_register function to not set drvdata.

Setting drvdata is fine for DT based devices that will have one region
per platform device.  However PCIe based devices may have multiple
FPGA regions under one PCIe device.  Without these changes, the PCIe
solution has to create an extra device for each child region to hold
drvdata.

Signed-off-by: default avatarAlan Tull <atull@kernel.org>
Reported-by: default avatarJiuyue Ma <majiuyue@huawei.com>
Signed-off-by: default avatarMoritz Fischer <mdf@kernel.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 89760937
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -183,7 +183,6 @@ int fpga_region_register(struct device *dev, struct fpga_region *region)
	region->dev.parent = dev;
	region->dev.of_node = dev->of_node;
	region->dev.id = id;
	dev_set_drvdata(dev, region);

	ret = dev_set_name(&region->dev, "region%d", id);
	if (ret)
+1 −0
Original line number Diff line number Diff line
@@ -438,6 +438,7 @@ static int of_fpga_region_probe(struct platform_device *pdev)
		goto eprobe_mgr_put;

	of_platform_populate(np, fpga_region_of_match, NULL, &region->dev);
	dev_set_drvdata(dev, region);

	dev_info(dev, "FPGA Region probed\n");