提交 bbaa9cd3 编写于 作者: A Alan Tull 提交者: Greg Kroah-Hartman

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: NAlan Tull <atull@kernel.org>
Reported-by: NJiuyue Ma <majiuyue@huawei.com>
Signed-off-by: NMoritz Fischer <mdf@kernel.org>
Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
上级 89760937
......@@ -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)
......
......@@ -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");
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册