public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [PATCH v4 00/11] ArmPkg: implement EFI memory attributes protocol
@ 2023-02-09 13:59 Ard Biesheuvel
  2023-02-09 13:59 ` [PATCH v4 01/11] ArmPkg/ArmMmuLib ARM: Remove half baked large page support Ard Biesheuvel
                   ` (11 more replies)
  0 siblings, 12 replies; 18+ messages in thread
From: Ard Biesheuvel @ 2023-02-09 13:59 UTC (permalink / raw)
  To: devel
  Cc: Ard Biesheuvel, Michael Kinney, Liming Gao, Jiewen Yao,
	Michael Kubacki, Sean Brogan, Rebecca Cran, Leif Lindholm,
	Sami Mujawar, Taylor Beebe

v4:
- major cleanup of the 32-bit ARM code
- add support for EFI_MEMORY_RP using the access flag
- enable stack guard in ArmVirtPkg (which uses EFI_MEMORY_RP)
- incorporate optimization from other series [0] to avoid splitting
  block entries unnecessarily

v3:
- fix ARM32 bug in attribute conversion
- add Liming's ack to patch #1
- include draft patch (NOT FOR MERGE) used to test the changes

v2:
- drop patch to bump exposed UEFI revision to v2.10
- add missing permitted return values to protocol definition

[0] https://edk2.groups.io/g/devel/message/99801

Cc: Michael Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Michael Kubacki <michael.kubacki@microsoft.com>
Cc: Sean Brogan <sean.brogan@microsoft.com>
Cc: Rebecca Cran <quic_rcran@quicinc.com>
Cc: Leif Lindholm <quic_llindhol@quicinc.com>
Cc: Sami Mujawar <sami.mujawar@arm.com>
Cc: Taylor Beebe <t@taylorbeebe.com>

Ard Biesheuvel (11):
  ArmPkg/ArmMmuLib ARM: Remove half baked large page support
  ArmPkg/ArmMmuLib ARM: Split off XN page descriptor bit from type field
  ArmPkg/CpuDxe ARM: Fix page-to-section attribute conversion
  ArmPkg/ArmMmuLib ARM: Isolate the access flag from AP mask
  ArmPkg/ArmMmuLib ARM: Clear individual permission bits
  ArmPkg/ArmMmuLib: Implement EFI_MEMORY_RP using access flag
  ArmVirtPkg: Enable stack guard
  ArmPkg/ArmMmuLib: Avoid splitting block entries if possible
  ArmPkg/CpuDxe: Expose unified region-to-EFI attribute conversion
  MdePkg: Add Memory Attribute Protocol definition
  ArmPkg/CpuDxe: Implement EFI memory attributes protocol

 ArmPkg/Drivers/CpuDxe/AArch64/Mmu.c              |  25 +-
 ArmPkg/Drivers/CpuDxe/Arm/Mmu.c                  |  96 +++++--
 ArmPkg/Drivers/CpuDxe/CpuDxe.c                   |   2 +
 ArmPkg/Drivers/CpuDxe/CpuDxe.h                   |  17 ++
 ArmPkg/Drivers/CpuDxe/CpuDxe.inf                 |   2 +
 ArmPkg/Drivers/CpuDxe/MemoryAttribute.c          | 271 ++++++++++++++++++++
 ArmPkg/Include/Chipset/ArmV7Mmu.h                |  88 +++----
 ArmPkg/Include/Library/ArmMmuLib.h               |  34 +++
 ArmPkg/Library/ArmLib/Arm/ArmV7Support.S         |   2 +
 ArmPkg/Library/ArmMmuLib/AArch64/ArmMmuLibCore.c |  68 ++++-
 ArmPkg/Library/ArmMmuLib/Arm/ArmMmuLibConvert.c  |   8 +-
 ArmPkg/Library/ArmMmuLib/Arm/ArmMmuLibCore.c     |   2 +-
 ArmPkg/Library/ArmMmuLib/Arm/ArmMmuLibUpdate.c   | 173 +++++++++++--
 ArmVirtPkg/ArmVirt.dsc.inc                       |   2 +
 MdePkg/Include/Protocol/MemoryAttribute.h        | 142 ++++++++++
 MdePkg/MdePkg.dec                                |   3 +
 16 files changed, 833 insertions(+), 102 deletions(-)
 create mode 100644 ArmPkg/Drivers/CpuDxe/MemoryAttribute.c
 create mode 100644 MdePkg/Include/Protocol/MemoryAttribute.h

-- 
2.39.1


^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2023-03-13 14:24 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-02-09 13:59 [PATCH v4 00/11] ArmPkg: implement EFI memory attributes protocol Ard Biesheuvel
2023-02-09 13:59 ` [PATCH v4 01/11] ArmPkg/ArmMmuLib ARM: Remove half baked large page support Ard Biesheuvel
2023-02-09 13:59 ` [PATCH v4 02/11] ArmPkg/ArmMmuLib ARM: Split off XN page descriptor bit from type field Ard Biesheuvel
2023-02-09 13:59 ` [PATCH v4 03/11] ArmPkg/CpuDxe ARM: Fix page-to-section attribute conversion Ard Biesheuvel
2023-02-09 13:59 ` [PATCH v4 04/11] ArmPkg/ArmMmuLib ARM: Isolate the access flag from AP mask Ard Biesheuvel
2023-02-09 13:59 ` [PATCH v4 05/11] ArmPkg/ArmMmuLib ARM: Clear individual permission bits Ard Biesheuvel
2023-02-09 13:59 ` [PATCH v4 06/11] ArmPkg/ArmMmuLib: Implement EFI_MEMORY_RP using access flag Ard Biesheuvel
2023-02-09 13:59 ` [PATCH v4 07/11] ArmVirtPkg: Enable stack guard Ard Biesheuvel
2023-02-09 13:59 ` [PATCH v4 08/11] ArmPkg/ArmMmuLib: Avoid splitting block entries if possible Ard Biesheuvel
2023-02-09 13:59 ` [PATCH v4 09/11] ArmPkg/CpuDxe: Expose unified region-to-EFI attribute conversion Ard Biesheuvel
2023-02-09 13:59 ` [PATCH v4 10/11] MdePkg: Add Memory Attribute Protocol definition Ard Biesheuvel
2023-02-09 13:59 ` [PATCH v4 11/11] ArmPkg/CpuDxe: Implement EFI memory attributes protocol Ard Biesheuvel
2023-02-11  0:56 ` [PATCH v4 00/11] ArmPkg: implement " Taylor Beebe
2023-02-11 10:05   ` Ard Biesheuvel
2023-03-01 20:43     ` Taylor Beebe
2023-03-01 21:57       ` Ard Biesheuvel
2023-03-08 17:24         ` Taylor Beebe
2023-03-13 14:23           ` Ard Biesheuvel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox