Re: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V8] MdePkg/Protocols: New PCI Express Platform Protocol, EFI encodings
Ashraf: This is new commit bases on original one. Please update patch title and commit message. Thanks Liming > -Original Message- > From: Javeed, Ashraf > Sent: Friday, January 10, 2020 12:00 PM > To: devel@edk2.groups.io; Javeed, Ashraf > Cc: Kinney, Michael D ; Gao, Liming > ; Ni, Ray > Subject: RE: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V8] > MdePkg/Protocols: New PCI Express Platform Protocol, EFI > encodings > > Hi, > You can also review this patch into the below edk2-staging repo:- > https://github.com/ashrafj/edk2-staging/commit/84ec9f060bab7d5ec97b36367e87124820694934 > > Thanks > Ashraf > > > -Original Message- > > From: devel@edk2.groups.io On Behalf Of Javeed, > > Ashraf > > Sent: Friday, January 10, 2020 9:24 AM > > To: devel@edk2.groups.io > > Cc: Kinney, Michael D ; Gao, Liming > > ; Ni, Ray > > Subject: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V8] > > MdePkg/Protocols: New PCI Express Platform Protocol, EFI encodings > > > > BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1954 > > > > Three interfaces added to PCI Express Platform Protocol:- > > (1) GetDevicePolicy() -> to retrieve device-specific platform policies > > (2) NotifyDeviceState() -> to notify platform about device PCI Express > > configuration state > > (3) GetPolicy() -> to retrieve platform policy about the PCI Express > > feature list > > PCI Express Override Protocol is made alias to PCI Express Platform > > Protocol. > > EFI encodings introduced for the following PCI Express features, are: > > 1. Maximum Payload Size (MPS) > > 2. Maximum Read Request Size (MRRS) > > 3. Extended Tag > > 4. Relax Order Enable > > 5. No Snoop Enable > > 6. ASPM support > > 7. Common Clock Configuration > > 8. Extended SYNC > > 9. Atomic Op > > 10. LTR Enable > > 11. PTM support > > 12. CTO support > > 13. CPM > > 14. L1 PM Substates > > > > New source files with unique definitions are: > > MdePkg/Include/Protocol/PciExpressPlatform.h, > > MdePkg/Include/Protocol/PciExpressOverride.h > > > > Signed-off-by: Ashraf Javeed > > Cc: Michael D Kinney > > Cc: Liming Gao > > Cc: Ray Ni > > --- > > > > In V8: Code Syntax correction made. > > > > In V7: Revised ECR to define additional interface GetPolicy() in the PCI > > Express > > Platform Protocol / PCI Express Override Protocol, Renamed > > EFI_PCI_EXPRESS_PLATFORM_POLICY to EFI_PCI_EXPRESS_DEVICE_POLICY, > > Removed the reserved fields from the EFI_PCI_EXPRESS_DEVICE_POLICY, added > > input parameter to give the length of input buffer in GetDevicePolicy(), and > > NotifyDeviceState(), introduced new data type > > EFI_PCI_EXPRESS_PLATFORM_POLICY for the interface GetPolicy(). > > > > In V6: renamed the protocol definition source files, remove PCD comments, > > and > > renamed NotifyDeviceConfiguration -> NotifyDeviceState > > > > In V5: Revised ECR to define new PCI Platform Protocol to support the PCI > > Express capability features:- EFI_PCI_EXPRESS_PLATFORM_PROTOCOL, > > EFI_PCI_EXPRESS_OVERRIDE_PROTOCOL. > > Added new interface -> NotifyDeviceConfiguration Added new EFI encodings / > > data types for PCIe features:- CPM, L1 PM substates. > > Enhance the definition of the PCIe feature AtomicOp to support additional > > attribute - Egress blocking of the port. > > > > In V4: Redefinition of the existing interfaces in the EFI_PCI_PLATFORM_- > > PROTOCOL2, to avoid type casting and to avoid further future change > > > > In V3: License update in the header sections of source files > > > > In V2: Correction made to header sections of source files > > --- > > MdePkg/Include/Protocol/PciExpressPlatform.h | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/MdePkg/Include/Protocol/PciExpressPlatform.h > > b/MdePkg/Include/Protocol/PciExpressPlatform.h > > index 8a28418..dc58268 100644 > > --- a/MdePkg/Include/Protocol/PciExpressPlatform.h > > +++ b/MdePkg/Include/Protocol/PciExpressPlatform.h > > @@ -643,11 +643,11 @@ typedef struct { > > **/ > > typedef > > EFI_STATUS > > -(EFIAPI * EFI_PCI_EXPRESS_GET_POLICY) { > > +(EFIAPI * EFI_PCI_EXPRESS_GET_POLICY) ( > >IN CONST EFI_PCI_EXPRESS_PLATFORM_PROTOCOL *This, > >INUINTN Size, > >IN OUTEFI_PCI_EXPRESS_PLATFORM_POLICY *PlatformPolicy > > -}; > > +); > > > > /// > > /// This protocol provides the interface between the PCI bus driver/PCI > > Host > > -- > > 2.21.0.windows.1 > > > > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#53119): https://edk2.groups.io/g/devel/message/53119 Mute This Topic: https://groups.io/mt/69594616/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V8] MdePkg/Protocols: New PCI Express Platform Protocol, EFI encodings
Hi, You can also review this patch into the below edk2-staging repo:- https://github.com/ashrafj/edk2-staging/commit/84ec9f060bab7d5ec97b36367e87124820694934 Thanks Ashraf > -Original Message- > From: devel@edk2.groups.io On Behalf Of Javeed, > Ashraf > Sent: Friday, January 10, 2020 9:24 AM > To: devel@edk2.groups.io > Cc: Kinney, Michael D ; Gao, Liming > ; Ni, Ray > Subject: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V8] > MdePkg/Protocols: New PCI Express Platform Protocol, EFI encodings > > BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1954 > > Three interfaces added to PCI Express Platform Protocol:- > (1) GetDevicePolicy() -> to retrieve device-specific platform policies > (2) NotifyDeviceState() -> to notify platform about device PCI Express > configuration state > (3) GetPolicy() -> to retrieve platform policy about the PCI Express > feature list > PCI Express Override Protocol is made alias to PCI Express Platform Protocol. > EFI encodings introduced for the following PCI Express features, are: > 1.Maximum Payload Size (MPS) > 2.Maximum Read Request Size (MRRS) > 3.Extended Tag > 4.Relax Order Enable > 5.No Snoop Enable > 6.ASPM support > 7.Common Clock Configuration > 8.Extended SYNC > 9.Atomic Op > 10. LTR Enable > 11. PTM support > 12. CTO support > 13. CPM > 14. L1 PM Substates > > New source files with unique definitions are: > MdePkg/Include/Protocol/PciExpressPlatform.h, > MdePkg/Include/Protocol/PciExpressOverride.h > > Signed-off-by: Ashraf Javeed > Cc: Michael D Kinney > Cc: Liming Gao > Cc: Ray Ni > --- > > In V8: Code Syntax correction made. > > In V7: Revised ECR to define additional interface GetPolicy() in the PCI > Express > Platform Protocol / PCI Express Override Protocol, Renamed > EFI_PCI_EXPRESS_PLATFORM_POLICY to EFI_PCI_EXPRESS_DEVICE_POLICY, > Removed the reserved fields from the EFI_PCI_EXPRESS_DEVICE_POLICY, added > input parameter to give the length of input buffer in GetDevicePolicy(), and > NotifyDeviceState(), introduced new data type > EFI_PCI_EXPRESS_PLATFORM_POLICY for the interface GetPolicy(). > > In V6: renamed the protocol definition source files, remove PCD comments, and > renamed NotifyDeviceConfiguration -> NotifyDeviceState > > In V5: Revised ECR to define new PCI Platform Protocol to support the PCI > Express capability features:- EFI_PCI_EXPRESS_PLATFORM_PROTOCOL, > EFI_PCI_EXPRESS_OVERRIDE_PROTOCOL. > Added new interface -> NotifyDeviceConfiguration Added new EFI encodings / > data types for PCIe features:- CPM, L1 PM substates. > Enhance the definition of the PCIe feature AtomicOp to support additional > attribute - Egress blocking of the port. > > In V4: Redefinition of the existing interfaces in the EFI_PCI_PLATFORM_- > PROTOCOL2, to avoid type casting and to avoid further future change > > In V3: License update in the header sections of source files > > In V2: Correction made to header sections of source files > --- > MdePkg/Include/Protocol/PciExpressPlatform.h | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/MdePkg/Include/Protocol/PciExpressPlatform.h > b/MdePkg/Include/Protocol/PciExpressPlatform.h > index 8a28418..dc58268 100644 > --- a/MdePkg/Include/Protocol/PciExpressPlatform.h > +++ b/MdePkg/Include/Protocol/PciExpressPlatform.h > @@ -643,11 +643,11 @@ typedef struct { > **/ > typedef > EFI_STATUS > -(EFIAPI * EFI_PCI_EXPRESS_GET_POLICY) { > +(EFIAPI * EFI_PCI_EXPRESS_GET_POLICY) ( >IN CONST EFI_PCI_EXPRESS_PLATFORM_PROTOCOL *This, >INUINTN Size, >IN OUTEFI_PCI_EXPRESS_PLATFORM_POLICY *PlatformPolicy > -}; > +); > > /// > /// This protocol provides the interface between the PCI bus driver/PCI Host > -- > 2.21.0.windows.1 > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#53117): https://edk2.groups.io/g/devel/message/53117 Mute This Topic: https://groups.io/mt/69594616/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V8] MdePkg/Protocols: New PCI Express Platform Protocol, EFI encodings
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1954 Three interfaces added to PCI Express Platform Protocol:- (1) GetDevicePolicy() -> to retrieve device-specific platform policies (2) NotifyDeviceState() -> to notify platform about device PCI Express configuration state (3) GetPolicy() -> to retrieve platform policy about the PCI Express feature list PCI Express Override Protocol is made alias to PCI Express Platform Protocol. EFI encodings introduced for the following PCI Express features, are: 1. Maximum Payload Size (MPS) 2. Maximum Read Request Size (MRRS) 3. Extended Tag 4. Relax Order Enable 5. No Snoop Enable 6. ASPM support 7. Common Clock Configuration 8. Extended SYNC 9. Atomic Op 10. LTR Enable 11. PTM support 12. CTO support 13. CPM 14. L1 PM Substates New source files with unique definitions are: MdePkg/Include/Protocol/PciExpressPlatform.h, MdePkg/Include/Protocol/PciExpressOverride.h Signed-off-by: Ashraf Javeed Cc: Michael D Kinney Cc: Liming Gao Cc: Ray Ni --- In V8: Code Syntax correction made. In V7: Revised ECR to define additional interface GetPolicy() in the PCI Express Platform Protocol / PCI Express Override Protocol, Renamed EFI_PCI_EXPRESS_PLATFORM_POLICY to EFI_PCI_EXPRESS_DEVICE_POLICY, Removed the reserved fields from the EFI_PCI_EXPRESS_DEVICE_POLICY, added input parameter to give the length of input buffer in GetDevicePolicy(), and NotifyDeviceState(), introduced new data type EFI_PCI_EXPRESS_PLATFORM_POLICY for the interface GetPolicy(). In V6: renamed the protocol definition source files, remove PCD comments, and renamed NotifyDeviceConfiguration -> NotifyDeviceState In V5: Revised ECR to define new PCI Platform Protocol to support the PCI Express capability features:- EFI_PCI_EXPRESS_PLATFORM_PROTOCOL, EFI_PCI_EXPRESS_OVERRIDE_PROTOCOL. Added new interface -> NotifyDeviceConfiguration Added new EFI encodings / data types for PCIe features:- CPM, L1 PM substates. Enhance the definition of the PCIe feature AtomicOp to support additional attribute - Egress blocking of the port. In V4: Redefinition of the existing interfaces in the EFI_PCI_PLATFORM_- PROTOCOL2, to avoid type casting and to avoid further future change In V3: License update in the header sections of source files In V2: Correction made to header sections of source files --- MdePkg/Include/Protocol/PciExpressPlatform.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/MdePkg/Include/Protocol/PciExpressPlatform.h b/MdePkg/Include/Protocol/PciExpressPlatform.h index 8a28418..dc58268 100644 --- a/MdePkg/Include/Protocol/PciExpressPlatform.h +++ b/MdePkg/Include/Protocol/PciExpressPlatform.h @@ -643,11 +643,11 @@ typedef struct { **/ typedef EFI_STATUS -(EFIAPI * EFI_PCI_EXPRESS_GET_POLICY) { +(EFIAPI * EFI_PCI_EXPRESS_GET_POLICY) ( IN CONST EFI_PCI_EXPRESS_PLATFORM_PROTOCOL *This, INUINTN Size, IN OUTEFI_PCI_EXPRESS_PLATFORM_POLICY *PlatformPolicy -}; +); /// /// This protocol provides the interface between the PCI bus driver/PCI Host -- 2.21.0.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#53116): https://edk2.groups.io/g/devel/message/53116 Mute This Topic: https://groups.io/mt/69594616/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-