From patchwork Wed Mar 3 04:36:20 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Viresh Kumar X-Patchwork-Id: 392300 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-18.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER, INCLUDES_PATCH, MAILING_LIST_MULTI, SPF_HELO_NONE, SPF_PASS, URIBL_BLOCKED, USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id DB359C433E9 for ; Wed, 3 Mar 2021 19:11:18 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 8D3D364E90 for ; Wed, 3 Mar 2021 19:11:18 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S245740AbhCCSZD (ORCPT ); Wed, 3 Mar 2021 13:25:03 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:51636 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1352986AbhCCEjf (ORCPT ); Tue, 2 Mar 2021 23:39:35 -0500 Received: from mail-pg1-x52a.google.com (mail-pg1-x52a.google.com [IPv6:2607:f8b0:4864:20::52a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 9998AC061224 for ; Tue, 2 Mar 2021 20:36:47 -0800 (PST) Received: by mail-pg1-x52a.google.com with SMTP id t25so15413381pga.2 for ; Tue, 02 Mar 2021 20:36:47 -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=wF13wHlH8AwN31lqAZwhyJR4x/IvJw4g38aibW4ph8w=; b=kt2YVe8YhX1ZsL7P4NP4KZQedLpWHJSLePnLeWPtf4k+yvekh11Fs5NNtyozcBLBig P4ID+DYf+5yacfbpwgbAWwH4twyXyVo9tNLQb1Ib1Hyb7CrnBO3mRIfIMFIsEsw07zxK aQiFp+3ftVFz/JjmYfS0TiXZmtQATqx9QwQRU5TIJuALyco9h154weomM8uvJdgimyXP OKgVxVJxVF1CCHPrjAwrHmpMGUzw53jGQJV+QQ7EcfRb2PmO/ezNRsGgmOpoCW4S26Z1 hxwvpoOaSFG3qRWqRjPliSJKdaJyYmjqGMo9z/wM4FB91G61852Zk/4gJvEBgO9gFa8g 0PNw== 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=wF13wHlH8AwN31lqAZwhyJR4x/IvJw4g38aibW4ph8w=; b=CY/m0Ifv1B0dsukrFsm3XkWGImk2a8cGYApf7Xu+lL3On1JT5ymjD4Mqvglwx2z20p EbB9xaj56c13LgfozRp3BV9XNNw20pnOzrNaAqtRHBSMnEGquFyuxGn7AkYVmmR3ked8 WH9HdjxDubiqH7M0elo9xyEe8i0lXyHPbxuR1vZ5cTdjth1Ia02Ixqn0KBQ0UzOfeMuo o3ce4VON4Ha/pKyFjtdaP9Myxy9GbU5D6jqpeqgNn1NTJXMI18RmopZlHmLY2CxkWKyp CuedIrEmJuyzKoud9w+dIYMOgH9QU9JN2l6PRhW2AbpGdyjDe6La6ruMoCfJ0pfEEJot mCFg== X-Gm-Message-State: AOAM532TOUEkGvZ3iHn0lEjHKUY35xLkFZtm4Mj7IbU1qkvC1tKutJy8 i1sWyo8GKcKH2vICe7ezHHJ5uA== X-Google-Smtp-Source: ABdhPJyY+s+tcxkVcjp260Y9EL4cXwPl0cF7o9Gz3f6DxEkZbdJFmf6Lbu1EQsH+K+Y84DPlVGp2Lg== X-Received: by 2002:a63:fd0a:: with SMTP id d10mr21030930pgh.345.1614746207216; Tue, 02 Mar 2021 20:36:47 -0800 (PST) Received: from localhost ([122.171.124.15]) by smtp.gmail.com with ESMTPSA id j125sm24146185pfd.27.2021.03.02.20.36.46 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 02 Mar 2021 20:36:46 -0800 (PST) From: Viresh Kumar To: Masahiro Yamada , Rob Herring , Frank Rowand Cc: Viresh Kumar , Vincent Guittot , David Gibson , Michal Simek , Geert Uytterhoeven , anmar.oueja@linaro.org, Bill Mills , Michal Marek , linux-kernel@vger.kernel.org, devicetree@vger.kernel.org Subject: [PATCH V9 4/4] of: unittest: Statically apply overlays using fdtoverlay Date: Wed, 3 Mar 2021 10:06:20 +0530 Message-Id: <0eab8d7d6d1b1e296691c33ac7a6502ddcc814e6.1614745266.git.viresh.kumar@linaro.org> X-Mailer: git-send-email 2.25.0.rc1.19.g042ed3e048af In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: devicetree@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 | 50 ++++++++++++++++++++++ drivers/of/unittest-data/static_base_1.dts | 4 ++ drivers/of/unittest-data/static_base_2.dts | 4 ++ 3 files changed, 58 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..f88b2f48f172 100644 --- a/drivers/of/unittest-data/Makefile +++ b/drivers/of/unittest-data/Makefile @@ -34,7 +34,57 @@ 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.dtbo \ +# overlay_bad_add_dup_prop.dtbo \ +# overlay_bad_phandle.dtbo \ +# overlay_bad_symbol.dtbo \ + +apply_static_overlay_1 := overlay_0.dtbo \ + overlay_1.dtbo \ + overlay_2.dtbo \ + overlay_3.dtbo \ + overlay_4.dtbo \ + overlay_5.dtbo \ + overlay_6.dtbo \ + overlay_7.dtbo \ + overlay_8.dtbo \ + overlay_9.dtbo \ + overlay_10.dtbo \ + overlay_11.dtbo \ + overlay_12.dtbo \ + overlay_13.dtbo \ + overlay_15.dtbo \ + overlay_gpio_01.dtbo \ + overlay_gpio_02a.dtbo \ + overlay_gpio_02b.dtbo \ + overlay_gpio_03.dtbo \ + overlay_gpio_04a.dtbo \ + overlay_gpio_04b.dtbo + +apply_static_overlay_2 := overlay.dtbo + +static_test_1-dtbs := static_base_1.dtb $(apply_static_overlay_1) +static_test_2-dtbs := static_base_2.dtb $(apply_static_overlay_2) + +dtb-$(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"