From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id 1600A78003C for ; Thu, 16 Nov 2023 11:46:10 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=f4FYb4CuqqcfgLSjQREOC2HuGnRXf2EGO9Dcui4CA1I=; c=relaxed/simple; d=groups.io; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding; s=20140610; t=1700135169; v=1; b=Gd1kyGtZi4cRzEV1+xJk2QiQKCbdyyUedyBo8WV7VTTnGb7opCwXJqep0mCyh1lPSiW4NzaR YpUFeNcCFQhuAKro05u8bzYRumMhuZypEmpfGtdK8sCKfuUkaCDvMlf81RfeKEDIEFztfwNKL5+ W2QAbZO3hvk8Nj/2wyXArkF0= X-Received: by 127.0.0.2 with SMTP id 4G3gYY7687511xRnPXeiVb1G; Thu, 16 Nov 2023 03:46:09 -0800 X-Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web11.4938.1700135169269849761 for ; Thu, 16 Nov 2023 03:46:09 -0800 X-Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id F3CCF1595; Thu, 16 Nov 2023 03:46:54 -0800 (PST) X-Received: from usa.arm.com (a077434.blr.arm.com [10.162.17.62]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 3F6433F6C4; Thu, 16 Nov 2023 03:46:02 -0800 (PST) From: "sahil" To: devel@edk2.groups.io Cc: Ard Biesheuvel , Leif Lindholm , Sami Mujawar , Sahil Subject: [edk2-devel] [edk2-platforms][PATCH V1 0/5] Enable non volatile storage on N1SDP Date: Thu, 16 Nov 2023 17:15:49 +0530 Message-Id: <20231116114554.4055517-1-sahil@arm.com> MIME-Version: 1.0 Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,sahil@arm.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: K52NnW74mFlfgJRVzGH7ZD3Fx7686176AA= Content-Transfer-Encoding: quoted-printable X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20140610 header.b=Gd1kyGtZ; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=arm.com (policy=none); spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io N1SDP uses an emulated variable storage on DDR memory for the variable storage. But this emulated variable storage is a volatile memory and so the values of variable cant persist on next reboot or in power cycle. In N1SDP platform, the SoC is connected to IOFPGA which has a Cadence Quad SPI (QSPI) controller. This QSPI controller manages the flash chip device (NOR Flash with 32 MB memory capacity, 4KB block size) via QSPI bus. With these changes we use this NOR flash device for persistent variable storage. Link to branch with the patches in this series - https://github.com/sah01Kaushal/edk2-platforms/tree/n1sdp_persistent_stor= age sahil (5): Silicon/ARM/NeoverseN1Soc: Enable SCP QSPI flash region Silicon/ARM/NeoverseN1Soc: NOR flash library for N1Sdp Platform/ARM/N1Sdp: NOR flash Dxe Driver for N1Sdp Platform/ARM/N1Sdp: Persistent storage for N1Sdp Platform/ARM/N1Sdp: Enable FaultTolerantWrite Dxe driver for N1Sdp Platform/ARM/N1Sdp/N1SdpPlatform.dec | 5 +- Platform/ARM/N1Sdp/N1SdpPlatform.dsc | 25 +- Platform/ARM/N1Sdp/N1SdpPlatform.fdf | 5 +- Platform/ARM/N1Sdp/Drivers/CadenceQspiDxe/CadenceQspiDxe.inf | 72 ++ Silicon/ARM/NeoverseN1Soc/Library/NorFlashLib/NorFlashLib.inf | 36 + Platform/ARM/N1Sdp/Drivers/CadenceQspiDxe/CadenceQspiReg.h | 33 + Platform/ARM/N1Sdp/Drivers/CadenceQspiDxe/NorFlash.h | 491 ++= +++++++ Silicon/ARM/NeoverseN1Soc/Include/NeoverseN1Soc.h | 6 +- Platform/ARM/N1Sdp/Drivers/CadenceQspiDxe/CadenceQspiDxe.c | 409 ++= ++++++ Platform/ARM/N1Sdp/Drivers/CadenceQspiDxe/NorFlash.c | 1100 ++= ++++++++++++++++++ Platform/ARM/N1Sdp/Drivers/CadenceQspiDxe/NorFlashFvb.c | 647 ++= ++++++++++ Silicon/ARM/NeoverseN1Soc/Library/NorFlashLib/NorFlashLib.c | 52 + Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLibMem.c | 10 +- 13 files changed, 2880 insertions(+), 11 deletions(-) create mode 100644 Platform/ARM/N1Sdp/Drivers/CadenceQspiDxe/CadenceQspi= Dxe.inf create mode 100644 Silicon/ARM/NeoverseN1Soc/Library/NorFlashLib/NorFlas= hLib.inf create mode 100644 Platform/ARM/N1Sdp/Drivers/CadenceQspiDxe/CadenceQspi= Reg.h create mode 100644 Platform/ARM/N1Sdp/Drivers/CadenceQspiDxe/NorFlash.h create mode 100644 Platform/ARM/N1Sdp/Drivers/CadenceQspiDxe/CadenceQspi= Dxe.c create mode 100644 Platform/ARM/N1Sdp/Drivers/CadenceQspiDxe/NorFlash.c create mode 100644 Platform/ARM/N1Sdp/Drivers/CadenceQspiDxe/NorFlashFvb= .c create mode 100644 Silicon/ARM/NeoverseN1Soc/Library/NorFlashLib/NorFlas= hLib.c --=20 2.25.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#111310): https://edk2.groups.io/g/devel/message/111310 Mute This Topic: https://groups.io/mt/102625035/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=-