From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wr1-f50.google.com (mail-wr1-f50.google.com [209.85.221.50]) by mx.groups.io with SMTP id smtpd.web12.10944.1615752407321161498 for ; Sun, 14 Mar 2021 13:06:47 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@linaro.org header.s=google header.b=uXaQXR11; spf=pass (domain: linaro.org, ip: 209.85.221.50, mailfrom: etienne.carriere@linaro.org) Received: by mail-wr1-f50.google.com with SMTP id l11so7643251wrp.7 for ; Sun, 14 Mar 2021 13:06:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id; bh=PtXSUfJ2pULezZY5oKH3HEFNsbLbJtbmqV97mMD6Jv8=; b=uXaQXR11B+1R/FGF242FL9m81eqYHeoT4gfJKNh5FuAeySnGRV0ugNmxlL7KfDBgHi DHNZCv4hEj3rPVBXYCJYbsec3UsZIh7y9WEDrqbn8fCVq70nS+O7Pp72OqIOUMJQ1oro 7xOOIdJUBZJ7+fBQPbnAKgHmpuwRTax9wfIpbFj3K+6N+CSkwO1kfFwoM712p7SDvnKv qiYvZi8Zf+4LZjlSo623jDhZO5+KhvUrtpTxDytFa11/Ick0Wy83xPmrWEcSPjOq2Bma rebp5ko3txp73aw0taiBd5je3iG+7mnNhNkQB25xVhD6C/DyotAwscUeQzC6CiLEQ+ys 4dkQ== 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=PtXSUfJ2pULezZY5oKH3HEFNsbLbJtbmqV97mMD6Jv8=; b=XHFJbIJQP0e9hFI2w13200D3f7BjQtA0dnsOPLhfPRwwlFHI6q0FC8B5KUrg3ASajk oKPArLH1dDjXq+uYa7lOZIy/dteY97UPVtu8cdM8t4Ms4e8qIPIXm8Q/eQn32KscFa4p qisSxANQAVZ4D9JRuntLYkUUYR1qbMYfS14kfuAjcv7mIcDc3/RKUi6xRciLpZJBUl1x 9l7cDhAvUEV3s47yPpSWxM3uGSTGBNvOre7Dep9LHS1vjQt3PWQs+bZUQ7Ni3K75/rWp rsH4G/97i0UxRchu14DoCjUZdh/oIhW77PvaJam5ZJWd/zG2Vd51gWTFk/ZwS0ImdwXK VVCg== X-Gm-Message-State: AOAM532/pwsBpQ7bJTgWHiSNsagtsUKdvXPUzlwsbsM7X/g3LYwlWiuq LL+iFfuONTtx5R10QN+vtWF6Mmj1J381hKDK X-Google-Smtp-Source: ABdhPJxg/SREkQa7maTwK0x562F0clpbz9CtHF5Ehtwd98mc3qiFPTuxkz3zmwXfynA4UTsMsdnisQ== X-Received: by 2002:a5d:6205:: with SMTP id y5mr24013682wru.238.1615752405586; Sun, 14 Mar 2021 13:06:45 -0700 (PDT) Return-Path: Received: from lmecxl0524.lme.st.com (2a01cb058b85080038d9665c555bdad2.ipv6.abo.wanadoo.fr. [2a01:cb05:8b85:800:38d9:665c:555b:dad2]) by smtp.gmail.com with ESMTPSA id b65sm10176045wmh.4.2021.03.14.13.06.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 14 Mar 2021 13:06:45 -0700 (PDT) From: "Etienne Carriere" To: devel@edk2.groups.io Cc: Etienne Carriere Subject: [PATCH 1/5] ArmPkg/IndustryStandard: 32b/64b agnostic FF-A and Mm SVC IDs Date: Sun, 14 Mar 2021 21:06:24 +0100 Message-Id: <5a0fdcf767151d786afd8d14bff57cf6fdb8fefc.1615752383.git.etienne.carriere@linaro.org> X-Mailer: git-send-email 2.17.1 Defines ARM_SVC_ID_FFA_* and ARM_SVC_ID_SP_* identifiers for 32bit function IDs as per FF-A specification [1]. Defines also generic ARM SVC identifier macros to wrap 32bit or 64bit identifiers upon target built architecture. This will allow to factorize 64bit and 32bit in packages implementation. [1] https://developer.arm.com/documentation/den0077/latest Signed-off-by: Etienne Carriere --- ArmPkg/Include/IndustryStandard/ArmFfaSvc.h | 12 ++++++++++++ ArmPkg/Include/IndustryStandard/ArmMmSvc.h | 15 +++++++++++++++ 2 files changed, 27 insertions(+) diff --git a/ArmPkg/Include/IndustryStandard/ArmFfaSvc.h b/ArmPkg/Include/IndustryStandard/ArmFfaSvc.h index 65b8343ade..ebcb54b28b 100644 --- a/ArmPkg/Include/IndustryStandard/ArmFfaSvc.h +++ b/ArmPkg/Include/IndustryStandard/ArmFfaSvc.h @@ -17,9 +17,21 @@ #define ARM_FFA_SVC_H_ #define ARM_SVC_ID_FFA_VERSION_AARCH32 0x84000063 +#define ARM_SVC_ID_FFA_MSG_SEND_DIRECT_REQ_AARCH32 0x8400006F +#define ARM_SVC_ID_FFA_MSG_SEND_DIRECT_RESP_AARCH32 0x84000070 #define ARM_SVC_ID_FFA_MSG_SEND_DIRECT_REQ_AARCH64 0xC400006F #define ARM_SVC_ID_FFA_MSG_SEND_DIRECT_RESP_AARCH64 0xC4000070 +/* Generic IDs when using AArch32 or AArch64 execution state */ +#ifdef MDE_CPU_AARCH64 +#define ARM_SVC_ID_FFA_MSG_SEND_DIRECT_REQ ARM_SVC_ID_FFA_MSG_SEND_DIRECT_REQ_AARCH64 +#define ARM_SVC_ID_FFA_MSG_SEND_DIRECT_RESP ARM_SVC_ID_FFA_MSG_SEND_DIRECT_RESP_AARCH64 +#endif +#ifdef MDE_CPU_ARM +#define ARM_SVC_ID_FFA_MSG_SEND_DIRECT_REQ ARM_SVC_ID_FFA_MSG_SEND_DIRECT_REQ_AARCH32 +#define ARM_SVC_ID_FFA_MSG_SEND_DIRECT_RESP ARM_SVC_ID_FFA_MSG_SEND_DIRECT_RESP_AARCH32 +#endif + #define SPM_MAJOR_VERSION_FFA 1 #define SPM_MINOR_VERSION_FFA 0 diff --git a/ArmPkg/Include/IndustryStandard/ArmMmSvc.h b/ArmPkg/Include/IndustryStandard/ArmMmSvc.h index 71a5398558..14f81d2a8b 100644 --- a/ArmPkg/Include/IndustryStandard/ArmMmSvc.h +++ b/ArmPkg/Include/IndustryStandard/ArmMmSvc.h @@ -15,10 +15,25 @@ * privileged operations on its behalf. */ #define ARM_SVC_ID_SPM_VERSION_AARCH32 0x84000060 +#define ARM_SVC_ID_SP_EVENT_COMPLETE_AARCH32 0x84000061 +#define ARM_SVC_ID_SP_GET_MEM_ATTRIBUTES_AARCH32 0x84000064 +#define ARM_SVC_ID_SP_SET_MEM_ATTRIBUTES_AARCH32 0x84000065 #define ARM_SVC_ID_SP_EVENT_COMPLETE_AARCH64 0xC4000061 #define ARM_SVC_ID_SP_GET_MEM_ATTRIBUTES_AARCH64 0xC4000064 #define ARM_SVC_ID_SP_SET_MEM_ATTRIBUTES_AARCH64 0xC4000065 +/* Generic IDs when using AArch32 or AArch64 execution state */ +#ifdef MDE_CPU_AARCH64 +#define ARM_SVC_ID_SP_EVENT_COMPLETE ARM_SVC_ID_SP_EVENT_COMPLETE_AARCH64 +#define ARM_SVC_ID_SP_GET_MEM_ATTRIBUTES ARM_SVC_ID_SP_GET_MEM_ATTRIBUTES_AARCH64 +#define ARM_SVC_ID_SP_SET_MEM_ATTRIBUTES ARM_SVC_ID_SP_SET_MEM_ATTRIBUTES_AARCH64 +#endif +#ifdef MDE_CPU_ARM +#define ARM_SVC_ID_SP_EVENT_COMPLETE ARM_SVC_ID_SP_EVENT_COMPLETE_AARCH32 +#define ARM_SVC_ID_SP_GET_MEM_ATTRIBUTES ARM_SVC_ID_SP_GET_MEM_ATTRIBUTES_AARCH32 +#define ARM_SVC_ID_SP_SET_MEM_ATTRIBUTES ARM_SVC_ID_SP_SET_MEM_ATTRIBUTES_AARCH32 +#endif + #define SET_MEM_ATTR_DATA_PERM_MASK 0x3 #define SET_MEM_ATTR_DATA_PERM_SHIFT 0 #define SET_MEM_ATTR_DATA_PERM_NO_ACCESS 0 -- 2.17.1