* [U-Boot] [RFC PATCH] dm: device: Do not probe parents which are probed already
@ 2019-01-18 9:41 Michal Simek
2019-01-31 10:04 ` Simon Glass
0 siblings, 1 reply; 5+ messages in thread
From: Michal Simek @ 2019-01-18 9:41 UTC (permalink / raw)
To: u-boot
From the first look there is no reason to probe parent nodes if they are
active already.
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
---
I have created this just for showing status of parent device.
Maybe there is any strong reason to do this but I just wanted to check
this because it looks like just wasting of time.
Just revert this condition when you want to see outputs.
if (dev->parent && !(dev->parent->flags & DM_FLAG_ACTIVATED)) {
Without this line
99 amba @ 7df04d20
100 amba @ 7df04d20
99 * root_driver @ 7df04960, seq 0, (req -1)
100 * root_driver @ 7df04960, seq 0, (req -1)
99 * root_driver @ 7df04960, seq 0, (req -1)
100 * root_driver @ 7df04960, seq 0, (req -1)
99 * root_driver @ 7df04960, seq 0, (req -1)
100 * root_driver @ 7df04960, seq 0, (req -1)
99 * root_driver @ 7df04960, seq 0, (req -1)
100 * root_driver @ 7df04960, seq 0, (req -1)
99 * root_driver @ 7df04960, seq 0, (req -1)
100 * root_driver @ 7df04960, seq 0, (req -1)
99 * root_driver @ 7df04960, seq 0, (req -1)
100 * root_driver @ 7df04960, seq 0, (req -1)
99 * root_driver @ 7df04960, seq 0, (req -1)
100 * root_driver @ 7df04960, seq 0, (req -1)
MMC: 99 * amba @ 7df04d20, seq 0, (req -1)
100 * amba @ 7df04d20, seq 0, (req -1)
ZynqMP> i2c dev 0
Setting bus to 0
99 * amba @ 7df04d20, seq 0, (req -1)
100 * amba @ 7df04d20, seq 0, (req -1)
with this line added
99 amba @ 7df04d20
100 amba @ 7df04d20
99 * root_driver @ 7df04960, seq 0, (req -1)
99 * root_driver @ 7df04960, seq 0, (req -1)
99 * root_driver @ 7df04960, seq 0, (req -1)
99 * root_driver @ 7df04960, seq 0, (req -1)
99 * root_driver @ 7df04960, seq 0, (req -1)
99 * root_driver @ 7df04960, seq 0, (req -1)
99 * root_driver @ 7df04960, seq 0, (req -1)
MMC: 99 * amba @ 7df04d20, seq 0, (req -1)
ZynqMP> i2c dev 0
Setting bus to 0
99 * amba @ 7df04d20, seq 0, (req -1)
---
drivers/core/device.c | 7 ++++++-
drivers/core/dump.c | 2 +-
2 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/drivers/core/device.c b/drivers/core/device.c
index 0d15e5062b66..114888a8f7cf 100644
--- a/drivers/core/device.c
+++ b/drivers/core/device.c
@@ -341,8 +341,13 @@ int device_probe(struct udevice *dev)
}
}
+ if (dev->parent)
+ dm_display_line(dev->parent, 99);
+
/* Ensure all parents are probed */
- if (dev->parent) {
+ if (dev->parent && !(dev->parent->flags & DM_FLAG_ACTIVATED)) {
+ dm_display_line(dev->parent, 100);
+
size = dev->parent->driver->per_child_auto_alloc_size;
if (!size) {
size = dev->parent->uclass->uc_drv->
diff --git a/drivers/core/dump.c b/drivers/core/dump.c
index 8fbfd93fb5e4..95ba7dcb9193 100644
--- a/drivers/core/dump.c
+++ b/drivers/core/dump.c
@@ -62,7 +62,7 @@ void dm_dump_all(void)
*
* @dev: Device to display
*/
-static void dm_display_line(struct udevice *dev, int index)
+void dm_display_line(struct udevice *dev, int index)
{
printf("%i %c %s @ %08lx", index,
dev->flags & DM_FLAG_ACTIVATED ? '*' : ' ',
--
1.9.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [U-Boot] [RFC PATCH] dm: device: Do not probe parents which are probed already
2019-01-18 9:41 [U-Boot] [RFC PATCH] dm: device: Do not probe parents which are probed already Michal Simek
@ 2019-01-31 10:04 ` Simon Glass
2019-01-31 10:28 ` Michal Simek
0 siblings, 1 reply; 5+ messages in thread
From: Simon Glass @ 2019-01-31 10:04 UTC (permalink / raw)
To: u-boot
Hi Michal,
On Fri, 18 Jan 2019 at 02:41, Michal Simek <michal.simek@xilinx.com> wrote:
>
> From the first look there is no reason to probe parent nodes if they are
> active already.
>
> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
> ---
>
> I have created this just for showing status of parent device.
> Maybe there is any strong reason to do this but I just wanted to check
> this because it looks like just wasting of time.
>
> Just revert this condition when you want to see outputs.
> if (dev->parent && !(dev->parent->flags & DM_FLAG_ACTIVATED)) {
>
> Without this line
>
> 99 amba @ 7df04d20
> 100 amba @ 7df04d20
> 99 * root_driver @ 7df04960, seq 0, (req -1)
> 100 * root_driver @ 7df04960, seq 0, (req -1)
> 99 * root_driver @ 7df04960, seq 0, (req -1)
> 100 * root_driver @ 7df04960, seq 0, (req -1)
> 99 * root_driver @ 7df04960, seq 0, (req -1)
> 100 * root_driver @ 7df04960, seq 0, (req -1)
> 99 * root_driver @ 7df04960, seq 0, (req -1)
> 100 * root_driver @ 7df04960, seq 0, (req -1)
> 99 * root_driver @ 7df04960, seq 0, (req -1)
> 100 * root_driver @ 7df04960, seq 0, (req -1)
> 99 * root_driver @ 7df04960, seq 0, (req -1)
> 100 * root_driver @ 7df04960, seq 0, (req -1)
> 99 * root_driver @ 7df04960, seq 0, (req -1)
> 100 * root_driver @ 7df04960, seq 0, (req -1)
> MMC: 99 * amba @ 7df04d20, seq 0, (req -1)
> 100 * amba @ 7df04d20, seq 0, (req -1)
>
> ZynqMP> i2c dev 0
> Setting bus to 0
> 99 * amba @ 7df04d20, seq 0, (req -1)
> 100 * amba @ 7df04d20, seq 0, (req -1)
>
> with this line added
>
> 99 amba @ 7df04d20
> 100 amba @ 7df04d20
> 99 * root_driver @ 7df04960, seq 0, (req -1)
> 99 * root_driver @ 7df04960, seq 0, (req -1)
> 99 * root_driver @ 7df04960, seq 0, (req -1)
> 99 * root_driver @ 7df04960, seq 0, (req -1)
> 99 * root_driver @ 7df04960, seq 0, (req -1)
> 99 * root_driver @ 7df04960, seq 0, (req -1)
> 99 * root_driver @ 7df04960, seq 0, (req -1)
> MMC: 99 * amba @ 7df04d20, seq 0, (req -1)
>
> ZynqMP> i2c dev 0
> Setting bus to 0
> 99 * amba @ 7df04d20, seq 0, (req -1)
>
> ---
> drivers/core/device.c | 7 ++++++-
> drivers/core/dump.c | 2 +-
> 2 files changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/core/device.c b/drivers/core/device.c
> index 0d15e5062b66..114888a8f7cf 100644
> --- a/drivers/core/device.c
> +++ b/drivers/core/device.c
> @@ -341,8 +341,13 @@ int device_probe(struct udevice *dev)
> }
> }
>
> + if (dev->parent)
> + dm_display_line(dev->parent, 99);
> +
> /* Ensure all parents are probed */
> - if (dev->parent) {
> + if (dev->parent && !(dev->parent->flags & DM_FLAG_ACTIVATED)) {
> + dm_display_line(dev->parent, 100);
> +
Yes this looks like a good change in principle.
But we still need to execute the code below even if the parent is
probed, so that we allocate the child's parent data:
> size = dev->parent->driver->per_child_auto_alloc_size;
> if (!size) {
> size = dev->parent->uclass->uc_drv->
...
So can you please rework this to allow for that?
Overall I think your change saves a function call. As you can see the
flag is checked right at the top of device_probe().
> diff --git a/drivers/core/dump.c b/drivers/core/dump.c
> index 8fbfd93fb5e4..95ba7dcb9193 100644
> --- a/drivers/core/dump.c
> +++ b/drivers/core/dump.c
> @@ -62,7 +62,7 @@ void dm_dump_all(void)
> *
> * @dev: Device to display
> */
> -static void dm_display_line(struct udevice *dev, int index)
> +void dm_display_line(struct udevice *dev, int index)
> {
> printf("%i %c %s @ %08lx", index,
> dev->flags & DM_FLAG_ACTIVATED ? '*' : ' ',
> --
> 1.9.1
>
Regards,
Simon
^ permalink raw reply [flat|nested] 5+ messages in thread
* [U-Boot] [RFC PATCH] dm: device: Do not probe parents which are probed already
2019-01-31 10:04 ` Simon Glass
@ 2019-01-31 10:28 ` Michal Simek
2019-02-02 6:05 ` Simon Glass
0 siblings, 1 reply; 5+ messages in thread
From: Michal Simek @ 2019-01-31 10:28 UTC (permalink / raw)
To: u-boot
On 31. 01. 19 11:04, Simon Glass wrote:
> Hi Michal,
>
> On Fri, 18 Jan 2019 at 02:41, Michal Simek <michal.simek@xilinx.com> wrote:
>>
>> From the first look there is no reason to probe parent nodes if they are
>> active already.
>>
>> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
>> ---
>>
>> I have created this just for showing status of parent device.
>> Maybe there is any strong reason to do this but I just wanted to check
>> this because it looks like just wasting of time.
>>
>> Just revert this condition when you want to see outputs.
>> if (dev->parent && !(dev->parent->flags & DM_FLAG_ACTIVATED)) {
>>
>> Without this line
>>
>> 99 amba @ 7df04d20
>> 100 amba @ 7df04d20
>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>> 100 * root_driver @ 7df04960, seq 0, (req -1)
>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>> 100 * root_driver @ 7df04960, seq 0, (req -1)
>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>> 100 * root_driver @ 7df04960, seq 0, (req -1)
>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>> 100 * root_driver @ 7df04960, seq 0, (req -1)
>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>> 100 * root_driver @ 7df04960, seq 0, (req -1)
>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>> 100 * root_driver @ 7df04960, seq 0, (req -1)
>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>> 100 * root_driver @ 7df04960, seq 0, (req -1)
>> MMC: 99 * amba @ 7df04d20, seq 0, (req -1)
>> 100 * amba @ 7df04d20, seq 0, (req -1)
>>
>> ZynqMP> i2c dev 0
>> Setting bus to 0
>> 99 * amba @ 7df04d20, seq 0, (req -1)
>> 100 * amba @ 7df04d20, seq 0, (req -1)
>>
>> with this line added
>>
>> 99 amba @ 7df04d20
>> 100 amba @ 7df04d20
>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>> MMC: 99 * amba @ 7df04d20, seq 0, (req -1)
>>
>> ZynqMP> i2c dev 0
>> Setting bus to 0
>> 99 * amba @ 7df04d20, seq 0, (req -1)
>>
>> ---
>> drivers/core/device.c | 7 ++++++-
>> drivers/core/dump.c | 2 +-
>> 2 files changed, 7 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/core/device.c b/drivers/core/device.c
>> index 0d15e5062b66..114888a8f7cf 100644
>> --- a/drivers/core/device.c
>> +++ b/drivers/core/device.c
>> @@ -341,8 +341,13 @@ int device_probe(struct udevice *dev)
>> }
>> }
>>
>> + if (dev->parent)
>> + dm_display_line(dev->parent, 99);
>> +
>> /* Ensure all parents are probed */
>> - if (dev->parent) {
>> + if (dev->parent && !(dev->parent->flags & DM_FLAG_ACTIVATED)) {
>> + dm_display_line(dev->parent, 100);
>> +
>
> Yes this looks like a good change in principle.
>
> But we still need to execute the code below even if the parent is
> probed, so that we allocate the child's parent data:
ok.
>> size = dev->parent->driver->per_child_auto_alloc_size;
>> if (!size) {
>> size = dev->parent->uclass->uc_drv->
>
> ...
>
> So can you please rework this to allow for that?
>
> Overall I think your change saves a function call. As you can see the
> flag is checked right at the top of device_probe().
I am not quite sure how that rework should look like.
If just this.
if (!(dev->parent->flags & DM_FLAG_ACTIVATED))
ret = device_probe(dev->parent);
if (ret)
goto fail;
Then improvement will be very minimal.
Thanks,
Michal
^ permalink raw reply [flat|nested] 5+ messages in thread
* [U-Boot] [RFC PATCH] dm: device: Do not probe parents which are probed already
2019-01-31 10:28 ` Michal Simek
@ 2019-02-02 6:05 ` Simon Glass
2019-02-05 8:24 ` Michal Simek
0 siblings, 1 reply; 5+ messages in thread
From: Simon Glass @ 2019-02-02 6:05 UTC (permalink / raw)
To: u-boot
Hi Michal,
On Thu, 31 Jan 2019 at 03:28, Michal Simek <michal.simek@xilinx.com> wrote:
>
> On 31. 01. 19 11:04, Simon Glass wrote:
> > Hi Michal,
> >
> > On Fri, 18 Jan 2019 at 02:41, Michal Simek <michal.simek@xilinx.com>
wrote:
> >>
> >> From the first look there is no reason to probe parent nodes if they
are
> >> active already.
> >>
> >> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
> >> ---
> >>
> >> I have created this just for showing status of parent device.
> >> Maybe there is any strong reason to do this but I just wanted to check
> >> this because it looks like just wasting of time.
> >>
> >> Just revert this condition when you want to see outputs.
> >> if (dev->parent && !(dev->parent->flags & DM_FLAG_ACTIVATED)) {
> >>
> >> Without this line
> >>
> >> 99 amba @ 7df04d20
> >> 100 amba @ 7df04d20
> >> 99 * root_driver @ 7df04960, seq 0, (req -1)
> >> 100 * root_driver @ 7df04960, seq 0, (req -1)
> >> 99 * root_driver @ 7df04960, seq 0, (req -1)
> >> 100 * root_driver @ 7df04960, seq 0, (req -1)
> >> 99 * root_driver @ 7df04960, seq 0, (req -1)
> >> 100 * root_driver @ 7df04960, seq 0, (req -1)
> >> 99 * root_driver @ 7df04960, seq 0, (req -1)
> >> 100 * root_driver @ 7df04960, seq 0, (req -1)
> >> 99 * root_driver @ 7df04960, seq 0, (req -1)
> >> 100 * root_driver @ 7df04960, seq 0, (req -1)
> >> 99 * root_driver @ 7df04960, seq 0, (req -1)
> >> 100 * root_driver @ 7df04960, seq 0, (req -1)
> >> 99 * root_driver @ 7df04960, seq 0, (req -1)
> >> 100 * root_driver @ 7df04960, seq 0, (req -1)
> >> MMC: 99 * amba @ 7df04d20, seq 0, (req -1)
> >> 100 * amba @ 7df04d20, seq 0, (req -1)
> >>
> >> ZynqMP> i2c dev 0
> >> Setting bus to 0
> >> 99 * amba @ 7df04d20, seq 0, (req -1)
> >> 100 * amba @ 7df04d20, seq 0, (req -1)
> >>
> >> with this line added
> >>
> >> 99 amba @ 7df04d20
> >> 100 amba @ 7df04d20
> >> 99 * root_driver @ 7df04960, seq 0, (req -1)
> >> 99 * root_driver @ 7df04960, seq 0, (req -1)
> >> 99 * root_driver @ 7df04960, seq 0, (req -1)
> >> 99 * root_driver @ 7df04960, seq 0, (req -1)
> >> 99 * root_driver @ 7df04960, seq 0, (req -1)
> >> 99 * root_driver @ 7df04960, seq 0, (req -1)
> >> 99 * root_driver @ 7df04960, seq 0, (req -1)
> >> MMC: 99 * amba @ 7df04d20, seq 0, (req -1)
> >>
> >> ZynqMP> i2c dev 0
> >> Setting bus to 0
> >> 99 * amba @ 7df04d20, seq 0, (req -1)
> >>
> >> ---
> >> drivers/core/device.c | 7 ++++++-
> >> drivers/core/dump.c | 2 +-
> >> 2 files changed, 7 insertions(+), 2 deletions(-)
> >>
> >> diff --git a/drivers/core/device.c b/drivers/core/device.c
> >> index 0d15e5062b66..114888a8f7cf 100644
> >> --- a/drivers/core/device.c
> >> +++ b/drivers/core/device.c
> >> @@ -341,8 +341,13 @@ int device_probe(struct udevice *dev)
> >> }
> >> }
> >>
> >> + if (dev->parent)
> >> + dm_display_line(dev->parent, 99);
> >> +
> >> /* Ensure all parents are probed */
> >> - if (dev->parent) {
> >> + if (dev->parent && !(dev->parent->flags & DM_FLAG_ACTIVATED)) {
> >> + dm_display_line(dev->parent, 100);
> >> +
> >
> > Yes this looks like a good change in principle.
> >
> > But we still need to execute the code below even if the parent is
> > probed, so that we allocate the child's parent data:
>
> ok.
>
>
> >> size = dev->parent->driver->per_child_auto_alloc_size;
> >> if (!size) {
> >> size = dev->parent->uclass->uc_drv->
> >
> > ...
> >
> > So can you please rework this to allow for that?
> >
> > Overall I think your change saves a function call. As you can see the
> > flag is checked right at the top of device_probe().
>
> I am not quite sure how that rework should look like.
>
> If just this.
> if (!(dev->parent->flags & DM_FLAG_ACTIVATED))
> ret = device_probe(dev->parent);
> if (ret)
> goto fail;
>
>
> Then improvement will be very minimal.
Yes indeed, it is just saving a function call.
Regards,
Simon
^ permalink raw reply [flat|nested] 5+ messages in thread
* [U-Boot] [RFC PATCH] dm: device: Do not probe parents which are probed already
2019-02-02 6:05 ` Simon Glass
@ 2019-02-05 8:24 ` Michal Simek
0 siblings, 0 replies; 5+ messages in thread
From: Michal Simek @ 2019-02-05 8:24 UTC (permalink / raw)
To: u-boot
On 02. 02. 19 7:05, Simon Glass wrote:
> Hi Michal,
>
> On Thu, 31 Jan 2019 at 03:28, Michal Simek <michal.simek@xilinx.com> wrote:
>>
>> On 31. 01. 19 11:04, Simon Glass wrote:
>>> Hi Michal,
>>>
>>> On Fri, 18 Jan 2019 at 02:41, Michal Simek <michal.simek@xilinx.com>
> wrote:
>>>>
>>>> From the first look there is no reason to probe parent nodes if they
> are
>>>> active already.
>>>>
>>>> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
>>>> ---
>>>>
>>>> I have created this just for showing status of parent device.
>>>> Maybe there is any strong reason to do this but I just wanted to check
>>>> this because it looks like just wasting of time.
>>>>
>>>> Just revert this condition when you want to see outputs.
>>>> if (dev->parent && !(dev->parent->flags & DM_FLAG_ACTIVATED)) {
>>>>
>>>> Without this line
>>>>
>>>> 99 amba @ 7df04d20
>>>> 100 amba @ 7df04d20
>>>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>>>> 100 * root_driver @ 7df04960, seq 0, (req -1)
>>>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>>>> 100 * root_driver @ 7df04960, seq 0, (req -1)
>>>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>>>> 100 * root_driver @ 7df04960, seq 0, (req -1)
>>>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>>>> 100 * root_driver @ 7df04960, seq 0, (req -1)
>>>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>>>> 100 * root_driver @ 7df04960, seq 0, (req -1)
>>>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>>>> 100 * root_driver @ 7df04960, seq 0, (req -1)
>>>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>>>> 100 * root_driver @ 7df04960, seq 0, (req -1)
>>>> MMC: 99 * amba @ 7df04d20, seq 0, (req -1)
>>>> 100 * amba @ 7df04d20, seq 0, (req -1)
>>>>
>>>> ZynqMP> i2c dev 0
>>>> Setting bus to 0
>>>> 99 * amba @ 7df04d20, seq 0, (req -1)
>>>> 100 * amba @ 7df04d20, seq 0, (req -1)
>>>>
>>>> with this line added
>>>>
>>>> 99 amba @ 7df04d20
>>>> 100 amba @ 7df04d20
>>>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>>>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>>>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>>>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>>>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>>>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>>>> 99 * root_driver @ 7df04960, seq 0, (req -1)
>>>> MMC: 99 * amba @ 7df04d20, seq 0, (req -1)
>>>>
>>>> ZynqMP> i2c dev 0
>>>> Setting bus to 0
>>>> 99 * amba @ 7df04d20, seq 0, (req -1)
>>>>
>>>> ---
>>>> drivers/core/device.c | 7 ++++++-
>>>> drivers/core/dump.c | 2 +-
>>>> 2 files changed, 7 insertions(+), 2 deletions(-)
>>>>
>>>> diff --git a/drivers/core/device.c b/drivers/core/device.c
>>>> index 0d15e5062b66..114888a8f7cf 100644
>>>> --- a/drivers/core/device.c
>>>> +++ b/drivers/core/device.c
>>>> @@ -341,8 +341,13 @@ int device_probe(struct udevice *dev)
>>>> }
>>>> }
>>>>
>>>> + if (dev->parent)
>>>> + dm_display_line(dev->parent, 99);
>>>> +
>>>> /* Ensure all parents are probed */
>>>> - if (dev->parent) {
>>>> + if (dev->parent && !(dev->parent->flags & DM_FLAG_ACTIVATED)) {
>>>> + dm_display_line(dev->parent, 100);
>>>> +
>>>
>>> Yes this looks like a good change in principle.
>>>
>>> But we still need to execute the code below even if the parent is
>>> probed, so that we allocate the child's parent data:
>>
>> ok.
>>
>>
>>>> size = dev->parent->driver->per_child_auto_alloc_size;
>>>> if (!size) {
>>>> size = dev->parent->uclass->uc_drv->
>>>
>>> ...
>>>
>>> So can you please rework this to allow for that?
>>>
>>> Overall I think your change saves a function call. As you can see the
>>> flag is checked right at the top of device_probe().
>>
>> I am not quite sure how that rework should look like.
>>
>> If just this.
>> if (!(dev->parent->flags & DM_FLAG_ACTIVATED))
>> ret = device_probe(dev->parent);
>> if (ret)
>> goto fail;
>>
>>
>> Then improvement will be very minimal.
>
> Yes indeed, it is just saving a function call.
thanks for confirmation. It means let's close this RFC that this is no
needed and it is an issue.
Thanks,
Michal
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2019-02-05 8:24 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-01-18 9:41 [U-Boot] [RFC PATCH] dm: device: Do not probe parents which are probed already Michal Simek
2019-01-31 10:04 ` Simon Glass
2019-01-31 10:28 ` Michal Simek
2019-02-02 6:05 ` Simon Glass
2019-02-05 8:24 ` Michal Simek
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.