Re: [PATCH] usb: dwc3-pci: Ensure system sleep PM ops are defined only when used

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Mark,

On Tue, Aug 6, 2013 at 12:49 PM, Mark Brown <broonie@xxxxxxxxxx> wrote:
> From: Andy Green <andy.green@xxxxxxxxxx>
>
> You might have CONFIG_PM, but you might not have CONFIG_SUSPEND, in which
> case these are unused.
>
> Signed-off-by: Andy Green <andy.green@xxxxxxxxxx>
> Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

What about doing this instead?

--- a/drivers/usb/dwc3/dwc3-pci.c
+++ b/drivers/usb/dwc3/dwc3-pci.c
@@ -191,7 +191,7 @@ static DEFINE_PCI_DEVICE_TABLE(dwc3_pci_id_table) = {
 };
 MODULE_DEVICE_TABLE(pci, dwc3_pci_id_table);

-#ifdef CONFIG_PM
+#ifdef CONFIG_PM_SLEEP
 static int dwc3_pci_suspend(struct device *dev)
 {
        struct pci_dev  *pci = to_pci_dev(dev);
@@ -216,15 +216,10 @@ static int dwc3_pci_resume(struct device *dev)

        return 0;
 }
+#endif /* CONFIG_PM_SLEEP */

-static const struct dev_pm_ops dwc3_pci_dev_pm_ops = {
-       SET_SYSTEM_SLEEP_PM_OPS(dwc3_pci_suspend, dwc3_pci_resume)
-};
-
-#define DEV_PM_OPS     (&dwc3_pci_dev_pm_ops)
-#else
-#define DEV_PM_OPS     NULL
-#endif /* CONFIG_PM */
+static SIMPLE_DEV_PM_OPS(dwc3_pci_dev_pm_ops, dwc3_pci_suspend,
+                        dwc3_pci_resume);

 static struct pci_driver dwc3_pci_driver = {
        .name           = "dwc3-pci",
@@ -232,7 +227,7 @@ static struct pci_driver dwc3_pci_driver = {
        .probe          = dwc3_pci_probe,
        .remove         = dwc3_pci_remove,
        .driver         = {
-               .pm     = DEV_PM_OPS,
+               .pm     = &dwc3_pci_dev_pm_ops,
        },
 };
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux