On Thu, Nov 29, 2012 at 04:27:30PM +1100, Stephen Rothwell wrote:
> Hi Thierry,
> 
> Today's linux-next merge of the pwm tree got a conflict in
> drivers/pwm/pwm-tiehrpwm.c between commit 3e9fe83d278c ("pwm: remove use
> of __devinit") from the driver-core tree and commit 53ad9e8d3703 ("pwm:
> tiehrpwm: Add device-tree binding") from the pwm tree.
> 
> I fixed it up (see below) and can carry the fix as necessary (no action
> is required).

Also looking good, thanks.

Thierry

> -- 
> Cheers,
> Stephen Rothwell                    s...@canb.auug.org.au
> 
> diff --cc drivers/pwm/pwm-tiehrpwm.c
> index 9ffd389,542d5f3..0000000
> --- a/drivers/pwm/pwm-tiehrpwm.c
> +++ b/drivers/pwm/pwm-tiehrpwm.c
> @@@ -392,7 -403,13 +403,13 @@@ static const struct pwm_ops ehrpwm_pwm_
>       .owner          = THIS_MODULE,
>   };
>   
> + static const struct of_device_id ehrpwm_of_match[] = {
> +     { .compatible   = "ti,am33xx-ehrpwm" },
> +     {},
> + };
> + MODULE_DEVICE_TABLE(of, ehrpwm_of_match);
> + 
>  -static int __devinit ehrpwm_pwm_probe(struct platform_device *pdev)
>  +static int ehrpwm_pwm_probe(struct platform_device *pdev)
>   {
>       int ret;
>       struct resource *r;
> @@@ -439,11 -471,29 +471,29 @@@
>       }
>   
>       pm_runtime_enable(&pdev->dev);
> +     pm_runtime_get_sync(&pdev->dev);
> + 
> +     status = pwmss_submodule_state_change(pdev->dev.parent,
> +                     PWMSS_EPWMCLK_EN);
> +     if (!(status & PWMSS_EPWMCLK_EN_ACK)) {
> +             dev_err(&pdev->dev, "PWMSS config space clock enable failed\n");
> +             ret = -EINVAL;
> +             goto pwmss_clk_failure;
> +     }
> + 
> +     pm_runtime_put_sync(&pdev->dev);
> + 
>       platform_set_drvdata(pdev, pc);
>       return 0;
> + 
> + pwmss_clk_failure:
> +     pm_runtime_put_sync(&pdev->dev);
> +     pm_runtime_disable(&pdev->dev);
> +     pwmchip_remove(&pc->chip);
> +     return ret;
>   }
>   
>  -static int __devexit ehrpwm_pwm_remove(struct platform_device *pdev)
>  +static int ehrpwm_pwm_remove(struct platform_device *pdev)
>   {
>       struct ehrpwm_pwm_chip *pc = platform_get_drvdata(pdev);
>   
> @@@ -454,10 -512,12 +512,12 @@@
>   
>   static struct platform_driver ehrpwm_pwm_driver = {
>       .driver = {
> -             .name = "ehrpwm",
> +             .name   = "ehrpwm",
> +             .owner  = THIS_MODULE,
> +             .of_match_table = ehrpwm_of_match,
>       },
>       .probe = ehrpwm_pwm_probe,
>  -    .remove = __devexit_p(ehrpwm_pwm_remove),
>  +    .remove = ehrpwm_pwm_remove,
>   };
>   
>   module_platform_driver(ehrpwm_pwm_driver);


Attachment: pgpid87oQZLq3.pgp
Description: PGP signature

Reply via email to