From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pl1-f177.google.com (mail-pl1-f177.google.com [209.85.214.177]) by mx.groups.io with SMTP id smtpd.web11.1681.1639590414173085728 for ; Wed, 15 Dec 2021 09:46:54 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@nuviainc-com.20210112.gappssmtp.com header.s=20210112 header.b=gVkGfj5Z; spf=pass (domain: nuviainc.com, ip: 209.85.214.177, mailfrom: rebecca@nuviainc.com) Received: by mail-pl1-f177.google.com with SMTP id u11so17100074plf.3 for ; Wed, 15 Dec 2021 09:46:54 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nuviainc-com.20210112.gappssmtp.com; s=20210112; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=ASVw3g9+5uwDfmka/jQzhFbCaBfbU8RKxDo5iMHEvZw=; b=gVkGfj5Zafh6jieRRYQDp34A58DRba5qnfxe2HmXT8WLlIc84eHfct3eCa6DTKoCtU CQ9N45I7OGb7fLvrqV3s/zPLJeMp8u4SU0KbnRCDg1Mb+Eu0Gbg6Kj1tKdOki0UC8kux jU3My/Kys6eHvc8ZLIPr4jmJdkiUPaiP6hgAAZuuqOFCSRTiX2m6fBX53f1sUJj/+wxo YpZ48YfnnBiLqYbooxHnew5xONisTT+BiZiyv45HomTIEgTM39NJuv3Xn9ikkrHNlA+d iTd92kCI541PxPqys3Bn7FM4VchuBzwNKtKIpuICK1AsEtiaOqLbx7b99lYiME/p/6Fx bbLw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=ASVw3g9+5uwDfmka/jQzhFbCaBfbU8RKxDo5iMHEvZw=; b=RplBLQLdY3Rhp6+CudbzqzJIVZSXwdwnCP3Yzx8m81TbUBRpgVUEfaPNkDIL1XjwZa um2OkE4EOGdA/kehomqj8MotZzLYiWW8IZ7ETp64Vt3cyFBKNN2azu83b+P53th5noDr TWJcTGzcMDRLg/Xn5ZyI0d6TNjPTr8wdUb2gRJOx6j2DRmBg5ZSgHgerUqCbpSxk71tV iSiL3jsWLqUWegmc5+rdajYusvJ/Oxcnmhv3gCX1gSufdE+kJnSCketJQjDvfATK15p+ xdH3OWOAWg64PW/eMOccrOV2LxjHWH/RYxCLocsHF9EvEbOPcOIqSJZi1pzYjQyD3om5 nSeQ== X-Gm-Message-State: AOAM531N+AQPyPyJi587tYNjaO4Sj5XSzAsGYOat//oUJihUUDAG6yIk XhJVugaFo7Ea8iO68e0HA+6eUJcZ3uFBhGWSnh8jKNwxDS6KhugjikmOHANCp6762RTPrLFoP0O yyL4JbwUglj2pNKgt9RlwOeML50GDdfDroOLBwPF4OuvmlPspedl/8wymY7F6isdFLKYyHw== X-Google-Smtp-Source: ABdhPJx08CY3EnO40uKhNhLqUhbMupYzCP0CePSHakQ+y5KvVkruFLC6QkVUg1XOjJ3TL2oD+6bWLA== X-Received: by 2002:a17:90b:3e8b:: with SMTP id rj11mr965936pjb.63.1639590413395; Wed, 15 Dec 2021 09:46:53 -0800 (PST) Return-Path: Received: from linbox.ba.nuviainc.com ([2601:681:4300:69e:9e7b:efff:fe2b:884c]) by smtp.gmail.com with ESMTPSA id q19sm2869977pjd.21.2021.12.15.09.46.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 15 Dec 2021 09:46:52 -0800 (PST) From: "Rebecca Cran" To: devel@edk2.groups.io, Ard Biesheuvel , Gerd Hoffmann , Samer El-Haj-Mahmoud , Leif Lindholm , Sami Mujawar Cc: Rebecca Cran Subject: [PATCH v2 0/2] ArmPkg,ArmVirtPkg: Add support EFI_MP_SERVICES_PROTOCOL on AARCH64 Date: Wed, 15 Dec 2021 10:46:42 -0700 Message-Id: <20211215174644.504-1-rebecca@nuviainc.com> X-Mailer: git-send-email 2.31.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit ArmPkg: Add Library/MpInitLib to support EFI_MP_SERVICES_PROTOCOL Changes from v1 to v2: Mask off the non-affinity bits of the MPIDR, and since cluster 0/core 0 is 0x0 set the end of list value to MAX_UINT32. Other changes based on Sami's feedback. Rebecca Cran (2): ArmPkg: Replace CoreId and ClusterId with Mpidr in ARM_CORE_INFO struct ArmPkg: Add Library/MpInitLib to support EFI_MP_SERVICES_PROTOCOL ArmPkg/ArmPkg.dec | 4 + ArmPkg/ArmPkg.dsc | 4 + ArmPkg/Drivers/CpuDxe/AArch64/Arch.c | 21 + ArmPkg/Drivers/CpuDxe/Arm/Arch.c | 21 + ArmPkg/Drivers/CpuDxe/CpuDxe.c | 2 + ArmPkg/Drivers/CpuDxe/CpuDxe.h | 10 + ArmPkg/Drivers/CpuDxe/CpuDxe.inf | 6 + ArmPkg/Drivers/CpuDxe/CpuMpInit.c | 608 ++++++++ ArmPkg/Include/Guid/ArmMpCoreInfo.h | 3 +- ArmPkg/Include/Library/ArmLib.h | 10 +- ArmPkg/Include/Library/MpInitLib.h | 366 +++++ ArmPkg/Library/MpInitLib/AArch64/MpFuncs.S | 65 + ArmPkg/Library/MpInitLib/DxeMpInitLib.inf | 53 + ArmPkg/Library/MpInitLib/DxeMpLib.c | 1477 ++++++++++++++++++++ ArmPkg/Library/MpInitLib/InternalMpInitLib.h | 359 +++++ ArmPlatformPkg/Library/ArmPlatformLibNull/ArmPlatformLibNull.c | 8 +- ArmPlatformPkg/PrePeiCore/MainMPCore.c | 2 +- ArmPlatformPkg/PrePi/MainMPCore.c | 2 +- ArmVirtPkg/ArmVirt.dsc.inc | 3 + 19 files changed, 3013 insertions(+), 11 deletions(-) create mode 100644 ArmPkg/Drivers/CpuDxe/AArch64/Arch.c create mode 100644 ArmPkg/Drivers/CpuDxe/Arm/Arch.c create mode 100644 ArmPkg/Drivers/CpuDxe/CpuMpInit.c create mode 100644 ArmPkg/Include/Library/MpInitLib.h create mode 100644 ArmPkg/Library/MpInitLib/AArch64/MpFuncs.S create mode 100644 ArmPkg/Library/MpInitLib/DxeMpInitLib.inf create mode 100644 ArmPkg/Library/MpInitLib/DxeMpLib.c create mode 100644 ArmPkg/Library/MpInitLib/InternalMpInitLib.h -- 2.31.1