Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 312771
b: refs/heads/master
c: 4f31f5b
h: refs/heads/master
i:
  312769: 1e2649a
  312767: 2d99c79
v: v3
  • Loading branch information
Rafael J. Wysocki committed Jul 10, 2012
1 parent 8627da2 commit 32eaf31
Show file tree
Hide file tree
Showing 3 changed files with 35 additions and 39 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: afec8a770a6461d3e57a779484a10ef3ed0c800f
refs/heads/master: 4f31f5b19eb0418a847b989abc9ac22af1991fe2
39 changes: 19 additions & 20 deletions trunk/drivers/crypto/ux500/cryp/cryp_core.c
Original file line number Diff line number Diff line change
Expand Up @@ -1661,27 +1661,26 @@ static void ux500_cryp_shutdown(struct platform_device *pdev)

}

static int ux500_cryp_suspend(struct platform_device *pdev, pm_message_t state)
static int ux500_cryp_suspend(struct device *dev)
{
int ret;
struct platform_device *pdev = to_platform_device(dev);
struct cryp_device_data *device_data;
struct resource *res_irq;
struct cryp_ctx *temp_ctx = NULL;

dev_dbg(&pdev->dev, "[%s]", __func__);
dev_dbg(dev, "[%s]", __func__);

/* Handle state? */
device_data = platform_get_drvdata(pdev);
if (!device_data) {
dev_err(&pdev->dev, "[%s]: platform_get_drvdata() failed!",
__func__);
dev_err(dev, "[%s]: platform_get_drvdata() failed!", __func__);
return -ENOMEM;
}

res_irq = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
if (!res_irq)
dev_err(&pdev->dev, "[%s]: IORESOURCE_IRQ, unavailable",
__func__);
dev_err(dev, "[%s]: IORESOURCE_IRQ, unavailable", __func__);
else
disable_irq(res_irq->start);

Expand All @@ -1692,32 +1691,32 @@ static int ux500_cryp_suspend(struct platform_device *pdev, pm_message_t state)

if (device_data->current_ctx == ++temp_ctx) {
if (down_interruptible(&driver_data.device_allocation))
dev_dbg(&pdev->dev, "[%s]: down_interruptible() "
"failed", __func__);
ret = cryp_disable_power(&pdev->dev, device_data, false);
dev_dbg(dev, "[%s]: down_interruptible() failed",
__func__);
ret = cryp_disable_power(dev, device_data, false);

} else
ret = cryp_disable_power(&pdev->dev, device_data, true);
ret = cryp_disable_power(dev, device_data, true);

if (ret)
dev_err(&pdev->dev, "[%s]: cryp_disable_power()", __func__);
dev_err(dev, "[%s]: cryp_disable_power()", __func__);

return ret;
}

static int ux500_cryp_resume(struct platform_device *pdev)
static int ux500_cryp_resume(struct device *dev)
{
int ret = 0;
struct platform_device *pdev = to_platform_device(dev);
struct cryp_device_data *device_data;
struct resource *res_irq;
struct cryp_ctx *temp_ctx = NULL;

dev_dbg(&pdev->dev, "[%s]", __func__);
dev_dbg(dev, "[%s]", __func__);

device_data = platform_get_drvdata(pdev);
if (!device_data) {
dev_err(&pdev->dev, "[%s]: platform_get_drvdata() failed!",
__func__);
dev_err(dev, "[%s]: platform_get_drvdata() failed!", __func__);
return -ENOMEM;
}

Expand All @@ -1730,11 +1729,10 @@ static int ux500_cryp_resume(struct platform_device *pdev)
if (!device_data->current_ctx)
up(&driver_data.device_allocation);
else
ret = cryp_enable_power(&pdev->dev, device_data, true);
ret = cryp_enable_power(dev, device_data, true);

if (ret)
dev_err(&pdev->dev, "[%s]: cryp_enable_power() failed!",
__func__);
dev_err(dev, "[%s]: cryp_enable_power() failed!", __func__);
else {
res_irq = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
if (res_irq)
Expand All @@ -1744,15 +1742,16 @@ static int ux500_cryp_resume(struct platform_device *pdev)
return ret;
}

static SIMPLE_DEV_PM_OPS(ux500_cryp_pm, ux500_cryp_suspend, ux500_cryp_resume);

static struct platform_driver cryp_driver = {
.probe = ux500_cryp_probe,
.remove = ux500_cryp_remove,
.shutdown = ux500_cryp_shutdown,
.suspend = ux500_cryp_suspend,
.resume = ux500_cryp_resume,
.driver = {
.owner = THIS_MODULE,
.name = "cryp1"
.pm = &ux500_cryp_pm,
}
};

Expand Down
33 changes: 15 additions & 18 deletions trunk/drivers/crypto/ux500/hash/hash_core.c
Original file line number Diff line number Diff line change
Expand Up @@ -1894,19 +1894,17 @@ static void ux500_hash_shutdown(struct platform_device *pdev)

/**
* ux500_hash_suspend - Function that suspends the hash device.
* @pdev: The platform device.
* @state: -
* @dev: Device to suspend.
*/
static int ux500_hash_suspend(struct platform_device *pdev, pm_message_t state)
static int ux500_hash_suspend(struct device *dev)
{
int ret;
struct hash_device_data *device_data;
struct hash_ctx *temp_ctx = NULL;

device_data = platform_get_drvdata(pdev);
device_data = dev_get_drvdata(dev);
if (!device_data) {
dev_err(&pdev->dev, "[%s] platform_get_drvdata() failed!",
__func__);
dev_err(dev, "[%s] platform_get_drvdata() failed!", __func__);
return -ENOMEM;
}

Expand All @@ -1917,33 +1915,32 @@ static int ux500_hash_suspend(struct platform_device *pdev, pm_message_t state)

if (device_data->current_ctx == ++temp_ctx) {
if (down_interruptible(&driver_data.device_allocation))
dev_dbg(&pdev->dev, "[%s]: down_interruptible() "
"failed", __func__);
dev_dbg(dev, "[%s]: down_interruptible() failed",
__func__);
ret = hash_disable_power(device_data, false);

} else
ret = hash_disable_power(device_data, true);

if (ret)
dev_err(&pdev->dev, "[%s]: hash_disable_power()", __func__);
dev_err(dev, "[%s]: hash_disable_power()", __func__);

return ret;
}

/**
* ux500_hash_resume - Function that resume the hash device.
* @pdev: The platform device.
* @dev: Device to resume.
*/
static int ux500_hash_resume(struct platform_device *pdev)
static int ux500_hash_resume(struct device *dev)
{
int ret = 0;
struct hash_device_data *device_data;
struct hash_ctx *temp_ctx = NULL;

device_data = platform_get_drvdata(pdev);
device_data = dev_get_drvdata(dev);
if (!device_data) {
dev_err(&pdev->dev, "[%s] platform_get_drvdata() failed!",
__func__);
dev_err(dev, "[%s] platform_get_drvdata() failed!", __func__);
return -ENOMEM;
}

Expand All @@ -1958,21 +1955,21 @@ static int ux500_hash_resume(struct platform_device *pdev)
ret = hash_enable_power(device_data, true);

if (ret)
dev_err(&pdev->dev, "[%s]: hash_enable_power() failed!",
__func__);
dev_err(dev, "[%s]: hash_enable_power() failed!", __func__);

return ret;
}

static SIMPLE_DEV_PM_OPS(ux500_hash_pm, ux500_hash_suspend, ux500_hash_resume);

static struct platform_driver hash_driver = {
.probe = ux500_hash_probe,
.remove = ux500_hash_remove,
.shutdown = ux500_hash_shutdown,
.suspend = ux500_hash_suspend,
.resume = ux500_hash_resume,
.driver = {
.owner = THIS_MODULE,
.name = "hash1",
.pm = &ux500_hash_pm,
}
};

Expand Down

0 comments on commit 32eaf31

Please sign in to comment.