Skip to content

Commit

Permalink
usb: dwc3: haps: Constify the software node
Browse files Browse the repository at this point in the history
What platform_device_add_properties() does is it allocates
dynamically a software node that will contain the device
properties supplied to it, and then couples that node with
the device. Since that node is always created, it might as
well be constant.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Link: https://lore.kernel.org/r/20210204141711.53775-4-heikki.krogerus@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  • Loading branch information
Heikki Krogerus authored and Greg Kroah-Hartman committed Feb 4, 2021
1 parent e81dee5 commit efc9812
Showing 1 changed file with 7 additions and 1 deletion.
8 changes: 7 additions & 1 deletion drivers/usb/dwc3/dwc3-haps.c
Original file line number Diff line number Diff line change
@@ -33,6 +33,10 @@ static const struct property_entry initial_properties[] = {
{ },
};

static const struct software_node dwc3_haps_swnode = {
.properties = initial_properties,
};

static int dwc3_haps_probe(struct pci_dev *pci,
const struct pci_device_id *id)
{
@@ -77,7 +81,7 @@ static int dwc3_haps_probe(struct pci_dev *pci,
dwc->pci = pci;
dwc->dwc3->dev.parent = dev;

ret = platform_device_add_properties(dwc->dwc3, initial_properties);
ret = device_add_software_node(&dwc->dwc3->dev, &dwc3_haps_swnode);
if (ret)
goto err;

@@ -91,6 +95,7 @@ static int dwc3_haps_probe(struct pci_dev *pci,

return 0;
err:
device_remove_software_node(&dwc->dwc3->dev);
platform_device_put(dwc->dwc3);
return ret;
}
@@ -99,6 +104,7 @@ static void dwc3_haps_remove(struct pci_dev *pci)
{
struct dwc3_haps *dwc = pci_get_drvdata(pci);

device_remove_software_node(&dwc->dwc3->dev);
platform_device_unregister(dwc->dwc3);
}

0 comments on commit efc9812

Please sign in to comment.