From patchwork Sat Sep 19 14:39:57 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Christian Lamparter X-Patchwork-Id: 1367587 X-Patchwork-Delegate: chunkeey@googlemail.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.openwrt.org (client-ip=2001:8b0:10b:1231::1; helo=merlin.infradead.org; envelope-from=openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; secure) header.d=lists.infradead.org header.i=@lists.infradead.org header.a=rsa-sha256 header.s=merlin.20170209 header.b=IwoNGTl7; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=TR5sa61L; dkim-atps=neutral Received: from merlin.infradead.org (merlin.infradead.org [IPv6:2001:8b0:10b:1231::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4BtthL1w3Fz9sTC for ; Sun, 20 Sep 2020 00:42:09 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:To:From: Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender :Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Owner; bh=VRoIhcMrO/XLse/klRzIYkKGVMHftq4CU7XZqjMbTfo=; b=IwoNGTl7Bzf1vOp+GtQ8iYlINV iGja7H5zkjyVFFjvtyYIBaJHQBIrESRNjN5JuRQeMsyrzZBEtEMyl1+JY+AuGqGcwoymz4iue4QjD eDqvVPKCTFzPYAVMjausgNiDAnHwIBgmxrGARSE2ZSPtoPO3cjgtDCSlZZFx6QMyz6/c+JpzeqKe0 PDalNosIxO7dYDlvbitAaQLF1AHidtvOD56LxWd8dsPkBcvBsX5uzg1AQf9fY3oEO7+RiBsfLdLVp BiD0B/fZESoUF7JN4ymemh+78f60n2pqAwL3S/CRVgE2c8l3lNPHLTX9yOfCXA8S3ZQyl85Guzzo3 /U/AJibg==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kJe2K-0008Lj-P0; Sat, 19 Sep 2020 14:40:24 +0000 Received: from mail-ej1-x644.google.com ([2a00:1450:4864:20::644]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kJe2D-0008Hx-CJ for openwrt-devel@lists.openwrt.org; Sat, 19 Sep 2020 14:40:18 +0000 Received: by mail-ej1-x644.google.com with SMTP id gx22so2859660ejb.5 for ; Sat, 19 Sep 2020 07:40:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=kTOoFQ4gQcDuTmAJBBKTjxxKQ+3QGu5OEt13HM9wIE4=; b=TR5sa61L2iVaowNthQmjJpj0YaXzJzVWWGZsftSjgZKFN8sN0axl4E0EIA5gdDqzjs pp0/W0G5+YpUARkGT7/rEOs74UneRzsFETIIUewKPBdS+ApCmma2o8p1Bt5/6FjvhiEX WgiUpVenK/z0SZ56ppKGM0+Tpa7GKpCSYSPd7fxzCey4TT+e/WxkjRgmUbTEtnQc/+06 l7dlVH8cU8m8cyEoH4kitsi7yK+MENgm7RIHQj3guWBKacruZlhJXAz9aGvDlEBBKoCe W8fxv1UrtNS2uZ9yvIDnSc+44veZiNIVga/p20dh04Qh+i6To4sW6erdBQQjh8J3hRmV mJOw== 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:mime-version :content-transfer-encoding; bh=kTOoFQ4gQcDuTmAJBBKTjxxKQ+3QGu5OEt13HM9wIE4=; b=EnjZsNy62ozIHoZf+qmtRcqagZXLuV5wP1xl5PXUXSaEW7XxQrstoVcNxV9NaagR5C jbPt2WdTrca+kx2XeVlirAcVuWsDov+YqpOIEorSiqH08arunmCI6ibS4XxJ/rsePMnW ewumsFa9KzOkpv+jEtFEFJFXicBLyJTtM94LVlotWi52hI3aHXJBGHtCkcNiMliRnV/n WnIFnsuQnE5pIhqfC5ESNroiR1GyJMmz78dWJgOAHRmQB1zQSzGbgR1mYAXlpQKvRW86 FJ1PIEKLHsKRcyuuyfPKZ1CLdqYWpBq1BdQ7l1azGimUAjJ99qra6Fy4Vb8aHP3xnUbP BhMA== X-Gm-Message-State: AOAM530KrJjRIuhED4IkJ9Jcl7nKmhuq0/NUztvzIr0oR5R0MqU8WXr5 dBych37np4rpj6KDTa8wOmWh98sdwhL3og== X-Google-Smtp-Source: ABdhPJw4jGDTKGtWIi5VM+zShlj6d7EPeojRpoZ2B7+orQtt3eeg/ZOjHHBX+tdWqNtT9ULKHNQcDw== X-Received: by 2002:a17:906:faec:: with SMTP id lu44mr40712889ejb.527.1600526416159; Sat, 19 Sep 2020 07:40:16 -0700 (PDT) Received: from debian64.daheim (p4fd09180.dip0.t-ipconnect.de. [79.208.145.128]) by smtp.gmail.com with ESMTPSA id s13sm1993292ejv.7.2020.09.19.07.40.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 19 Sep 2020 07:40:13 -0700 (PDT) Received: from chuck by debian64.daheim with local (Exim 4.94) (envelope-from ) id 1kJe20-000fSe-Nj; Sat, 19 Sep 2020 16:40:04 +0200 From: Christian Lamparter To: openwrt-devel@lists.openwrt.org Subject: [PATCH v4 1/8] scripts: mkits.sh make it possible to specify fdt@# Date: Sat, 19 Sep 2020 16:39:57 +0200 Message-Id: <6310f880aa209003fee9ef04add80176e249997a.1600525798.git.chunkeey@gmail.com> X-Mailer: git-send-email 2.28.0 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200919_104017_473729_6BF62ED7 X-CRM114-Status: GOOD ( 14.61 ) X-Spam-Score: -0.2 (/) X-Spam-Report: SpamAssassin version 3.4.4 on merlin.infradead.org summary: Content analysis details: (-0.2 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [2a00:1450:4864:20:0:0:0:644 listed in] [list.dnswl.org] 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider [chunkeey[at]gmail.com] -0.0 SPF_PASS SPF: sender matches SPF record -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid X-BeenThere: openwrt-devel@lists.openwrt.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: OpenWrt Development List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: rafal@milecki.pl, hauke@hauke-m.de, f.fainelli@gmail.com, chrisrblake93@gmail.com, Adrian Schmutzler Sender: "openwrt-devel" Errors-To: openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org Some bootloaders are really keen on just one special fdt in a multi-image fit image. This is a problem, because currently this is fixed to "fdt@1". This patch introduces a new device variable: DEVICE_FDT_NUM that allows to specify the right fdt number. If the value is absent "1" will be chosen. Signed-off-by: Christian Lamparter --- include/image-commands.mk | 1 + include/image.mk | 6 ++++-- scripts/mkits.sh | 12 ++++++++---- 3 files changed, 13 insertions(+), 6 deletions(-) diff --git a/include/image-commands.mk b/include/image-commands.mk index 9516801c8d..740d627fc7 100644 --- a/include/image-commands.mk +++ b/include/image-commands.mk @@ -158,6 +158,7 @@ define Build/fit -D $(DEVICE_NAME) -o $@.its -k $@ \ $(if $(word 2,$(1)),-d $(word 2,$(1))) -C $(word 1,$(1)) \ -a $(KERNEL_LOADADDR) -e $(if $(KERNEL_ENTRY),$(KERNEL_ENTRY),$(KERNEL_LOADADDR)) \ + $(if $(DEVICE_FDT_NUM),-n $(DEVICE_FDT_NUM)) \ -c $(if $(DEVICE_DTS_CONFIG),$(DEVICE_DTS_CONFIG),"config@1") \ -A $(LINUX_KARCH) -v $(LINUX_VERSION) PATH=$(LINUX_DIR)/scripts/dtc:$(PATH) mkimage -f $@.its $@.new diff --git a/include/image.mk b/include/image.mk index 703aeb6816..a1308f47ad 100644 --- a/include/image.mk +++ b/include/image.mk @@ -432,6 +432,7 @@ define Device/Init DEVICE_DTS := DEVICE_DTS_CONFIG := DEVICE_DTS_DIR := + DEVICE_FDT_NUM := SOC := BOARD_NAME := @@ -453,8 +454,9 @@ DEFAULT_DEVICE_VARS := \ DEVICE_NAME KERNEL KERNEL_INITRAMFS KERNEL_INITRAMFS_IMAGE KERNEL_SIZE \ CMDLINE UBOOTENV_IN_UBI KERNEL_IN_UBI BLOCKSIZE PAGESIZE SUBPAGESIZE \ VID_HDR_OFFSET UBINIZE_OPTS UBINIZE_PARTS MKUBIFS_OPTS DEVICE_DTS \ - DEVICE_DTS_CONFIG DEVICE_DTS_DIR SOC BOARD_NAME UIMAGE_NAME SUPPORTED_DEVICES \ - IMAGE_METADATA KERNEL_ENTRY KERNEL_LOADADDR UBOOT_PATH IMAGE_SIZE \ + DEVICE_DTS_CONFIG DEVICE_DTS_DIR DEVICE_FDT_NUM SOC BOARD_NAME \ + UIMAGE_NAME SUPPORTED_DEVICES IMAGE_METADATA KERNEL_ENTRY KERNEL_LOADADDR \ + UBOOT_PATH IMAGE_SIZE \ DEVICE_COMPAT_VERSION DEVICE_COMPAT_MESSAGE \ DEVICE_VENDOR DEVICE_MODEL DEVICE_VARIANT \ DEVICE_ALT0_VENDOR DEVICE_ALT0_MODEL DEVICE_ALT0_VARIANT \ diff --git a/scripts/mkits.sh b/scripts/mkits.sh index 468ef670e6..bb629d6fca 100755 --- a/scripts/mkits.sh +++ b/scripts/mkits.sh @@ -16,7 +16,7 @@ usage() { printf "Usage: %s -A arch -C comp -a addr -e entry" "$(basename "$0")" - printf " -v version -k kernel [-D name -d dtb] -o its_file" + printf " -v version -k kernel [-D name -n address -d dtb] -o its_file" printf "\n\t-A ==> set architecture to 'arch'" printf "\n\t-C ==> set compression type 'comp'" @@ -26,12 +26,15 @@ usage() { printf "\n\t-v ==> set kernel version to 'version'" printf "\n\t-k ==> include kernel image 'kernel'" printf "\n\t-D ==> human friendly Device Tree Blob 'name'" + printf "\n\t-n ==> fdt unit-address 'address'" printf "\n\t-d ==> include Device Tree Blob 'dtb'" printf "\n\t-o ==> create output file 'its_file'\n" exit 1 } -while getopts ":A:a:c:C:D:d:e:k:o:v:" OPTION +FDTNUM=1 + +while getopts ":A:a:c:C:D:d:e:k:n:o:v:" OPTION do case $OPTION in A ) ARCH=$OPTARG;; @@ -42,6 +45,7 @@ do d ) DTB=$OPTARG;; e ) ENTRY_ADDR=$OPTARG;; k ) KERNEL=$OPTARG;; + n ) FDTNUM=$OPTARG;; o ) OUTPUT=$OPTARG;; v ) VERSION=$OPTARG;; * ) echo "Invalid option passed to '$0' (options:$*)" @@ -61,7 +65,7 @@ ARCH_UPPER=$(echo "$ARCH" | tr '[:lower:]' '[:upper:]') # Conditionally create fdt information if [ -n "${DTB}" ]; then FDT_NODE=" - fdt@1 { + fdt@$FDTNUM { description = \"${ARCH_UPPER} OpenWrt ${DEVICE} device tree blob\"; data = /incbin/(\"${DTB}\"); type = \"flat_dt\"; @@ -75,7 +79,7 @@ if [ -n "${DTB}" ]; then }; }; " - FDT_PROP="fdt = \"fdt@1\";" + FDT_PROP="fdt = \"fdt@$FDTNUM\";" fi # Create a default, fully populated DTS file