On Sat, Oct 19, 2019 at 4:07 PM Guenter Roeck <linux@xxxxxxxxxxxx> wrote: > > @@ -319,10 +316,13 @@ static struct platform_device *sa11x0_devices[] __initdata = { > > > > static int __init sa1100_init(void) > > { > > + struct resource wdt_res = DEFINE_RES_MEM(0x90000000, 0x20); > > pm_power_off = sa1100_power_off; > > > > regulator_has_full_constraints(); > > > > + platform_device_register_simple("sa1100_wdt", -1, &wdt_res, 1); > > + > > return platform_add_devices(sa11x0_devices, ARRAY_SIZE(sa11x0_devices)); > > Wouldn't it be better to add the watchdog device to sa11x0_devices ? Generally speaking, platform_device_register_simple() is better than platform_add_devices(), it does the same thing with fewer source lines and smaller object code, and it doesn't have the problem of lifetime rules for statically allocated reference-counted devices. One day we may want to replace all static platform_device instances with platform_device_info instead, but right now there are too many of those. I can change this one to a platform_device for consistency though if you think it's worth it. Arnd