]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/commit - drivers/of/overlay.c
of/overlay: Introduce DT overlay support
authorPantelis Antoniou <pantelis.antoniou@konsulko.com>
Tue, 28 Oct 2014 20:35:58 +0000 (22:35 +0200)
committerGrant Likely <grant.likely@linaro.org>
Mon, 24 Nov 2014 22:25:10 +0000 (22:25 +0000)
commit7518b5890d8ac366faa2326ce2356ef6392ce63d
treee09fd7f3aa6613b70878c82b1cd372570eb2d503
parent801d728c10db4b28e01590b46bf1f0df930760cc
of/overlay: Introduce DT overlay support

Overlays are a method to dynamically modify part of the kernel's
device tree with dynamically loaded data. Add the core functionality to
parse, apply and remove an overlay changeset. The core functionality
takes care of managing the overlay data format and performing the add
and remove. Drivers are expected to use the overlay functionality to
support custom expansion busses commonly found on consumer development
boards like the BeagleBone or Raspberry Pi.

The overlay code uses CONFIG_OF_DYNAMIC changesets to perform the low
level work of modifying the devicetree.

Documentation about internal and APIs is provided in
Documentation/devicetree/overlay-notes.txt

v2:
- Switch from __of_node_alloc() to __of_node_dup()
- Documentation fixups
- Remove 2-pass processing of properties
- Remove separate ov_lock; just use the DT mutex.
v1:
- Drop delete capability using '-' prefix. The '-' prefixed names
are valid properties and nodes and there is no need for it just yet.
- Do not update special properties - name & phandle ones.
- Change order of node attachment, so that the special property update
works.

Signed-off-by: Pantelis Antoniou <pantelis.antoniou@konsulko.com>
Signed-off-by: Grant Likely <grant.likely@linaro.org>
Documentation/devicetree/overlay-notes.txt [new file with mode: 0644]
drivers/of/Kconfig
drivers/of/Makefile
drivers/of/overlay.c [new file with mode: 0644]
include/linux/of.h