Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

mfd: db8500-prcmu: Provide sane error path values

Also rid superfluous gotos and label.

Cc: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>

Lee Jones 6bdf891a 51a7e02b

+8 -11
+8 -11
drivers/mfd/db8500-prcmu.c
··· 3150 3150 res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "prcmu"); 3151 3151 if (!res) { 3152 3152 dev_err(&pdev->dev, "no prcmu memory region provided\n"); 3153 - return -ENOENT; 3153 + return -EINVAL; 3154 3154 } 3155 3155 prcmu_base = devm_ioremap(&pdev->dev, res->start, resource_size(res)); 3156 3156 if (!prcmu_base) { 3157 3157 dev_err(&pdev->dev, 3158 3158 "failed to ioremap prcmu register memory\n"); 3159 - return -ENOENT; 3159 + return -ENOMEM; 3160 3160 } 3161 3161 init_prcm_registers(); 3162 3162 dbx500_fw_version_init(pdev, pdata->version_offset); 3163 3163 res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "prcmu-tcdm"); 3164 3164 if (!res) { 3165 3165 dev_err(&pdev->dev, "no prcmu tcdm region provided\n"); 3166 - return -ENOENT; 3166 + return -EINVAL; 3167 3167 } 3168 3168 tcdm_base = devm_ioremap(&pdev->dev, res->start, 3169 3169 resource_size(res)); 3170 3170 if (!tcdm_base) { 3171 3171 dev_err(&pdev->dev, 3172 3172 "failed to ioremap prcmu-tcdm register memory\n"); 3173 - return -ENOENT; 3173 + return -ENOMEM; 3174 3174 } 3175 3175 3176 3176 /* Clean up the mailbox interrupts after pre-kernel code. */ ··· 3179 3179 irq = platform_get_irq(pdev, 0); 3180 3180 if (irq <= 0) { 3181 3181 dev_err(&pdev->dev, "no prcmu irq provided\n"); 3182 - return -ENOENT; 3182 + return irq; 3183 3183 } 3184 3184 3185 3185 err = request_threaded_irq(irq, prcmu_irq_handler, 3186 3186 prcmu_irq_thread_fn, IRQF_NO_SUSPEND, "prcmu", NULL); 3187 3187 if (err < 0) { 3188 3188 pr_err("prcmu: Failed to allocate IRQ_DB8500_PRCMU1.\n"); 3189 - err = -EBUSY; 3190 - goto no_irq_return; 3189 + return err; 3191 3190 } 3192 3191 3193 3192 db8500_irq_init(np); ··· 3210 3211 if (err) { 3211 3212 mfd_remove_devices(&pdev->dev); 3212 3213 pr_err("prcmu: Failed to add subdevices\n"); 3213 - goto no_irq_return; 3214 + return err; 3214 3215 } 3215 3216 } 3216 3217 ··· 3218 3219 if (err) { 3219 3220 mfd_remove_devices(&pdev->dev); 3220 3221 pr_err("prcmu: Failed to add ab8500 subdevice\n"); 3221 - goto no_irq_return; 3222 + return err; 3222 3223 } 3223 3224 3224 3225 pr_info("DB8500 PRCMU initialized\n"); 3225 - 3226 - no_irq_return: 3227 3226 return err; 3228 3227 } 3229 3228 static const struct of_device_id db8500_prcmu_match[] = {