From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=2a00:1450:4864:20::542; helo=mail-ed1-x542.google.com; envelope-from=ard.biesheuvel@linaro.org; receiver=edk2-devel@lists.01.org Received: from mail-ed1-x542.google.com (mail-ed1-x542.google.com [IPv6:2a00:1450:4864:20::542]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 8BDCB2119376C for ; Wed, 21 Nov 2018 03:58:39 -0800 (PST) Received: by mail-ed1-x542.google.com with SMTP id f23so4673025edb.3 for ; Wed, 21 Nov 2018 03:58:38 -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; bh=dV0/2LCIA96OOfhXxE1KVVcYSySjLPt8X505lIXqaDA=; b=ATeI/hXttp1ZVg3ntFj5l0lEFJN8RMTAcOGq7TvyNvNhyAuOlRiCzaFivw1+dq6G/R szTk7+fAjK3w5FLsX6LP2bwwJDzfJ+sv8Ch/U8BYTAiGK2rZdDwHkN17/QsOzIoZVvVB ybeXD/0y2ylWnGl/z+Bbu4jLd3QF6Gt0yPQFY= 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; bh=dV0/2LCIA96OOfhXxE1KVVcYSySjLPt8X505lIXqaDA=; b=pRwmLvrZ/0OOV+d+keqk+XXWwfxN4ETQF4YnElAJLscbzXy/+HusORNOVCGYDcauKc rx4poaraARGPkTvFIFUOaCjMQWGjgvOBGnWfeUzb5Xr1qTbL3w4SbfaWjp8Gd38Gaqgv GnrRLx/YFmjGjh9o4QZV7pnM2/DJWavNZmU+IDuJc0Fr3kPfbyzq1vkdgnuzG9DpOodf H+GbTMdCLD7jPy7azNOOZpZgz8WZOdDORbvkhWYW9D5g6n9Z3jVhYanQazJL0NTMlTY0 XYr9k/s5843kW871WpUUvgw/m4ZLluIuyGExutRqXlvbOwxl6v7s5cN8Vf8FciXk8ZkH Pxbw== X-Gm-Message-State: AGRZ1gL+56VEZop0Dj+gMYz20D42cO2XFL0m1OCZOjxHSP3jt+1qGVS+ NSF5NS2AF4hwzgSuCebc5jwWbC84Ls3rgg== X-Google-Smtp-Source: AJdET5dgCMq5BC9r9zoXR31C0u3xRYL+FfLddAs0zSwZ5/YIroPdWTET1dCS+QQ0Ws+CdaeYYUhfeQ== X-Received: by 2002:a17:906:4684:: with SMTP id a4-v6mr5016236ejr.24.1542801517028; Wed, 21 Nov 2018 03:58:37 -0800 (PST) Received: from mba13.wifi.ns.nl (dhcp-077-251-017-237.chello.nl. [77.251.17.237]) by smtp.gmail.com with ESMTPSA id x90sm4090716ede.35.2018.11.21.03.58.35 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 21 Nov 2018 03:58:36 -0800 (PST) From: Ard Biesheuvel To: edk2-devel@lists.01.org Cc: leif.lindholm@linaro.org, lersek@redhat.com, philmd@redhat.com, hongbo.zhang@linaro.org, nariman.poushin@linaro.org, thomas.abraham@arm.com, Ard Biesheuvel Date: Wed, 21 Nov 2018 12:58:23 +0100 Message-Id: <20181121115828.3026-1-ard.biesheuvel@linaro.org> X-Mailer: git-send-email 2.17.1 Subject: [PATCH v2 0/5] ArmPlatformPkg, ArmVirtPkg: discover NOR flash banks from DTB X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 21 Nov 2018 11:58:40 -0000 This series fixes an issue reported by Hongbo and Philippe, where ArmVirtQemuKernel will crash on an attempt to access flash bank #0, which is secure-only when running QEMU with support for EL3. So let's switch to discovering the NOR flash banks from the device tree instead. This requires some preparatory changes in the NOR flash driver to avoid having to invent GUIDs on the fly. Changes since v1: - split ArmPlatformPkg for clarity - move DT node status check into FdtClientDxe where it belongs - use correct UINT32* type for DT property values, and be pedantic about their potential misalignment when casting to UINT64* - add patch to remove the 'Guid' member from NOR_FLASH_DESCRIPTION - add some acks Ard Biesheuvel (5): ArmPlatformPkg/NorFlashDxe: prepare for devicepath format change ArmPlatformPkg/NorFlashDxe: use one GUID plus index to identify flash banks ArmVirtPkg/FdtClientDxe: take DT node 'status' properties into account ArmVirtPkg/NorFlashQemuLib: discover NOR flash banks dynamically ArmPlatformPkg/NorFlashPlatformLib: remove unused Guid member from struct .../Drivers/NorFlashDxe/NorFlashDxe.c | 15 ++-- .../Drivers/NorFlashDxe/NorFlashDxe.h | 3 + .../Include/Library/NorFlashPlatformLib.h | 1 - ArmVirtPkg/FdtClientDxe/FdtClientDxe.c | 38 +++++++-- .../Library/NorFlashQemuLib/NorFlashQemuLib.c | 78 ++++++++++++++----- .../NorFlashQemuLib/NorFlashQemuLib.inf | 12 +++ 6 files changed, 114 insertions(+), 33 deletions(-) -- 2.17.1