Re: [PATCH v2 8/9] phy: Add Cadence D-PHY support

From: Kishon Vijay Abraham I
Date: Wed Nov 21 2018 - 05:30:26 EST


Hi Maxime,

On 21/11/18 3:41 PM, Maxime Ripard wrote:
> Hi Kishon,
>
> On Tue, Nov 20, 2018 at 11:02:34AM +0530, Kishon Vijay Abraham I wrote:
>>>> +static int cdns_dphy_config_from_opts(struct phy *phy,
>>>> + struct phy_configure_opts_mipi_dphy *opts,
>>>> + struct cdns_dphy_cfg *cfg)
>>>> +{
>>>> + struct cdns_dphy *dphy = phy_get_drvdata(phy);
>>>> + unsigned int dsi_hfp_ext = 0;
>>>> + int ret;
>>>> +
>>>> + ret = phy_mipi_dphy_config_validate(opts);
>>>> + if (ret)
>>>> + return ret;
>>>> +
>>>> + ret = cdns_dsi_get_dphy_pll_cfg(dphy, cfg,
>>>> + opts, &dsi_hfp_ext);
>>>> + if (ret)
>>>> + return ret;
>>>> +
>>>> + opts->wakeup = cdns_dphy_get_wakeup_time_ns(dphy);
>>
>> Is the wakeup populated here used by the consumer driver?
>
> It's supposed to, if it can yes.

But I guess right now it's not using. I'm thinking the usefulness of validate
callback (only from this series point of view). Why should a consumer driver
invoke validate if it doesn't intend to configure the PHY?

The 3 steps required are
* The consumer driver gets the default config
* The consumer driver changes some of the configuration and
* The consumer driver invokes phy configure callback.

phy_configure anyways can validate the config before actually configuring the phy.

Thanks
Kishon