Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752855AbaDDMoO (ORCPT ); Fri, 4 Apr 2014 08:44:14 -0400 Received: from mail-wi0-f171.google.com ([209.85.212.171]:43278 "EHLO mail-wi0-f171.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752677AbaDDMoL (ORCPT ); Fri, 4 Apr 2014 08:44:11 -0400 From: Pantelis Antoniou To: Grant Likely Cc: Rob Herring , Stephen Warren , Matt Porter , Koen Kooi , Alison Chaiken , Dinh Nguyen , Jan Lubbe , Alexander Sverdlin , Michael Stickel , Guenter Roeck , Dirk Behme , Alan Tull , Sascha Hauer , Michael Bohan , Ionut Nicu , Michal Simek , Matt Ranostay , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Pete Popov , Dan Malek , Georgi Vlaev , Pantelis Antoniou , Pantelis Antoniou Subject: [PATCH v4 0/8] Introducing (yet again) Device Tree Overlays Date: Fri, 4 Apr 2014 15:43:53 +0300 Message-Id: <1396615441-29630-1-git-send-email-pantelis.antoniou@konsulko.com> X-Mailer: git-send-email 1.7.12 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Pantelis Antoniou The following patchset introduces Device Tree overlays, a method of dynamically altering the kernel's live Device Tree, along with a generic interface to use it in a board agnostic manner. It is dependent on Grant Likely's DT kobjectification patches located in his tree as queued for -next. It relies on the following previously submitted patches/patchsets: * OF: Add [__]of_find_node_by_full_name * OF: Utility helper functions for dynamic nodes To compile overlays you need the DTC compiler patch * "dtc: Dynamic symbols & fixup support (v2)" Changes since V3: * Added overlay self-tests. * Fix bug in of_init_overlay_info (wrong sizeof) * Platform bus handler handles parent_pdev == NULL * of_resolve fixes according to comments by robh + changed if (foo == NULL) to if (!foo) + changed if (foo != NULL) to if (foo) + drivers/of/Kconfig added dep on OF && !SPARC + convert to using be32_to_cpup + u32 -> __be32 when modifying property values + cosmetic fixes Changes since V2: * Use of a configfs board agnostic overlay method * Use of per bus handlers instead of hardcoded behaviour * Optional target-path overlay target, which allows one to use standard DTBs without resolution options. Changes since V1: * Removal of any bits related to a specific board (beaglebone). * Introduced a platform agnostic interface using /proc/device-tree-overlay * Various bug fixes related to i2c device handling have been squashed in. Pantelis Antoniou (8): OF: Introduce Device Tree resolve support. OF: Introduce DT overlay support. OF: DT-Overlay configfs interface OF: platform: Add overlay bus handler of: i2c: Export single device registration method OF: i2c: Add overlay bus handler OF: spi: Add overlay bus handler OF: selftest: Add overlay self-test support. .../devicetree/dynamic-resolution-notes.txt | 25 + Documentation/devicetree/overlay-notes.txt | 187 +++++ drivers/base/platform.c | 98 ++- drivers/i2c/i2c-core.c | 186 +++-- drivers/of/Kconfig | 24 + drivers/of/Makefile | 3 + drivers/of/configfs.c | 272 +++++++ drivers/of/overlay.c | 895 +++++++++++++++++++++ drivers/of/resolver.c | 368 +++++++++ drivers/of/selftest.c | 368 +++++++++ drivers/of/testcase-data/testcases.dtsi | 1 + drivers/of/testcase-data/tests-overlay.dtsi | 125 +++ drivers/spi/spi.c | 345 +++++--- include/linux/i2c.h | 10 + include/linux/of.h | 170 ++++ 15 files changed, 2925 insertions(+), 152 deletions(-) create mode 100644 Documentation/devicetree/dynamic-resolution-notes.txt create mode 100644 Documentation/devicetree/overlay-notes.txt create mode 100644 drivers/of/configfs.c create mode 100644 drivers/of/overlay.c create mode 100644 drivers/of/resolver.c create mode 100644 drivers/of/testcase-data/tests-overlay.dtsi -- 1.7.12 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/