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 sfr@xxxxxxxxxxxxxxxx > > 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:
pgpXSYv6XGFDb.pgp
Description: PGP signature