From mboxrd@z Thu Jan 1 00:00:00 1970 From: Heinrich Schuchardt Date: Tue, 7 Apr 2020 08:41:01 +0200 Subject: [PATCH v5 0/6] RISC-V DT related fixes for reserved memory & UEFI In-Reply-To: References: <20200406204453.231945-1-atish.patra@wdc.com> Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 4/6/20 11:01 PM, Ard Biesheuvel wrote: > On Mon, 6 Apr 2020 at 22:45, Atish Patra wrote: >> >> This series adds few DT related fixes required for Linux EFI stub to work >> on RISC-V. >> > > I'm not sure how this is supposed to work, since DT reserved memory > regions are not used by EFI. If you want to reserve memory on a UEFI > system, you have to reserve it in the UEFI memory map from firmware. > The DT reserved-memory node is taken into account too late, the > /memreserve/ entries are ignored entirely. Hello Ard, thanks for reviewing. What do you mean by "The DT reserved-memory node is taken into account too late"? Cf. commit 7be64b885a36 ("cmd: bootefi: Parse reserved-memory node from DT") Best regards Heinrich > > >> 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 v4->v5: >> 1. Added comments for new functions. >> >> Changes 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 >>