From patchwork Sun May 9 13:20:15 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bin Meng X-Patchwork-Id: 1475954 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.denx.de (client-ip=2a01:238:438b:c500:173d:9f52:ddab:ee01; helo=phobos.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=I+P9lht7; dkim-atps=neutral Received: from phobos.denx.de (phobos.denx.de [IPv6:2a01:238:438b:c500:173d:9f52:ddab:ee01]) (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 4FdPvb60qpz9t25 for ; Sun, 9 May 2021 23:20:57 +1000 (AEST) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 9964C82B88; Sun, 9 May 2021 15:20:46 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="I+P9lht7"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 3672E82AD2; Sun, 9 May 2021 15:20:45 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de X-Spam-Level: X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,SPF_HELO_NONE autolearn=ham autolearn_force=no version=3.4.2 Received: from mail-pg1-x529.google.com (mail-pg1-x529.google.com [IPv6:2607:f8b0:4864:20::529]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id B4DF682AD2 for ; Sun, 9 May 2021 15:20:41 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=bmeng.cn@gmail.com Received: by mail-pg1-x529.google.com with SMTP id m37so11406571pgb.8 for ; Sun, 09 May 2021 06:20:41 -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=I7h4yUMJfWUUkfvlwJDJyl58yM11dgOpl4D5hwjLLQM=; b=I+P9lht7lYiEFVwrGlnm+z+dPAiGZZYuWejhKCgR2k1YNgkChi9kkpt/sROUi+zHvS 9gV/xarxzT6TakLyuf0VdePZutDq74osNEaGIgYP8gJbr0YG6BEBFnHZlUxz0vrxet6q x00vHf3QGB7A/eTW5tYlP8zb+ycxBffc7lZtGPcwLAZzR23mBxCIKlgsgQcUVbRmKsxC EbuFLC7W1vTqPf65wkIAzR1zLumoJrUrGVMeR32aPRVyPlEswTvM1u/3MCR5JwtUAb8V 5uG6yxkCrYExXGaEtvTBhHbLz742SoVWUOjMKE+zSeRqmnflgQJM5we6dA8AgEOa1uTe E2Yw== 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=I7h4yUMJfWUUkfvlwJDJyl58yM11dgOpl4D5hwjLLQM=; b=X+QLihGG3Ang6fpOyPAirpcM1kXjDX8ncgiJNkFMfRcAifsmnuPZ8tedi5PG4z7skI KX3kj3MCql9cEB13KXwsAkIe4T8PR0gVLgGHb1/EzRfx/YG/pDpU4H2ICEfvmTc9Mflk aeK5Jmxu7aUo8VdI5fdxSZPVBkOdfARlY0qjM8WNpzz3gPR+OWHh9cYeqPwOrAZG9N7H WHdzgx0TdrreTNqb+gc3clfzxJSkUcBpPOSKH7I1cCo7Ba0R/54ZbhCxiIqbzVJzFWtz pzCKg7pfEOAyh0b7e4S++38D5pdwmtBgv5kiq3JU8cDdSQlGMz5ivqXHU44NN1Y4GSTH tt9A== X-Gm-Message-State: AOAM532J9le4dDpqss0B62EtJRx+z3ZX4aq8yxRMosnJzjn+QS7SyZER pIFILiLRnpQopnVaC0T4sns= X-Google-Smtp-Source: ABdhPJzUL1ZiT3qmhsuOhNCc3HOZWJZj/CNKmICSKVMeTXJUERav8/gBMIDACxX1nRW2m1U0r6cRYg== X-Received: by 2002:a63:575a:: with SMTP id h26mr20920508pgm.35.1620566440014; Sun, 09 May 2021 06:20:40 -0700 (PDT) Received: from i9-aorus-gtx1080.localdomain (144.168.56.201.16clouds.com. [144.168.56.201]) by smtp.gmail.com with ESMTPSA id a7sm8678112pfo.211.2021.05.09.06.20.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 09 May 2021 06:20:39 -0700 (PDT) From: Bin Meng To: Simon Glass , Rick Chen , u-boot@lists.denx.de Cc: Bin Meng Subject: [PATCH v3 00/13] riscv: Switch to use binman to generate u-boot.itb Date: Sun, 9 May 2021 21:20:15 +0800 Message-Id: <20210509132028.12794-1-bmeng.cn@gmail.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.34 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.102.4 at phobos.denx.de X-Virus-Status: Clean This series updates binman to handle creation of u-boot.itb image for RISC-V boards. Azure results: PASS https://dev.azure.com/bmeng/GitHub/_build/results?buildId=360&view=results The following tests were performed: * booting qemu-riscv{32|64}_spl_defconfig on QEMU virt * booting sifive_unleashed_defconfig on QEMU sifive_u AE350 SPL defconfigs are not tested. @Rick, could you please test and report? The series is available at u-boot-x86/riscv_binman for testing. Changes in v3: - Fix the opensbi entry type in binman.dtsi - new patch: "lib: kconfig: Limit BINMAN_FDT for OF_SEPARATE or OF_EMBED" - rename the Kconfig option name to BINMAN_STANDALONE_FDT - make BINMAN_STANDALONE_FDT default y for OF_BOARD as well - reword the Kconfig option help message a little bit - update binman.rst to mention OF_BOARD or OF_PRIOR_STAGE usage - new patch: "riscv: ae350: Switch to use binman to generate u-boot.itb" - remove USE_SPL_FIT_GENERATOR in ae350_ defconfigs Changes in v2: - drop patch: "binman: test: Correct the name of 170_fit_fdt_missing_prop.dts", as it was based on a wrong version - drop patch: "makefile: Update clean rule to remove files generated by binman", as it is better to refactor binman to generate all intermediate files for Makefile to clean - drop "size = <16>" in the binman node - new patch: "binman: Support packaging U-Boot for scenarios like OF_PRIOR_STAGE" - new patch: "riscv: dts: Sort build targets in alphabetical order" - new patch: "riscv: qemu: Switch to use binman to generate u-boot.itb" - new patch: "riscv: Drop USE_SPL_FIT_GENERATOR" Bin Meng (13): common: kconfig: Correct a typo in SPL_LOAD_FIT binman: Correct '-a' description in the doc binman: Correct the comment for ATF entry type binman: test: Rename 172_fit_fdt.dts to 170_fit_fdt.dts binman: Add support for RISC-V OpenSBI fw_dynamic blob makefile: Pass OpenSBI blob to binman make rules riscv: sifive: unleashed: Switch to use binman to generate u-boot.itb lib: kconfig: Limit BINMAN_FDT for OF_SEPARATE or OF_EMBED binman: Support packaging U-Boot for scenarios like OF_BOARD or OF_PRIOR_STAGE riscv: dts: Sort build targets in alphabetical order riscv: qemu: Switch to use binman to generate u-boot.itb riscv: ae350: Switch to use binman to generate u-boot.itb riscv: Drop USE_SPL_FIT_GENERATOR Makefile | 5 +- arch/riscv/cpu/generic/Kconfig | 1 + arch/riscv/dts/Makefile | 3 +- arch/riscv/dts/ae350_32.dts | 2 + arch/riscv/dts/ae350_64.dts | 2 + arch/riscv/dts/binman.dtsi | 78 ++++++++++++++ .../dts/hifive-unleashed-a00-u-boot.dtsi | 1 + arch/riscv/dts/qemu-virt.dts | 8 ++ arch/riscv/lib/mkimage_fit_opensbi.sh | 100 ------------------ board/AndesTech/ax25-ae350/Kconfig | 1 + board/sifive/unleashed/Kconfig | 1 + common/Kconfig.boot | 5 +- configs/ae350_rv32_spl_defconfig | 1 + configs/ae350_rv32_spl_xip_defconfig | 1 + configs/ae350_rv64_spl_defconfig | 1 + configs/ae350_rv64_spl_xip_defconfig | 1 + configs/qemu-riscv32_spl_defconfig | 1 + configs/qemu-riscv64_spl_defconfig | 1 + dts/Kconfig | 18 ++++ lib/Kconfig | 2 +- tools/binman/binman.rst | 26 ++++- tools/binman/entries.rst | 13 +++ tools/binman/etype/atf_bl31.py | 2 +- tools/binman/etype/opensbi.py | 23 ++++ tools/binman/ftest.py | 17 ++- .../test/{172_fit_fdt.dts => 170_fit_fdt.dts} | 0 tools/binman/test/201_opensbi.dts | 14 +++ 27 files changed, 214 insertions(+), 114 deletions(-) create mode 100644 arch/riscv/dts/binman.dtsi create mode 100644 arch/riscv/dts/qemu-virt.dts delete mode 100755 arch/riscv/lib/mkimage_fit_opensbi.sh create mode 100644 tools/binman/etype/opensbi.py rename tools/binman/test/{172_fit_fdt.dts => 170_fit_fdt.dts} (100%) create mode 100644 tools/binman/test/201_opensbi.dts