On 05/02/18 19:20, David Gibson wrote: > On Wed, May 02, 2018 at 10:19:58AM +0100, Phil Elwell wrote: >> David et al., >> >> I've mentioned before the problem posed for overlays by boolean properties, i.e. >> that a boolean property that is "true" in a base DTB cannot be made "false" by an >> overlay because doing so requires that the property be deleted. A solution for this >> problem would be to define a new FDT tag - FDT_DEL_PROP, say - that is used to encode >> any /delete-property/ found in a node during overlay compilation. When the overlay is >> applied, the named property would be deleted if present. >> >> A heuristic would be needed to decide whether this property should be encoded or just >> acted on immediately - the use of the '-@' command line parameter would seem to fit the >> bill. >> >> Although one might consider extending this mechanism to cover node deletion, in practice >> I think this would be too problematic in terms of broken phandle references etc., and in >> most cases 'status = "disabled"' achieves the same objective, so I'm not proposing this >> be added. >> >> Is such a change something you would consider supporting, or do you have an alternative >> preferred solution? > > I'd certainly consider it within the right context. > > The difficulty is that this obviously requires changing the things > that accept the fdt to understand the new format. And if we're going > to do that, there's a bunch of other things we should change as well. > I've previously had a discussion with Frank Rowand about how we could > do a much saner encoding of the fixups using new tags, rather than the > currently rather ghastly encoding in special properties and nodes. > > So maybe add this as one feature to put in a hypothetical v32 (or > whatever) fdt format. I like this idea. On the question of current users of FDT objects, I think the problem is limited to only overlays, so users of base FDTs should not be impacted. That at least reduces the amount of code that needs to be updated. -- To unsubscribe from this list: send the line "unsubscribe devicetree-compiler" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html