Skip to content

Commit

Permalink
efi: Update implementation of add_links() to create fwnode links
Browse files Browse the repository at this point in the history
The semantics of add_links() has changed from creating device link
between devices to creating fwnode links between fwnodes. So, update the
implementation of add_links() to match the new semantics.

Signed-off-by: Saravana Kannan <saravanak@google.com>
Link: https://lore.kernel.org/r/20201121020232.908850-16-saravanak@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  • Loading branch information
Saravana Kannan authored and Greg Kroah-Hartman committed Dec 9, 2020
1 parent 8a06d1e commit e82a840
Showing 1 changed file with 1 addition and 20 deletions.
21 changes: 1 addition & 20 deletions drivers/firmware/efi/efi-init.c
Original file line number Diff line number Diff line change
Expand Up @@ -320,7 +320,6 @@ static int efifb_add_links(struct fwnode_handle *fwnode,
struct device *dev)
{
struct device_node *sup_np;
struct device *sup_dev;

sup_np = find_pci_overlap_node();

Expand All @@ -331,27 +330,9 @@ static int efifb_add_links(struct fwnode_handle *fwnode,
if (!sup_np)
return 0;

sup_dev = get_dev_from_fwnode(&sup_np->fwnode);
fwnode_link_add(fwnode, of_fwnode_handle(sup_np));
of_node_put(sup_np);

/*
* Return -ENODEV if the PCI graphics controller device hasn't been
* registered yet. This ensures that efifb isn't allowed to probe
* and this function is retried again when new devices are
* registered.
*/
if (!sup_dev)
return -ENODEV;

/*
* If this fails, retrying this function at a later point won't
* change anything. So, don't return an error after this.
*/
if (!device_link_add(dev, sup_dev, fw_devlink_get_flags()))
dev_warn(dev, "device_link_add() failed\n");

put_device(sup_dev);

return 0;
}

Expand Down

0 comments on commit e82a840

Please sign in to comment.