[GIT PULL] at91: drivers for 3.18 #2
Arnd Bergmann
arnd at arndb.de
Tue Sep 9 02:27:12 PDT 2014
On Tuesday 09 September 2014 11:15:20 Maxime Ripard wrote:
>
> > One of the problems with the current interface is that it requires
> > statically declaring platform_device structures, which is something
> > that has been on Greg's list of device model antipatterns for a long
> > time.
>
> I didn't find any difference with how you declare platform_devices
> compared to the old-usual way in board files, or was it something on
> the list too ?
Yes. We never really bothered with cleaning up the existing static
platform_device instances, because the plan is to move away from
board files to DT anyway, but in short, if you ever need to add
a platform device to a legacy board file, do it like
pdev = platform_device_alloc(...);
platform_device_register(dev);
or
platform_device_register_simple(...);
or
static const struct platform_device_info info __initconst = { ... };
platform_device_register_full(&info);
but not
static struct platform_device pdev = { ... };
platform_device_register(&pdev);
Unfortunately, the early platform_device only allows the last type.
Arnd
More information about the linux-arm-kernel
mailing list