Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp1602310pxb; Thu, 28 Jan 2021 23:32:13 -0800 (PST) X-Google-Smtp-Source: ABdhPJydPexmZm3ujplY5bKH5BU2B/Il+ObZM1fb/bRNWLnyMQGnt6JcS2yk1QTx9iA9QZ1QLF8y X-Received: by 2002:a05:6402:184b:: with SMTP id v11mr3691856edy.47.1611905532914; Thu, 28 Jan 2021 23:32:12 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1611905532; cv=none; d=google.com; s=arc-20160816; b=xjY4yUfkZB6HN6nATs6qxkuaGuSfJpZPY3Rmdewwa5nj0UxXJmUm2hEJ7cEQvEhumt aZYiynegXtK1vlD0cjI4+bOFv1jQmuokwbKW2IP1iIrVPnjntNSpoNwG4fC+RhByVx3F 08dGH+cZE9GeeTqiH4OOjWJtIyP7f93tpwR6TbgwobTtkobBVwGjF6+Pmroq3kcs1NJc kj6aXm8BXnL7sH3LYwtsJRCj+M7z/b+BNJruYW++rz6tVt+JmTT5AkaocStqLkLRVhmf ObAgguzpbxyWa57NcUBwsMjOkUw5Edv+hJXG2bUeCe/II25qCvfCVKxS3sWzUoHTv54I 9RNQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=ZFJJayi+RV75ZCULMj0kJ6mO1gZLX1EFE3pZWPFttHU=; b=pIF5a5BCk1WFgxOlUOMxxE5a9Z4tkrenBRikbeseolpWCePGOxI1tpj4Ya4fB4Pjt1 UdMNv/CXW/m9X7soFr9pAWTvKMSt1pbHxSSXBqNLY+fw3nuALPJOdZV0WIFpa6KX7QCX IoqnZ1lCuKAsmzh6UkTJdVsbNC6/VzJmv3ei2EvlMnMRNhCRpKW/X8vHiflDACS+Mg1D DGvbs5Ly7WaYdLlbFV1O28Hk3zprYD4rjR0CEHiseKA6KnHnDKi4FKRchm3J4MNKpAmD z9jMCpJTo8o3VjMXEKccLy1l2JXSsro+4xkjWlcw+v+xZJVKMCFYCqiXEURQymZjQjXB VA8Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=UWnusc89; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id h4si4537481edd.105.2021.01.28.23.31.48; Thu, 28 Jan 2021 23:32:12 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=UWnusc89; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232284AbhA2H3Z (ORCPT + 99 others); Fri, 29 Jan 2021 02:29:25 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35622 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232253AbhA2H26 (ORCPT ); Fri, 29 Jan 2021 02:28:58 -0500 Received: from mail-pj1-x1029.google.com (mail-pj1-x1029.google.com [IPv6:2607:f8b0:4864:20::1029]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 63268C0617A7 for ; Thu, 28 Jan 2021 23:27:52 -0800 (PST) Received: by mail-pj1-x1029.google.com with SMTP id g15so5892218pjd.2 for ; Thu, 28 Jan 2021 23:27:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ZFJJayi+RV75ZCULMj0kJ6mO1gZLX1EFE3pZWPFttHU=; b=UWnusc89sByEY+EQQ7PwenfvS1a+eR6yhVarOTzuE4YezP3NS9cfOS1vHoIrU0ELZl +zyPGdiesHKxC+BAJjGQewOe+5gs5PTff1XujwVvHwxx2XwqHCddMYs1TOYgc97mTYZC Lt09HQpVkKJr1+n6fWszrh233w2zdtytJanXMMovQbXLuo3qd6elNeush1yr1RWS6TjE DX93oUS75mUDpQ2NA6Yyw05vXkeTOZragzZz1QOksgn73gmbD9fGfBVvbv15EbNCzX9Q 5eooAeyMLkKylmeBnxB/foem48HBcY69LGrvf6RMyMijC40W6B7JwefAWMqnsUs3QH9w sacw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=ZFJJayi+RV75ZCULMj0kJ6mO1gZLX1EFE3pZWPFttHU=; b=O6sOOgxOJC6hBFJIb0XSlQvvi6E3PWoZWmXBfWmaBvAjVs1DOTt3iX76hmRj14joPM kL6T+Od4nYDX0g62tblOWLOzioYEFPadelMw4yNMfXMWfI9lRjLvGzzREnBADrlWfnf6 TwJV1tqDoVLmDdxv86IZH+NJ1c/T+VRsm9oFcT6gInOy+evZQFt3KceCVr0kctPXXlXf 5eoSm4MjzoSbdfZy9EQmqwVUWHXr6IMK1ktUnRhuDzyAdSYvYP42agM5tum7eET1ueYr f7Or4rb7l1GKdqpFkPlkB/v3cF4Tdrkk7blvqvegozefJ9ywsZWtRdUVLiUcDpKmZDq4 IUTQ== X-Gm-Message-State: AOAM532vhdSZt+F8s33N/sKAx0mDlU/zYJStQhMnRKSgPt5pJflxfnrz jtSqpjFHbqy8a9bvljSsp9DmPw== X-Received: by 2002:a17:90b:4d0a:: with SMTP id mw10mr612660pjb.217.1611905271997; Thu, 28 Jan 2021 23:27:51 -0800 (PST) Received: from localhost ([122.172.59.240]) by smtp.gmail.com with ESMTPSA id p64sm7543889pfb.201.2021.01.28.23.27.51 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 28 Jan 2021 23:27:51 -0800 (PST) From: Viresh Kumar To: Frank Rowand , Rob Herring , Pantelis Antoniou , Masahiro Yamada Cc: Viresh Kumar , Vincent Guittot , linux-kernel@vger.kernel.org, anmar.oueja@linaro.org, Bill Mills , David Gibson , devicetree@vger.kernel.org, Michal Marek Subject: [PATCH V7 6/6] of: unittest: Statically apply overlays using fdtoverlay Date: Fri, 29 Jan 2021 12:54:10 +0530 Message-Id: <3683a542d4141cfcf9c2524a40a9ee75b657c1c2.1611904394.git.viresh.kumar@linaro.org> X-Mailer: git-send-email 2.25.0.rc1.19.g042ed3e048af In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Now that fdtoverlay is part of the kernel build, start using it to test the unitest overlays we have by applying them statically. Create two new base files static_base_1.dts and static_base_2.dts which includes other .dtsi files. Some unittest overlays deliberately contain errors that unittest checks for. These overlays will cause fdtoverlay to fail, and are thus not included for static builds. Signed-off-by: Viresh Kumar --- drivers/of/unittest-data/Makefile | 56 ++++++++++++++++++++++ drivers/of/unittest-data/static_base_1.dts | 4 ++ drivers/of/unittest-data/static_base_2.dts | 4 ++ 3 files changed, 64 insertions(+) create mode 100644 drivers/of/unittest-data/static_base_1.dts create mode 100644 drivers/of/unittest-data/static_base_2.dts diff --git a/drivers/of/unittest-data/Makefile b/drivers/of/unittest-data/Makefile index 009f4045c8e4..fc286224b2d1 100644 --- a/drivers/of/unittest-data/Makefile +++ b/drivers/of/unittest-data/Makefile @@ -34,7 +34,63 @@ DTC_FLAGS_overlay += -@ DTC_FLAGS_overlay_bad_phandle += -@ DTC_FLAGS_overlay_bad_symbol += -@ DTC_FLAGS_overlay_base += -@ +DTC_FLAGS_static_base_1 += -@ +DTC_FLAGS_static_base_2 += -@ DTC_FLAGS_testcases += -@ # suppress warnings about intentional errors DTC_FLAGS_testcases += -Wno-interrupts_property + +# Apply overlays statically with fdtoverlay. This is a build time test that +# the overlays can be applied successfully by fdtoverlay. This does not +# guarantee that the overlays can be applied successfully at run time by +# unittest, but it provides a bit of build time test coverage for those +# who do not execute unittest. +# +# The overlays are applied on top of static_base_1.dtb and static_base_2.dtb to +# create static_test_1.dtb and static_test_2.dtb. If fdtoverlay detects an +# error than the kernel build will fail. static_test_1.dtb and +# static_test_2.dtb are not consumed by unittest. +# +# Some unittest overlays deliberately contain errors that unittest checks for. +# These overlays will cause fdtoverlay to fail, and are thus not included +# in the static test: +# overlay_bad_add_dup_node.dtb \ +# overlay_bad_add_dup_prop.dtb \ +# overlay_bad_phandle.dtb \ +# overlay_bad_symbol.dtb \ + +apply_static_overlay_1 := overlay_0.dtb \ + overlay_1.dtb \ + overlay_2.dtb \ + overlay_3.dtb \ + overlay_4.dtb \ + overlay_5.dtb \ + overlay_6.dtb \ + overlay_7.dtb \ + overlay_8.dtb \ + overlay_9.dtb \ + overlay_10.dtb \ + overlay_11.dtb \ + overlay_12.dtb \ + overlay_13.dtb \ + overlay_15.dtb \ + overlay_gpio_01.dtb \ + overlay_gpio_02a.dtb \ + overlay_gpio_02b.dtb \ + overlay_gpio_03.dtb \ + overlay_gpio_04a.dtb \ + overlay_gpio_04b.dtb + +apply_static_overlay_2 := overlay.dtb + +quiet_cmd_fdtoverlay = FDTOVERLAY $@ + cmd_fdtoverlay = $(objtree)/scripts/dtc/fdtoverlay -o $@ -i $^ + +$(obj)/static_test_1.dtb: $(obj)/static_base_1.dtb $(addprefix $(obj)/,$(apply_static_overlay_1)) + $(call if_changed,fdtoverlay) + +$(obj)/static_test_2.dtb: $(obj)/static_base_2.dtb $(addprefix $(obj)/,$(apply_static_overlay_2)) + $(call if_changed,fdtoverlay) + +always-$(CONFIG_OF_OVERLAY) += static_test_1.dtb static_test_2.dtb diff --git a/drivers/of/unittest-data/static_base_1.dts b/drivers/of/unittest-data/static_base_1.dts new file mode 100644 index 000000000000..10556cb3f01f --- /dev/null +++ b/drivers/of/unittest-data/static_base_1.dts @@ -0,0 +1,4 @@ +// SPDX-License-Identifier: GPL-2.0 +/dts-v1/; + +#include "testcases_common.dtsi" diff --git a/drivers/of/unittest-data/static_base_2.dts b/drivers/of/unittest-data/static_base_2.dts new file mode 100644 index 000000000000..b0ea9504d6f3 --- /dev/null +++ b/drivers/of/unittest-data/static_base_2.dts @@ -0,0 +1,4 @@ +// SPDX-License-Identifier: GPL-2.0 +/dts-v1/; + +#include "overlay_common.dtsi" -- 2.25.0.rc1.19.g042ed3e048af