[U-Boot] pre_probe under struct driver

Keerthy j-keerthy at ti.com
Mon Jun 24 10:48:36 UTC 2019



On 23/06/19 12:40 AM, Simon Glass wrote:
> Hi Keerthy,
> 
> On Tue, 4 Jun 2019 at 14:01, Keerthy <j-keerthy at ti.com> wrote:
>>
>> Hi Simon/Tom,
>>
>> I am looking at the device_probe function in drivers/core/device.c
>>
>> ret = uclass_pre_probe_device(dev);
>>           if (ret)
>>                   goto fail;
>>
>>           if (dev->parent && dev->parent->driver->child_pre_probe) {
>>                   ret = dev->parent->driver->child_pre_probe(dev);
>>                   if (ret)
>>                           goto fail;
>>           }
>>
>>           if (drv->ofdata_to_platdata && dev_has_of_node(dev)) {
>>                   ret = drv->ofdata_to_platdata(dev);
>>                   if (ret)
>>                           goto fail;
>>           }
>>
>>           /* Process 'assigned-{clocks/clock-parents/clock-rates}'
>> properties */
>>           ret = clk_set_defaults(dev);
>>
>> In case of a device like MPU we would like setup voltage before setting
>> the clocks and i was looking if we can have a pre_probe for a driver
>> to do things before driver gets probed. Neither uclass_pre_probe_device
>> nor dev->parent->driver->child_pre_probe benefit me in this case.
>>
>> Does my situation warrant adding a new hook to struct driver? Or are
>> there instances of such handling already in u-boot.
> 
> For now, is it enough to probe the power driver from the clock driver?

Simon,

Thanks for your response. We came up with clock driver notifying the 
voltage driver before changing the frequency. So this particular case is 
resolved with it.

- Keerthy

> 
> Regards,
> Simon
> 


More information about the U-Boot mailing list