Hi Rob, > On May 10, 2016, at 00:59 , Rob Herring <robherring2@xxxxxxxxx> wrote: > > On Mon, May 9, 2016 at 1:05 PM, Pantelis Antoniou > <pantelis.antoniou@xxxxxxxxxxxx> wrote: >> Add a description of the indirect overlay method to the overlay >> documention file. > > Why? Please write some decent commit messages. > >> Signed-off-by: Pantelis Antoniou <pantelis.antoniou@xxxxxxxxxxxx> >> --- >> Documentation/devicetree/overlay-notes.txt | 13 +++++++++++++ >> 1 file changed, 13 insertions(+) >> >> diff --git a/Documentation/devicetree/overlay-notes.txt b/Documentation/devicetree/overlay-notes.txt >> index d418a6c..dd595e6 100644 >> --- a/Documentation/devicetree/overlay-notes.txt >> +++ b/Documentation/devicetree/overlay-notes.txt >> @@ -100,6 +100,10 @@ Finally, if you need to remove all overlays in one-go, just call >> of_overlay_destroy_all() which will remove every single one in the correct >> order. >> >> +If your board has multiple slots/places where a single overlay can work >> +and each slot is defined by a node, you can use the of_overlay_create_indirect() >> +method to select the target. >> + >> Overlay DTS Format >> ------------------ >> >> @@ -113,6 +117,11 @@ The DTS of an overlay should have the following format: >> target=<phandle>; /* phandle target of the overlay */ >> or >> target-path="/path"; /* target path of the overlay */ > > Why not just let these take multiple values and the user just selects index? > Implementation details. Usually there’s a descriptive label used for each different target point. It could be a slot# or it could be a label… A string selector maps better IMO. >> + or >> + target-indirect { /* indirect target selector */ >> + foo { target|target-path ... }; >> + bar { .... }; >> + }; >> >> __overlay__ { >> property-a; /* add property-a to the target */ >> @@ -131,3 +140,7 @@ Using the non-phandle based target method allows one to use a base DT which does >> not contain a __symbols__ node, i.e. it was not compiled with the -@ option. >> The __symbols__ node is only required for the target=<phandle> method, since it >> contains the information required to map from a phandle to a tree location. >> + >> +The indirect target requires the use of a selector target on the call to >> +of_overlay_create_indirect(). I.e. passing the "foo" id will select the target >> +in the foo node, "bar" in bar node, etc. >> -- >> 1.7.12 >> Regards — Pantelis -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html