On Thu, Sep 26, 2019 at 08:02:15PM +0200, gregkh@xxxxxxxxxxxxxxxxxxx wrote: > On Thu, Sep 26, 2019 at 04:55:12PM +0000, Jason Gunthorpe wrote: > > On Thu, Sep 26, 2019 at 09:45:03AM -0700, Jeff Kirsher wrote: > > > +int i40iw_probe(struct platform_device *pdev) > > > +{ > > > + struct i40e_peer_dev_platform_data *pdata = > > > + dev_get_platdata(&pdev->dev); > > > + struct i40e_info *ldev; > > > > I thought Greg already said not to use platform_device for this? > > Yes I did, which is what I thought this whole "use MFD" was supposed to > solve. Why is a platform device still being used here? Looks like when mfd creates the 'multi' devices it creates them as platform_devices /* * Given a platform device that's been created by mfd_add_devices(), fetch * the mfd_cell that created it. */ static inline const struct mfd_cell *mfd_get_cell(struct platform_device *pdev) Jason