X-Git-Url: http://git.cascardo.info/?a=blobdiff_plain;f=drivers%2Fspi%2Fspi.c;h=ebcb33df2eb22facb58cebc10277c3ab12925a42;hb=b528392669415dc1e53a047215e5ad6c2de879fc;hp=e19512ffc40e5ef34fefeffd70568f2fbd959f59;hpb=80213c03c4151d900cf293ef0fc51f8d88495e14;p=cascardo%2Flinux.git diff --git a/drivers/spi/spi.c b/drivers/spi/spi.c index e19512ffc40e..ebcb33df2eb2 100644 --- a/drivers/spi/spi.c +++ b/drivers/spi/spi.c @@ -35,6 +35,7 @@ #include #include #include +#include #include #include #include @@ -264,10 +265,12 @@ static int spi_drv_probe(struct device *dev) if (ret) return ret; - acpi_dev_pm_attach(dev, true); - ret = sdrv->probe(to_spi_device(dev)); - if (ret) - acpi_dev_pm_detach(dev, true); + ret = dev_pm_domain_attach(dev, true); + if (ret != -EPROBE_DEFER) { + ret = sdrv->probe(to_spi_device(dev)); + if (ret) + dev_pm_domain_detach(dev, true); + } return ret; } @@ -278,7 +281,7 @@ static int spi_drv_remove(struct device *dev) int ret; ret = sdrv->remove(to_spi_device(dev)); - acpi_dev_pm_detach(dev, true); + dev_pm_domain_detach(dev, true); return ret; }