From patchwork Tue Apr 21 18:14:58 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Atish Patra X-Patchwork-Id: 1274458 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; dmarc=fail (p=none dis=none) header.from=wdc.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=wdc.com header.i=@wdc.com header.a=rsa-sha256 header.s=dkim.wdc.com header.b=erNQq8QD; 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 496BZf0cMQz9sSJ for ; Wed, 22 Apr 2020 04:15:54 +1000 (AEST) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id B8E3581C3F; Tue, 21 Apr 2020 20:15:34 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=fail (p=none dis=none) header.from=wdc.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=wdc.com header.i=@wdc.com header.b="erNQq8QD"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 718E481A42; Tue, 21 Apr 2020 20:15:28 +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,SPF_HELO_NONE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.2 Received: from esa4.hgst.iphmx.com (esa4.hgst.iphmx.com [216.71.154.42]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id 47F1E804CD for ; Tue, 21 Apr 2020 20:15:16 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=wdc.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=prvs=37371f929=atish.patra@wdc.com DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1587492916; x=1619028916; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=kqwtNiRBDrUKljO+vBS/3BYkCi24qULD8qOuOhSGW9M=; b=erNQq8QDYSF2Aj0TXlVAexj+61N1KKfxJrl3FHkkcPeSS3IzWy8HWZ3B P3W72uKKxn9Y4cmVfCUwozeOPsJ2rlzQ7/fmwbDMJOFA80MA291880g2a QljqkkTLKoFV7Svgu0Kc1q1KQzztYcGWSCp9l3FKXMsBixQn/RQclwa9J T0FDDPra9w9i2FHcTtiCedvDeCs2mzZMyRifMPjJX9uFVHOfCTW1LAUhw N9AXcJC6tXkn2kMWHWizjDz1BUhbG/TcnbijS30qgwCPBdPvH1Q3jH+v9 S9K7UmAt2ojcW04uhWp6UstWhQPXqJ5H/XnZ6y2aV9vq84+YWu5rVO/wL Q==; IronPort-SDR: MTgJs18nzPZDqTToFeFtdbNV8vKeQbAL9JuGdiDiGzPtiVxV+/jwtKVzK+FUch/M0HIgAVgH8Z I5vGsXGB3+tpHfx0U8dsIj6Tb+TL3h+TjfCjUWm5iAxMv5R9ZxxQdoaTvFJ/p/8V2ym8mfNHBo imemS4908pvWQgYD6TZwXeMdSpPQ1WqNe/OSDhbu7y9+K/ff8cvRRsMCxPUGepEU9OyIgbf5kz TQmnfUwxim/tcG+6wE8ikUXT/FO1n9Mnvg/QpPB9FDVP1yg2ZCZ2jpH3PCK9viH5skxBcjDRvc jjc= X-IronPort-AV: E=Sophos;i="5.72,411,1580745600"; d="scan'208";a="135816938" Received: from h199-255-45-15.hgst.com (HELO uls-op-cesaep02.wdc.com) ([199.255.45.15]) by ob1.hgst.iphmx.com with ESMTP; 22 Apr 2020 02:15:14 +0800 IronPort-SDR: iPxf339vds5obq1ApgZToCGmIpJFsCTRMQyZ65G2KqToYaWqwSJjOQLInFQlPHHAlDSM/GgCmI /fGKnoqmI8s3C0JiieLmQR4r6c32BdZHM= Received: from uls-op-cesaip01.wdc.com ([10.248.3.36]) by uls-op-cesaep02.wdc.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 Apr 2020 11:05:32 -0700 IronPort-SDR: b4FBTRIn5y6hsANXTtySY3FeeHEFjN3NdU+LE8LXXLApV+MbEquIkHt6aQl+5QowtqPOVZiRjb wRgSi2M/MSUQ== WDCIronportException: Internal Received: from usa001638.ad.shared (HELO yoda.hgst.com) ([10.86.55.248]) by uls-op-cesaip01.wdc.com with ESMTP; 21 Apr 2020 11:15:15 -0700 From: Atish Patra To: u-boot@lists.denx.de Cc: Atish Patra , Anup Patel , Bin Meng , Lukas Auer , Heinrich Schuchardt , Rick Chen , palmer@dabbelt.com Subject: [PATCH v7 0/6] RISC-V DT related fixes for reserved memory & UEFI Date: Tue, 21 Apr 2020 11:14:58 -0700 Message-Id: <20200421181504.415822-1-atish.patra@wdc.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.30rc1 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.2 at phobos.denx.de X-Virus-Status: Clean This series adds few DT related fixes required for Linux EFI stub to work on RISC-V. Patch 1 adds the boot hartid property under /chosen node. The related discussion can be found here. https://patchwork.ozlabs.org/patch/1233664/ https://lists.denx.de/pipermail/u-boot/2020-March/402085.html Patch 2 fixes a generic issue in fdtdec related to reserved memory node. Patch 3,4,5 provide one of the option to update reserved-memory node for next stage. It depends on master OpenSBI branch. The other options are SBI extension and trap/emulate on PMP csr access. The detaild discussion can be found here. https://github.com/riscv/riscv-sbi-doc/pull/37 Patch 1 & 2 can be applied independently from 3 and 4. I want to keep all the patches together to provide a holistic view of changes required for RISC-V UEFI. Changes from v6->v7: 1. Reabsed on top of u-boot-riscv and added Tested-by tags. Changes from v5->v6: 1. Fixed typos in commit message and added reviewed-by tags. Changes from v4->v5: 1. Added comments for new functions. Changes from v3->v4: 1. Dropped generic efi fix patch as it is already merged. 2. Moved all the fdt fixups to a common file. 3. Addressed few nit comments. Changes from v2->v3: 1. Update the DT meant for OS if it is different from the one used by U-Boot 2. Use different FDT api to obtain "reg" address & size to honor the cell count. Changes from v1->v2: 1. Fix the issue if chosen node is not present. Changes from previous version: 1. Renamed the DT node property to "boot-hartid" from "efi-boot-hartid". 2. Changed the property type to u32 instead of u64 for RV32 compatibility. Atish Patra (6): riscv: Add boot hartid to device tree fdtdec: Fix boundary check riscv: Provide a mechanism to fix DT for reserved memory riscv: Setup reserved-memory node for FU540 riscv: Copy the reserved-memory nodes to final DT riscv: Move all fdt fixups together arch/riscv/cpu/start.S | 1 + arch/riscv/include/asm/global_data.h | 1 + arch/riscv/include/asm/u-boot-riscv.h | 2 + arch/riscv/lib/Makefile | 1 + arch/riscv/lib/asm-offsets.c | 1 + arch/riscv/lib/bootm.c | 5 - arch/riscv/lib/fdt_fixup.c | 150 ++++++++++++++++++++++++++ configs/sifive_fu540_defconfig | 1 + lib/fdtdec.c | 3 +- 9 files changed, 159 insertions(+), 6 deletions(-) create mode 100644 arch/riscv/lib/fdt_fixup.c --- 2.25.1