Shoving everything into mdepkg to avoid a perceived dependency issue doesn't really solve the problem. If dynamictables pkg wants to be tied to an implementation of ipmi then you will have that dependency problem regardless.  If dynamic tables really wants to be the producer of SPMI then it could query information from the protocol which would allow it to scale to the 3+ implementations of ipmi I mentioned earlier (assuming the protocol definition can be agreed upon and made common). Or manageability package could be producer of the table.  Traditionally many of the ACPI tables have come from the realm of the platform because of the detailed information they require.  I don't think dynamic tables package will be able to produce all tables without more complete abstractions and dependencies. 

So yes, until there is much better alignment in uefi for ipmi support, I would prefer the pcds and all implementation details be kept in or moved back to manageability pkg.  

Thanks
Sean 



From: Attar, AbdulLateef (Abdul Lateef) <AbdulLateef.Attar@amd.com>
Sent: Monday, April 22, 2024 9:47:32 PM
To: Chang, Abner <Abner.Chang@amd.com>; Sean Brogan <spbrogan@outlook.com>; devel@edk2.groups.io <devel@edk2.groups.io>; Liming Gao <gaoliming@byosoft.com.cn>; Michael D Kinney <michael.d.kinney@intel.com>; Zhiguang Liu <zhiguang.liu@intel.com>
Cc: Chris Fernald <chris.fernald@outlook.com>
Subject: RE: [edk2-devel] [PATCH RESEND v1] MdePkg: Adds a PCD to define IPMI interface type
 

[AMD Official Use Only - General]


HI Abner,

                Moving the IPMI related PCD’s will cause additional package dependencies.

Suppose if someone wants to implement SPMI table using DynamicTablesPkg (and using this PCD);

then it will cause dependencies on ManageabilityPkg which is not accepted.

 

Thanks

AbduL

 

 

From: Chang, Abner <Abner.Chang@amd.com>
Sent: Tuesday, April 23, 2024 7:22 AM
To: Sean Brogan <spbrogan@outlook.com>; devel@edk2.groups.io; Attar, AbdulLateef (Abdul Lateef) <AbdulLateef.Attar@amd.com>; Liming Gao <gaoliming@byosoft.com.cn>; Michael D Kinney <michael.d.kinney@intel.com>; Zhiguang Liu <zhiguang.liu@intel.com>
Cc: Chris Fernald <chris.fernald@outlook.com>
Subject: RE: [edk2-devel] [PATCH RESEND v1] MdePkg: Adds a PCD to define IPMI interface type

 

[AMD Official Use Only - General]

 

Hi Sean,

I was struggling when introduce IPMI KCS base IO PCD in Mde, although it is a  industry value but seems it is fine to have it in ManageabilityPkg. How do you think if we relocate those IPMI PCDs back to ManageabilityPkg?

 

Thanks

Abner

 

 

From: Sean Brogan <spbrogan@outlook.com>
Sent: Tuesday, April 23, 2024 4:18 AM
To: devel@edk2.groups.io; Attar, AbdulLateef (Abdul Lateef) <AbdulLateef.Attar@amd.com>; Liming Gao <gaoliming@byosoft.com.cn>; Michael D Kinney <michael.d.kinney@intel.com>; Zhiguang Liu <zhiguang.liu@intel.com>
Cc: Chang, Abner <Abner.Chang@amd.com>; Chris Fernald <chris.fernald@outlook.com>
Subject: Re: [edk2-devel] [PATCH RESEND v1] MdePkg: Adds a PCD to define IPMI interface type

 

Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding.

 


This seems like a bad design to require the ipmi interface type at such a high level in the code tree.  UEFI provides plenty protocol and library abstractions for IPMI so I would really prefer not to leak this type of information into a PCD defined in MdePkg.  Happy to discuss IPMI support and I would really like to see edk2, edk2-platforms/Features/ManageabilityPkg at master · tianocore/edk2-platforms (github.com)microsoft/mu_feature_ipmi: Project Mu - Feature Repo- Firmware support for IPMI (github.com), and commercial vendors find some sort of alignment going forward as no one wins with the mess that is in the industry now. 

Thanks

Sean

 

On 4/22/2024 3:50 AM, Abdul Lateef Attar via groups.io wrote:

Gentle reminder, review please.

On 30-03-2024 10:52, Abdul Lateef Attar wrote:

Define IPMI interface type as per specification version 2.0,
section C1-1.1.

Cc: Abner Chang <abner.chang@amd.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Zhiguang Liu <zhiguang.liu@intel.com>
Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
---
  MdePkg/MdePkg.dec | 11 ++++++++++-
  1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/MdePkg/MdePkg.dec b/MdePkg/MdePkg.dec
index 0c18e1decd..396d960dca 100644
--- a/MdePkg/MdePkg.dec
+++ b/MdePkg/MdePkg.dec
@@ -9,7 +9,7 @@
  # (C) Copyright 2016 - 2021 Hewlett Packard Enterprise Development LP<BR>
  # Copyright (c) 2022, Loongson Technology Corporation Limited. All rights reserved.<BR>
  # Copyright (c) 2021 - 2022, Arm Limited. All rights reserved.<BR>
-# Copyright (C) 2023 Advanced Micro Devices, Inc. All rights reserved.<BR>
+# Copyright (C) 2023 - 2024, Advanced Micro Devices, Inc. All rights reserved.<BR>
  # Copyright (c) 2023, Ampere Computing LLC. All rights reserved.<BR>
  #
  # SPDX-License-Identifier: BSD-2-Clause-Patent
@@ -2401,6 +2401,15 @@
    # @Prompt Time-out for a response, internal
    gEfiMdePkgTokenSpaceGuid.PcdIpmiSsifResponseRetryIntervalMicrosecond|60000|UINT32|0x00000036
  +  ## Indicates IPMI Interface Type
+  # The IPMI specification defines the following interface types: (section C1-1.1)
+  # 0 - Unknown
+  # 1 - KCS     : Keyboard Controller Style
+  # 2 - SMIC    : Server Management Interface Chip
+  # 3 - BT      : Block Transfer
+  # 4 - SSIF    : SMBus System Interface
+  gEfiMdePkgTokenSpaceGuid.PcdIpmiInterfaceType|0|UINT8|0x00000038
+
  [PcdsFixedAtBuild.AARCH64, PcdsPatchableInModule.AARCH64]
    ## GUID identifying the Rng algorithm implemented by CPU instruction.
    # @Prompt CPU Rng algorithm's GUID.



_._,_._,_

Groups.io Links:

You receive all messages sent to this group.

View/Reply Online (#118125) | | Mute This Topic | New Topic
Your Subscription | Contact Group Owner | Unsubscribe [rebecca@openfw.io]

_._,_._,_