[edk2-devel] [PATCH v2 0/2] ArmPkg/ArmGicV3Dxe: fix writes to GICD_IPRIORITYR<n> when ARE enable

Quan Nguyen via groups.io quan=os.amperecomputing.com at groups.io
Wed Dec 16 13:25:19 UTC 2020


According to ARM IHI 0069F, section 11.9.18 GICD_IPRIORITYR<n>,
Interrupt Priority Registers, n = 0 - 254, when affinity routing is
enabled for the Security state of an interrupt, GICR_IPRIORITYR<n> is
used instead of GICD_IPRIORITYR<n> where n = 0 to 7 (that is, for SGIs
and PPIs).

Current ArmGicV3Dxe tries to initialize all GICD_IPRIORITYR<n> to
a default state, so it should write to GICR_IPRIORITYR<n> registers
when Affinity Routing is Enabled.

v2:
- Update Ard's comment on stack variable and FeaturePcdGet [Ard]
- Introduce new helper function to handle register discrepancy [Quan]
- Set priority using new helper function [Quan]

Quan Nguyen (2):
  ArmPkg/ArmGicLib: Add ArmGicSetInterruptPriority() helper function
  ArmPkg/ArmGicV3Dxe: Use ArmGicSetInterruptPriority() to set priority

 ArmPkg/Drivers/ArmGic/ArmGicLib.c         | 44 +++++++++++++++++++++++
 ArmPkg/Drivers/ArmGic/GicV3/ArmGicV3Dxe.c | 13 +++----
 ArmPkg/Include/Library/ArmGicLib.h        |  9 +++++
 3 files changed, 58 insertions(+), 8 deletions(-)

-- 
2.28.0



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#68962): https://edk2.groups.io/g/devel/message/68962
Mute This Topic: https://groups.io/mt/79000093/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-






More information about the edk2-devel-archive mailing list