Hi Florian,
> This patch converts the ar7_wdt driver to become a platform
> driver. The AR7 SoC specific identification and base register
> calculation is performed by the board code, therefore we no
> longer need to have access to ar7_chip_id.
> @@ -298,22 +285,33 @@ static struct miscdevice ar7_wdt_miscdev = {
> .fops = &ar7_wdt_fops,
> };
>
> -static int __init ar7_wdt_init(void)
> +static int __init ar7_wdt_probe(struct platform_device *pdev)
Should be __devinit .
> +static struct platform_driver ar7_wdt_driver = {
> + .driver.name = "ar7_wdt",
> + .probe = ar7_wdt_probe,
> + .remove = __devexit_p(ar7_wdt_remove),
> +};
I prefer to have it as follows (so that the driver.owner field is also set):
static struct platform_driver ar7_wdt_driver = {
.probe = ar7_wdt_probe,
.remove = __devexit_p(ar7_wdt_remove),
.driver = {
.owner = THIS_MODULE,
.name = "ar7_wdt",
},
};
I suggest to also change the reboot notifier code into a platform shutdown
method.
You then get something like the attached patch (untested, uncompiled and I
included above 2 remarks).
For the rest: code is OK for me. After the __init to __devinit fix you can add
my signed-off-by.
Kind regards,
Wim.
|