summaryrefslogtreecommitdiffstats
path: root/drivers/iommu/msm_iommu_dev.c
diff options
context:
space:
mode:
authorJiri Kosina <jkosina@suse.cz>2013-09-04 10:49:39 +0200
committerJiri Kosina <jkosina@suse.cz>2013-09-04 10:49:57 +0200
commitefd15f5f4ff63f6ac5d80850686e3d2cc8c4481b (patch)
tree40024adbe77a3d660662e639fd765097133d648c /drivers/iommu/msm_iommu_dev.c
parent6c2794a2984f4c17a58117a68703cc7640f01c5a (diff)
parent58c59bc997d86593f0bea41845885917cf304d22 (diff)
Merge branch 'master' into for-3.12/upstream
Sync with Linus' tree to be able to apply fixup patch on top of 9d9a04ee75 ("HID: apple: Add support for the 2013 Macbook Air") Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Diffstat (limited to 'drivers/iommu/msm_iommu_dev.c')
-rw-r--r--drivers/iommu/msm_iommu_dev.c24
1 files changed, 10 insertions, 14 deletions
diff --git a/drivers/iommu/msm_iommu_dev.c b/drivers/iommu/msm_iommu_dev.c
index 9144a6beed9..6ba35147713 100644
--- a/drivers/iommu/msm_iommu_dev.c
+++ b/drivers/iommu/msm_iommu_dev.c
@@ -291,25 +291,20 @@ static int msm_iommu_ctx_probe(struct platform_device *pdev)
{
struct msm_iommu_ctx_dev *c = pdev->dev.platform_data;
struct msm_iommu_drvdata *drvdata;
- struct msm_iommu_ctx_drvdata *ctx_drvdata = NULL;
+ struct msm_iommu_ctx_drvdata *ctx_drvdata;
int i, ret;
- if (!c || !pdev->dev.parent) {
- ret = -EINVAL;
- goto fail;
- }
- drvdata = dev_get_drvdata(pdev->dev.parent);
+ if (!c || !pdev->dev.parent)
+ return -EINVAL;
- if (!drvdata) {
- ret = -ENODEV;
- goto fail;
- }
+ drvdata = dev_get_drvdata(pdev->dev.parent);
+ if (!drvdata)
+ return -ENODEV;
ctx_drvdata = kzalloc(sizeof(*ctx_drvdata), GFP_KERNEL);
- if (!ctx_drvdata) {
- ret = -ENOMEM;
- goto fail;
- }
+ if (!ctx_drvdata)
+ return -ENOMEM;
+
ctx_drvdata->num = c->num;
ctx_drvdata->pdev = pdev;
@@ -403,6 +398,7 @@ static int __init msm_iommu_driver_init(void)
ret = platform_driver_register(&msm_iommu_ctx_driver);
if (ret != 0) {
+ platform_driver_unregister(&msm_iommu_driver);
pr_err("Failed to register IOMMU context driver\n");
goto error;
}