On Mon, Feb 29, 2016 at 02:34:41PM +0100, Marek Vasut wrote: > On 02/29/2016 02:26 PM, Mugunthan V N wrote: > > On Monday 29 February 2016 05:34 PM, Marek Vasut wrote: > >> On 02/29/2016 04:44 AM, Mugunthan V N wrote: > >>> Currently all backend driver ops uses hard coded physical > >>> address, so to adopt the driver to DM, add device pointer to ops > >>> call backs so that drivers that drivers can get physical > >>> addresses from the usb driver priv/plat data. > >>> > >>> Signed-off-by: Mugunthan V N <mugunthan...@ti.com> > >>> --- > >> > >> [...] > >> > >>> @@ -704,8 +719,13 @@ static int dsps_resume(struct device *dev) > >>> struct omap_musb_board_data *data = plat->board_data; > >>> > >>> /* Start the on-chip PHY and its PLL. */ > >>> +#ifndef CONFIG_DM_USB > >>> if (data->set_phy_power) > >>> data->set_phy_power(1); > >>> +#else > >>> + if (data->set_phy_power) > >>> + data->set_phy_power(data->dev, 1); > >> > >> Would it be possible to avoid adding this sea of ifdefs into the driver? > >> > > > > May be introducing a void pointer and pass it back in ops callback can > > avoid ifdefs. For non DM mode, it will be holding NULL pointer and for > > DM mode it will be holding a dev pointer. If its ok, I can fix in v2. > > That looks a bit more sensible, yes. I am worried about problems with > dereferencing the data->dev pointer though. But let's see.
Maybe looking at how Jagan has the SPI stuff separated to allow for DM/non-DM but without a lot of ifdefs can help here too? -- Tom
signature.asc
Description: Digital signature
_______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot