Re: [PATCH V5 5/5] of: unittest: Statically apply overlays using fdtoverlay

From: Frank Rowand
Date: Thu Jan 21 2021 - 02:06:46 EST


On 1/20/21 11:58 PM, Viresh Kumar wrote:
> On 20-01-21, 23:55, Frank Rowand wrote:
>> yes, but using the modified versions ("/plugin/;" removed) of
>> testcases.dtb and overlay_base.dtb.
>
> Okay, that would work fine I guess. I will try to implement this in
> the new version.
>
>> I apologize in advance if I get confused in these threads or cause confusion.
>> I find myself going in circles and losing track of how things fit together as
>> I move through the various pieces of unittest.
>
> Me too :)
>
> Today is the first time where we have some overlap in our work hours
> (probably you working late :)), and we are able to get this sorted out
> quickly enough.

Working quite late. I swear I stopped working 3 hours ago and that was
already late.

I reacted quite negatively to the attempt to restructure the unittest
.dts file in the original patch. Now after walking around the problem
space a bit, and reviewing the ugly things that unittest.c does, and
coming up with the approach of sed to copy and modify the two base
.dts files, I think I finally have my head wrapped around an easier
and cleaner approach than sed.

I'll describe it for just one of the two base files, but the same
concept would apply to the other. Don't take my file names as
good suggestions, I am avoiding using the brain power to come up
with good names at the moment.

1) rename overlay_base.dts to overlay_base.dtsi

2) remove "/dtgs-v1/" and "/plugin/:" from overlay_base.dtsi

3) create a new overlay_base.dts:
// SPDX-License-Identifier: GPL-2.0
/dts-v1/;
/plugin/;
#include overlay_base_dtsi

4) create a new file overlay_base_static.dts:
// SPDX-License-Identifier: GPL-2.0
/dts-v1/;
#include overlay_base_dtsi

5) then use overlay_base_static.dtb as the base blob for ftdoverlay
applying overlay.dtb

Untested, hand typed, hopefully no typos.

-Frank

>
> Thanks for your feedback Frank.
>