Messages in this thread | | | From | Arnd Bergmann <> | Date | Fri, 22 Apr 2022 15:16:28 +0200 | Subject | Re: [PATCH v5 04/11] clocksource/drivers: Add HPE GXP timer |
| |
On Thu, Apr 21, 2022 at 9:21 PM <nick.hawkins@hpe.com> wrote:
> + > +static struct platform_device gxp_watchdog_device = { > + .name = "gxp-wdt", > + .id = -1, > +}; > +/* > + * This probe gets called after the timer is already up and running. This will create > + * the watchdog device as a child since the registers are shared. > + */ > + > +static int gxp_timer_probe(struct platform_device *pdev) > +{ > + struct device *dev = &pdev->dev; > + > + /* Pass the base address (counter) as platform data and nothing else */ > + gxp_watchdog_device.dev.platform_data = local_gxp_timer->counter; > + gxp_watchdog_device.dev.parent = dev; > + return platform_device_register(&gxp_watchdog_device); > +}
I don't understand what this is about: the device should be created from DT, not defined statically in the code. There are multiple ways of creating a platform_device from a DT node, or you can allocate one here, but static definitions are generally a mistake.
I see that you copied this from the ixp4xx driver, so I think we should fix this there as well.
Arnd
| |