Re: [PATCH 0/2] of: change overlay apply input data from EDT to FDT

From: Frank Rowand
Date: Mon Jan 29 2018 - 19:35:39 EST


Hi Alan,

In this patch series one of the changes was to change some
devicetree unittest overlay source to use the new sugar syntax to
specify overlay nodes instead of hand coding the fragment nodes.

One reviewer reminded me to update Documentation/ files that
show the hand coding of overlay fragment nodes. One of those
files is Documentation/devicetree/bindings/fpga/fpga-region.txt.
I plan to submit a patch to update the example devicetree source
to use the sugar syntax. There is one place where I can not
make that change, which is the "Overlay DTS Format" section.
In this section, the use of 'target-path="/path" is shown as
one of two ways to specify the target of the fragment. The
sugar syntax creates a fragment using the 'target=<phandle>'
form instead of 'target-path="/path"' form. With sugar
syntax, there is no way to specify target-path. Is the
target-path form needed by the fpga subsystem, or can this
be removed?

-Frank

On 01/29/18 16:22, Frank Rowand wrote:
> On 01/29/18 06:08, Geert Uytterhoeven wrote:
>> Hi Frank,
>>
>> On Mon, Jan 29, 2018 at 3:53 AM, <frowand.list@xxxxxxxxx> wrote:
>>> From: Frank Rowand <frank.rowand@xxxxxxxx>
>>>
>>> Move duplicating and unflattening of an overlay flattened devicetree
>>> (FDT) into the overlay application code. To accomplish this,
>>> of_overlay_apply() is replaced by of_overlay_fdt_apply().
>>>
>>> The copy of the FDT (aka "duplicate FDT") now belongs to devicetree
>>> code, which is thus responsible for freeing the duplicate FDT. The
>>> caller of of_overlay_fdt_apply() remains responsible for freeing the
>>> original FDT.
>>>
>>> The unflattened device tree (aka expanded device tree, EDT) now
>>> belongs to devicetree code, which is thus responsible for freeing
>>> the EDT.
>>>
>>> These ownership changes prevent early freeing of the duplicated FDT
>>> or the EDT, which could result in use after free errors.
>>>
>>> These changes led to migrating some unittest overlay data into
>>> their own devicetree source files, and then converting most of
>>> them to use sugar syntax instead of hand coding fragments.
>>
>> Thanks for your series!
>>
>>> Frank Rowand (2):
>>> of: change overlay apply input data from EDT to FDT
>>> of: convert unittest overlay devicetree source to sugar syntax
>>
>> Do you plan to update Documentation/devicetree/overlay-notes.txt
>> and Documentation/devicetree/bindings/fpga/fpga-region.txt, too?
>
> Thanks for the pointers.
>
> I will add updates to Documentation/devicetree/overlay-notes.txt in
> this series.
>
> The changes to Documentation/devicetree/bindings/fpga/fpga-region.txt
> are related to the relatively new sugar syntax in dtc, not to the
> changes introduced by this patch series. I'll create a patch outside
> this series to update this documentation.
>
>
>> Gr{oetje,eeting}s,
>>
>> Geert
>>
>> --
>> Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx
>>
>> In personal conversations with technical people, I call myself a hacker. But
>> when I'm talking to journalists I just say "programmer" or something like that.
>> -- Linus Torvalds
>>
>
>