Re: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2] MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol

2019-07-29 Thread Liming Gao
For this patch, I am OK to add it into edk2-staging/UEFI_PCI_ENHANCE-2 first, 
and for further discussion. 

Thanks
Liming
> -Original Message-
> From: Javeed, Ashraf
> Sent: Monday, July 29, 2019 10:40 PM
> To: Yao, Jiewen ; devel@edk2.groups.io; Gao, Liming 
> 
> Cc: Kinney, Michael D ; Ni, Ray 
> Subject: RE: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2] 
> MdePkg/Protocols: New interface, EFI encodings to PCI Plat
> protocol
> 
> I did discuss this option with Ray; the thing is there is already a pair of 
> protocols defined to retrieve platform policy - PCI Platform Protocol
> and its alias PCI Override Protocol; a new protocol would be third one for 
> the same purpose, to be consumed by the PCI Bus driver or PCI
> Root Bridge Resource allocation driver; it appeared better to avoid new one 
> and utilize existing one by enhancing it.
> However, I am open for further suggestions.
> Thanks
> Ashraf
> 
> > -Original Message-
> > From: Yao, Jiewen
> > Sent: Monday, July 29, 2019 5:55 PM
> > To: devel@edk2.groups.io; Yao, Jiewen ; Javeed,
> > Ashraf ; Gao, Liming 
> > Cc: Kinney, Michael D ; Ni, Ray
> > 
> > Subject: RE: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> > MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> >
> > Forgot to mention: since we want to handle device policy, another option is 
> > to
> > create PCI_DEVICE_POLICY_PROTOCOL. No need to update previous one.
> >
> > Thank you
> > Yao Jiewen
> >
> > > -Original Message-
> > > From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of
> > > Yao, Jiewen
> > > Sent: Monday, July 29, 2019 8:19 PM
> > > To: Javeed, Ashraf ; devel@edk2.groups.io;
> > > Gao, Liming 
> > > Cc: Kinney, Michael D ; Ni, Ray
> > > 
> > > Subject: Re: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> > > MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> > >
> > > I think the request makes sense.
> > >
> > > I am not sure if I understand your question on PCI attributes. It is
> > > generic concept and defined in UEFI spec. Here we are discussing
> > > device policy in PCIE spec.
> > >
> > > I checked ECR in https://bugzilla.tianocore.org/show_bug.cgi?id=1954,
> > > it defines
> > > typedef   struct {
> > >   EFI_PCI_CONF_MAX_PAYLOAD_SIZE   DeviceCtlMPS;
> > >   EFI_PCI_CONF_MAX_READ_REQ_SIZE  DeviceCtlMRRS;
> > >   EFI_PCI_CONF_EXTENDED_TAG   DeviceCtlExtTag;
> > >   EFI_PCI_CONF_RELAX_ORDERDeviceCtlRelaxOrder;
> > >   EFI_PCI_CONF_NO_SNOOP   DeviceCtlNoSnoop;
> > >   EFI_PCI_CONF_ASPM_SUPPORT   LinkCtlASPMState;
> > >   EFI_PCI_CONF_COMMON_CLOCK_CFG   LinkCtlCommonClkCfg;
> > >   EFI_PCI_CONF_EXTENDED_SYNCH LinkCtlExtSynch;
> > >   EFI_PCI_CONF_ATOMIC_OP  DeviceCtl2AtomicOp;
> > >   EFI_PCI_CONF_LTRDeviceCtl2LTR;
> > >   EFI_PCI_CONF_PTMPTMControl;
> > >   EFI_PCI_CONF_RESERVES   Reserves[117];
> > > } EFI_PCI_PLATFORM_EXTENDED_POLICY;
> > >
> > > But in below patch, it is already changed to:
> > >
> > > typedef struct {
> > >   EFI_PCI_CONF_MAX_PAYLOAD_SIZE  DeviceCtlMPS;
> > >   EFI_PCI_CONF_MAX_READ_REQ_SIZE DeviceCtlMRRS;
> > >   EFI_PCI_CONF_EXTENDED_TAG  DeviceCtlExtTag;
> > >   EFI_PCI_CONF_RELAX_ORDER   DeviceCtlRelaxOrder;
> > >   EFI_PCI_CONF_NO_SNOOP  DeviceCtlNoSnoop;
> > >   EFI_PCI_CONF_ASPM_SUPPORT  LinkCtlASPMState;
> > >   EFI_PCI_CONF_COMMON_CLOCK_CFG  LinkCtlCommonClkCfg;
> > >   EFI_PCI_CONF_EXTENDED_SYNCHLinkCtlExtSynch;
> > >   EFI_PCI_CONF_ATOMIC_OP DeviceCtl2AtomicOp;
> > >   EFI_PCI_CONF_LTR   DeviceCtl2LTR;
> > >   EFI_PCI_CONF_PTM   PTMControl;
> > >   EFI_PCI_CONF_CTO_SUPPORT   CTOsupport;
> > >   EFI_PCI_CONF_RESERVES  Reserves[116];
> > > } EFI_PCI_PLATFORM_EXTENDED_POLICY;
> > >
> > > That means, *the policy structure is changed within 1 month.*
> > >
> > > I am not sure how stable the current version is. But changing spec is
> > > time consuming.
> > >
> > > Maybe we can start with EDKII interface only.
> > > Wait for a while, to see if we need add something, then decide if
> > > there is need to add to PI sp

Re: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2] MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol

2019-07-29 Thread Javeed, Ashraf
I did discuss this option with Ray; the thing is there is already a pair of 
protocols defined to retrieve platform policy - PCI Platform Protocol and its 
alias PCI Override Protocol; a new protocol would be third one for the same 
purpose, to be consumed by the PCI Bus driver or PCI Root Bridge Resource 
allocation driver; it appeared better to avoid new one and utilize existing one 
by enhancing it.
However, I am open for further suggestions.
Thanks
Ashraf

> -Original Message-
> From: Yao, Jiewen
> Sent: Monday, July 29, 2019 5:55 PM
> To: devel@edk2.groups.io; Yao, Jiewen ; Javeed,
> Ashraf ; Gao, Liming 
> Cc: Kinney, Michael D ; Ni, Ray
> 
> Subject: RE: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> 
> Forgot to mention: since we want to handle device policy, another option is to
> create PCI_DEVICE_POLICY_PROTOCOL. No need to update previous one.
> 
> Thank you
> Yao Jiewen
> 
> > -Original Message-
> > From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of
> > Yao, Jiewen
> > Sent: Monday, July 29, 2019 8:19 PM
> > To: Javeed, Ashraf ; devel@edk2.groups.io;
> > Gao, Liming 
> > Cc: Kinney, Michael D ; Ni, Ray
> > 
> > Subject: Re: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> > MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> >
> > I think the request makes sense.
> >
> > I am not sure if I understand your question on PCI attributes. It is
> > generic concept and defined in UEFI spec. Here we are discussing
> > device policy in PCIE spec.
> >
> > I checked ECR in https://bugzilla.tianocore.org/show_bug.cgi?id=1954,
> > it defines
> > typedef struct {
> > EFI_PCI_CONF_MAX_PAYLOAD_SIZE   DeviceCtlMPS;
> > EFI_PCI_CONF_MAX_READ_REQ_SIZE  DeviceCtlMRRS;
> > EFI_PCI_CONF_EXTENDED_TAG   DeviceCtlExtTag;
> > EFI_PCI_CONF_RELAX_ORDERDeviceCtlRelaxOrder;
> > EFI_PCI_CONF_NO_SNOOP   DeviceCtlNoSnoop;
> > EFI_PCI_CONF_ASPM_SUPPORT   LinkCtlASPMState;
> > EFI_PCI_CONF_COMMON_CLOCK_CFG   LinkCtlCommonClkCfg;
> > EFI_PCI_CONF_EXTENDED_SYNCH LinkCtlExtSynch;
> > EFI_PCI_CONF_ATOMIC_OP  DeviceCtl2AtomicOp;
> > EFI_PCI_CONF_LTRDeviceCtl2LTR;
> > EFI_PCI_CONF_PTMPTMControl;
> > EFI_PCI_CONF_RESERVES   Reserves[117];
> > } EFI_PCI_PLATFORM_EXTENDED_POLICY;
> >
> > But in below patch, it is already changed to:
> >
> > typedef struct {
> >   EFI_PCI_CONF_MAX_PAYLOAD_SIZE  DeviceCtlMPS;
> >   EFI_PCI_CONF_MAX_READ_REQ_SIZE DeviceCtlMRRS;
> >   EFI_PCI_CONF_EXTENDED_TAG  DeviceCtlExtTag;
> >   EFI_PCI_CONF_RELAX_ORDER   DeviceCtlRelaxOrder;
> >   EFI_PCI_CONF_NO_SNOOP  DeviceCtlNoSnoop;
> >   EFI_PCI_CONF_ASPM_SUPPORT  LinkCtlASPMState;
> >   EFI_PCI_CONF_COMMON_CLOCK_CFG  LinkCtlCommonClkCfg;
> >   EFI_PCI_CONF_EXTENDED_SYNCHLinkCtlExtSynch;
> >   EFI_PCI_CONF_ATOMIC_OP DeviceCtl2AtomicOp;
> >   EFI_PCI_CONF_LTR   DeviceCtl2LTR;
> >   EFI_PCI_CONF_PTM   PTMControl;
> >   EFI_PCI_CONF_CTO_SUPPORT   CTOsupport;
> >   EFI_PCI_CONF_RESERVES  Reserves[116];
> > } EFI_PCI_PLATFORM_EXTENDED_POLICY;
> >
> > That means, *the policy structure is changed within 1 month.*
> >
> > I am not sure how stable the current version is. But changing spec is
> > time consuming.
> >
> > Maybe we can start with EDKII interface only.
> > Wait for a while, to see if we need add something, then decide if
> > there is need to add to PI spec.
> >
> > Thank you
> > Yao Jiewen
> >
> >
> >
> > > -Original Message-
> > > From: Javeed, Ashraf
> > > Sent: Monday, July 29, 2019 7:18 PM
> > > To: Yao, Jiewen ; devel@edk2.groups.io; Gao,
> > > Liming 
> > > Cc: Kinney, Michael D ; Ni, Ray
> > > 
> > > Subject: RE: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> > > MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> > >
> > > My response inline below...
> > >
> > > Thanks
> > > Ashraf
> > >
> > > > -Original Message-
> > > > From: Yao, Jiewen
> > > > Sent: Monday, July 29, 2019 2:26 PM
> > > > To: Javeed, Ashraf ;
> > > > devel@edk2.groups.io;
> > > 

Re: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2] MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol

2019-07-29 Thread Javeed, Ashraf
Hello Yao Jeiwen,
Thanks for reviewing in detail!

I used the PCIe attribute in the context of my ECR; say MPS is a PCI standard 
feature which has to be set to defined set of values only, thus I called it as 
its attributes.

I had updated about this latest additional PCI feature (CTO) inclusion in this 
Bugzilla feature request itself (Reference: 
https://bugzilla.tianocore.org/show_bug.cgi?id=1954#c2)

Regards
Ashraf

> -Original Message-
> From: Yao, Jiewen
> Sent: Monday, July 29, 2019 5:49 PM
> To: Javeed, Ashraf ; devel@edk2.groups.io; Gao,
> Liming 
> Cc: Kinney, Michael D ; Ni, Ray
> 
> Subject: RE: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> 
> I think the request makes sense.
> 
> I am not sure if I understand your question on PCI attributes. It is generic
> concept and defined in UEFI spec. Here we are discussing device policy in PCIE
> spec.
> 
> I checked ECR in https://bugzilla.tianocore.org/show_bug.cgi?id=1954, it
> defines
> typedef   struct {
>   EFI_PCI_CONF_MAX_PAYLOAD_SIZE   DeviceCtlMPS;
>   EFI_PCI_CONF_MAX_READ_REQ_SIZE  DeviceCtlMRRS;
>   EFI_PCI_CONF_EXTENDED_TAG   DeviceCtlExtTag;
>   EFI_PCI_CONF_RELAX_ORDERDeviceCtlRelaxOrder;
>   EFI_PCI_CONF_NO_SNOOP   DeviceCtlNoSnoop;
>   EFI_PCI_CONF_ASPM_SUPPORT   LinkCtlASPMState;
>   EFI_PCI_CONF_COMMON_CLOCK_CFG   LinkCtlCommonClkCfg;
>   EFI_PCI_CONF_EXTENDED_SYNCH LinkCtlExtSynch;
>   EFI_PCI_CONF_ATOMIC_OP  DeviceCtl2AtomicOp;
>   EFI_PCI_CONF_LTRDeviceCtl2LTR;
>   EFI_PCI_CONF_PTMPTMControl;
>   EFI_PCI_CONF_RESERVES   Reserves[117];
> } EFI_PCI_PLATFORM_EXTENDED_POLICY;
> 
> But in below patch, it is already changed to:
> 
> typedef struct {
>   EFI_PCI_CONF_MAX_PAYLOAD_SIZE  DeviceCtlMPS;
>   EFI_PCI_CONF_MAX_READ_REQ_SIZE DeviceCtlMRRS;
>   EFI_PCI_CONF_EXTENDED_TAG  DeviceCtlExtTag;
>   EFI_PCI_CONF_RELAX_ORDER   DeviceCtlRelaxOrder;
>   EFI_PCI_CONF_NO_SNOOP  DeviceCtlNoSnoop;
>   EFI_PCI_CONF_ASPM_SUPPORT  LinkCtlASPMState;
>   EFI_PCI_CONF_COMMON_CLOCK_CFG  LinkCtlCommonClkCfg;
>   EFI_PCI_CONF_EXTENDED_SYNCHLinkCtlExtSynch;
>   EFI_PCI_CONF_ATOMIC_OP DeviceCtl2AtomicOp;
>   EFI_PCI_CONF_LTR   DeviceCtl2LTR;
>   EFI_PCI_CONF_PTM   PTMControl;
>   EFI_PCI_CONF_CTO_SUPPORT   CTOsupport;
>   EFI_PCI_CONF_RESERVES  Reserves[116];
> } EFI_PCI_PLATFORM_EXTENDED_POLICY;
> 
> That means, *the policy structure is changed within 1 month.*
> 
> I am not sure how stable the current version is. But changing spec is time
> consuming.
> 
> Maybe we can start with EDKII interface only.
> Wait for a while, to see if we need add something, then decide if there is 
> need
> to add to PI spec.
> 
> Thank you
> Yao Jiewen
> 
> 
> 
> > -----Original Message-
> > From: Javeed, Ashraf
> > Sent: Monday, July 29, 2019 7:18 PM
> > To: Yao, Jiewen ; devel@edk2.groups.io; Gao,
> > Liming 
> > Cc: Kinney, Michael D ; Ni, Ray
> > 
> > Subject: RE: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> > MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> >
> > My response inline below...
> >
> > Thanks
> > Ashraf
> >
> > > -Original Message-
> > > From: Yao, Jiewen
> > > Sent: Monday, July 29, 2019 2:26 PM
> > > To: Javeed, Ashraf ; devel@edk2.groups.io;
> > Gao,
> > > Liming 
> > > Cc: Kinney, Michael D ; Ni, Ray
> > > 
> > > Subject: RE: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> > > MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> > >
> > > Oh. This patch is for staging. Not for EDKII master, right?
> > > If so, I have no concern.
> > > For the master, I think MdePkg should only include what has been defined.
> > >
> > > For this patch, I am curious on how to maintain the compatibility?
> > [Ashraf] I had discussion with Ray related to compatibility; the new
> > GUID is defined to maintain both backward and forward compatibility,
> > hence the name PCI Platform Protocol  2.
> > >
> > > For example, what happen, if PCIE 5.0 or PCIE 6.0 add new device policy?
> > [Ashraf] There is major/minor version defined in the PCI Platform
> > Protocol 2, which can be used for extending it in future if required.
> > > It seems weird to bind

Re: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2] MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol

2019-07-29 Thread Yao, Jiewen
Forgot to mention: since we want to handle device policy, another option is to 
create PCI_DEVICE_POLICY_PROTOCOL. No need to update previous one.

Thank you
Yao Jiewen

> -Original Message-
> From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of
> Yao, Jiewen
> Sent: Monday, July 29, 2019 8:19 PM
> To: Javeed, Ashraf ; devel@edk2.groups.io; Gao,
> Liming 
> Cc: Kinney, Michael D ; Ni, Ray
> 
> Subject: Re: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> 
> I think the request makes sense.
> 
> I am not sure if I understand your question on PCI attributes. It is generic
> concept and defined in UEFI spec. Here we are discussing device policy in
> PCIE spec.
> 
> I checked ECR in https://bugzilla.tianocore.org/show_bug.cgi?id=1954, it
> defines
> typedef   struct {
>   EFI_PCI_CONF_MAX_PAYLOAD_SIZE   DeviceCtlMPS;
>   EFI_PCI_CONF_MAX_READ_REQ_SIZE  DeviceCtlMRRS;
>   EFI_PCI_CONF_EXTENDED_TAG   DeviceCtlExtTag;
>   EFI_PCI_CONF_RELAX_ORDERDeviceCtlRelaxOrder;
>   EFI_PCI_CONF_NO_SNOOP   DeviceCtlNoSnoop;
>   EFI_PCI_CONF_ASPM_SUPPORT   LinkCtlASPMState;
>   EFI_PCI_CONF_COMMON_CLOCK_CFG   LinkCtlCommonClkCfg;
>   EFI_PCI_CONF_EXTENDED_SYNCH LinkCtlExtSynch;
>   EFI_PCI_CONF_ATOMIC_OP  DeviceCtl2AtomicOp;
>   EFI_PCI_CONF_LTRDeviceCtl2LTR;
>   EFI_PCI_CONF_PTMPTMControl;
>   EFI_PCI_CONF_RESERVES   Reserves[117];
> } EFI_PCI_PLATFORM_EXTENDED_POLICY;
> 
> But in below patch, it is already changed to:
> 
> typedef struct {
>   EFI_PCI_CONF_MAX_PAYLOAD_SIZE  DeviceCtlMPS;
>   EFI_PCI_CONF_MAX_READ_REQ_SIZE DeviceCtlMRRS;
>   EFI_PCI_CONF_EXTENDED_TAG  DeviceCtlExtTag;
>   EFI_PCI_CONF_RELAX_ORDER   DeviceCtlRelaxOrder;
>   EFI_PCI_CONF_NO_SNOOP  DeviceCtlNoSnoop;
>   EFI_PCI_CONF_ASPM_SUPPORT  LinkCtlASPMState;
>   EFI_PCI_CONF_COMMON_CLOCK_CFG  LinkCtlCommonClkCfg;
>   EFI_PCI_CONF_EXTENDED_SYNCHLinkCtlExtSynch;
>   EFI_PCI_CONF_ATOMIC_OP DeviceCtl2AtomicOp;
>   EFI_PCI_CONF_LTR   DeviceCtl2LTR;
>   EFI_PCI_CONF_PTM   PTMControl;
>   EFI_PCI_CONF_CTO_SUPPORT   CTOsupport;
>   EFI_PCI_CONF_RESERVES  Reserves[116];
> } EFI_PCI_PLATFORM_EXTENDED_POLICY;
> 
> That means, *the policy structure is changed within 1 month.*
> 
> I am not sure how stable the current version is. But changing spec is time
> consuming.
> 
> Maybe we can start with EDKII interface only.
> Wait for a while, to see if we need add something, then decide if there is
> need to add to PI spec.
> 
> Thank you
> Yao Jiewen
> 
> 
> 
> > -----Original Message-
> > From: Javeed, Ashraf
> > Sent: Monday, July 29, 2019 7:18 PM
> > To: Yao, Jiewen ; devel@edk2.groups.io; Gao,
> > Liming 
> > Cc: Kinney, Michael D ; Ni, Ray
> > 
> > Subject: RE: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> > MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> >
> > My response inline below...
> >
> > Thanks
> > Ashraf
> >
> > > -----Original Message-
> > > From: Yao, Jiewen
> > > Sent: Monday, July 29, 2019 2:26 PM
> > > To: Javeed, Ashraf ; devel@edk2.groups.io;
> > Gao,
> > > Liming 
> > > Cc: Kinney, Michael D ; Ni, Ray
> > > 
> > > Subject: RE: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH
> V2]
> > > MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> > >
> > > Oh. This patch is for staging. Not for EDKII master, right?
> > > If so, I have no concern.
> > > For the master, I think MdePkg should only include what has been
> defined.
> > >
> > > For this patch, I am curious on how to maintain the compatibility?
> > [Ashraf] I had discussion with Ray related to compatibility; the new GUID is
> > defined
> > to maintain both backward and forward compatibility, hence the name PCI
> > Platform
> > Protocol  2.
> > >
> > > For example, what happen, if PCIE 5.0 or PCIE 6.0 add new device policy?
> > [Ashraf] There is major/minor version defined in the PCI Platform Protocol
> 2,
> > which can
> > be used for extending it in future if required.
> > > It seems weird to bind a PI protocol to another industry standard. We
> had
> > better
> > > decouple them.
> > [Ashraf] The abstraction for the

Re: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2] MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol

2019-07-29 Thread Yao, Jiewen
I think the request makes sense.

I am not sure if I understand your question on PCI attributes. It is generic 
concept and defined in UEFI spec. Here we are discussing device policy in PCIE 
spec.

I checked ECR in https://bugzilla.tianocore.org/show_bug.cgi?id=1954, it 
defines 
typedef struct {
EFI_PCI_CONF_MAX_PAYLOAD_SIZE   DeviceCtlMPS;
EFI_PCI_CONF_MAX_READ_REQ_SIZE  DeviceCtlMRRS;
EFI_PCI_CONF_EXTENDED_TAG   DeviceCtlExtTag;
EFI_PCI_CONF_RELAX_ORDERDeviceCtlRelaxOrder;
EFI_PCI_CONF_NO_SNOOP   DeviceCtlNoSnoop;
EFI_PCI_CONF_ASPM_SUPPORT   LinkCtlASPMState;
EFI_PCI_CONF_COMMON_CLOCK_CFG   LinkCtlCommonClkCfg;
EFI_PCI_CONF_EXTENDED_SYNCH LinkCtlExtSynch;
EFI_PCI_CONF_ATOMIC_OP  DeviceCtl2AtomicOp;
EFI_PCI_CONF_LTRDeviceCtl2LTR;
EFI_PCI_CONF_PTMPTMControl;
EFI_PCI_CONF_RESERVES   Reserves[117];
} EFI_PCI_PLATFORM_EXTENDED_POLICY;

But in below patch, it is already changed to:

typedef struct {
  EFI_PCI_CONF_MAX_PAYLOAD_SIZE  DeviceCtlMPS;
  EFI_PCI_CONF_MAX_READ_REQ_SIZE DeviceCtlMRRS;
  EFI_PCI_CONF_EXTENDED_TAG  DeviceCtlExtTag;
  EFI_PCI_CONF_RELAX_ORDER   DeviceCtlRelaxOrder;
  EFI_PCI_CONF_NO_SNOOP  DeviceCtlNoSnoop;
  EFI_PCI_CONF_ASPM_SUPPORT  LinkCtlASPMState;
  EFI_PCI_CONF_COMMON_CLOCK_CFG  LinkCtlCommonClkCfg;
  EFI_PCI_CONF_EXTENDED_SYNCHLinkCtlExtSynch;
  EFI_PCI_CONF_ATOMIC_OP DeviceCtl2AtomicOp;
  EFI_PCI_CONF_LTR   DeviceCtl2LTR;
  EFI_PCI_CONF_PTM   PTMControl;
  EFI_PCI_CONF_CTO_SUPPORT   CTOsupport;
  EFI_PCI_CONF_RESERVES  Reserves[116];
} EFI_PCI_PLATFORM_EXTENDED_POLICY;

That means, *the policy structure is changed within 1 month.*

I am not sure how stable the current version is. But changing spec is time 
consuming.

Maybe we can start with EDKII interface only.
Wait for a while, to see if we need add something, then decide if there is need 
to add to PI spec.

Thank you
Yao Jiewen



> -Original Message-
> From: Javeed, Ashraf
> Sent: Monday, July 29, 2019 7:18 PM
> To: Yao, Jiewen ; devel@edk2.groups.io; Gao,
> Liming 
> Cc: Kinney, Michael D ; Ni, Ray
> 
> Subject: RE: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> 
> My response inline below...
> 
> Thanks
> Ashraf
> 
> > -Original Message-
> > From: Yao, Jiewen
> > Sent: Monday, July 29, 2019 2:26 PM
> > To: Javeed, Ashraf ; devel@edk2.groups.io;
> Gao,
> > Liming 
> > Cc: Kinney, Michael D ; Ni, Ray
> > 
> > Subject: RE: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> > MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> >
> > Oh. This patch is for staging. Not for EDKII master, right?
> > If so, I have no concern.
> > For the master, I think MdePkg should only include what has been defined.
> >
> > For this patch, I am curious on how to maintain the compatibility?
> [Ashraf] I had discussion with Ray related to compatibility; the new GUID is
> defined
> to maintain both backward and forward compatibility, hence the name PCI
> Platform
> Protocol  2.
> >
> > For example, what happen, if PCIE 5.0 or PCIE 6.0 add new device policy?
> [Ashraf] There is major/minor version defined in the PCI Platform Protocol 2,
> which can
> be used for extending it in future if required.
> > It seems weird to bind a PI protocol to another industry standard. We had
> better
> > decouple them.
> [Ashraf] The abstraction for the PCI attributes are done in similar way as it 
> is
> done in
> the existing PI spec for the EFI_PCI_PLATFORM_POLICY. Please suggest how
> to represent
> the PCI attributes defined in the EFI_PCI_PLATFORM_EXTENDED_POLICY of
> the PciPlatform2.h?
> >
> > As such, we don't need update PI spec again and again just because PCIE
> spec
> > update.
> > Thinking of SMBIOS, ACPI, ATA, SCSI, I don't believe we need update
> protocol
> > interface just because they are updated.
> [Ashraf] As I have indicated in the feature request Id 1954; the reason to
> enhance this protocol
>  is because there is no interface to obtain device specific platform policies
> from its platform firmware.
> There is a demand from Intel Server products to extend PCI standard feature
> set in the PCI Bus driver
> of the MdeModulePkg, and this protocol needs to be enhanced to
> accommodate device-specific
> platform policies which would be used directly by the PCI Bus driver.
> I strongly believe enhancing this protocol will help t

Re: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2] MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol

2019-07-29 Thread Javeed, Ashraf
My response inline below...

Thanks
Ashraf

> -Original Message-
> From: Yao, Jiewen
> Sent: Monday, July 29, 2019 2:26 PM
> To: Javeed, Ashraf ; devel@edk2.groups.io; Gao,
> Liming 
> Cc: Kinney, Michael D ; Ni, Ray
> 
> Subject: RE: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> 
> Oh. This patch is for staging. Not for EDKII master, right?
> If so, I have no concern.
> For the master, I think MdePkg should only include what has been defined.
> 
> For this patch, I am curious on how to maintain the compatibility?
[Ashraf] I had discussion with Ray related to compatibility; the new GUID is 
defined 
to maintain both backward and forward compatibility, hence the name PCI Platform
Protocol  2. 
> 
> For example, what happen, if PCIE 5.0 or PCIE 6.0 add new device policy?
[Ashraf] There is major/minor version defined in the PCI Platform Protocol 2, 
which can
be used for extending it in future if required.
> It seems weird to bind a PI protocol to another industry standard. We had 
> better
> decouple them.
[Ashraf] The abstraction for the PCI attributes are done in similar way as it 
is done in
the existing PI spec for the EFI_PCI_PLATFORM_POLICY. Please suggest how to 
represent
the PCI attributes defined in the EFI_PCI_PLATFORM_EXTENDED_POLICY of the 
PciPlatform2.h? 
> 
> As such, we don't need update PI spec again and again just because PCIE spec
> update.
> Thinking of SMBIOS, ACPI, ATA, SCSI, I don't believe we need update protocol
> interface just because they are updated.
[Ashraf] As I have indicated in the feature request Id 1954; the reason to 
enhance this protocol
 is because there is no interface to obtain device specific platform policies 
from its platform firmware.
There is a demand from Intel Server products to extend PCI standard feature set 
in the PCI Bus driver
of the MdeModulePkg, and this protocol needs to be enhanced to accommodate 
device-specific 
platform policies which would be used directly by the PCI Bus driver.
I strongly believe enhancing this protocol will help the PCI Bus driver to 
support many PCI
features seamlessly in future, without further changes to PI specification. 
Otherwise, please provide an alternative to consider the device-specific 
platform policies which the 
MdeModulePkg's PCI Bus driver can adhere to support those PCI standard features 
in future?
> 
> Thank you
> Yao Jiewen
> 
> > -Original Message-
> > From: Javeed, Ashraf
> > Sent: Monday, July 29, 2019 4:12 PM
> > To: Yao, Jiewen ; devel@edk2.groups.io; Gao,
> > Liming 
> > Cc: Kinney, Michael D ; Ni, Ray
> > 
> > Subject: RE: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> > MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> >
> > Hi Yao Jiewen,
> > Can you please elaborate your concern?
> > The PCI Platform Protocol / PCI Override Protocol are defined in PI Spec 
> > 1.7.
> > These same protocols are enhanced here.
> > The producer would be the platform firmware, and consumer would be the
> > MdeModulePkg's PCI Bus driver.
> > The detailed document is attached to Bugzilla feature request Id 1954.
> >
> > Thanks
> > Ashraf
> >
> > > -Original Message-
> > > From: Yao, Jiewen
> > > Sent: Monday, July 29, 2019 1:36 PM
> > > To: devel@edk2.groups.io; Gao, Liming ;
> > > Javeed,
> > Ashraf
> > > 
> > > Cc: Kinney, Michael D ; Ni, Ray
> > > ; Yao, Jiewen 
> > > Subject: RE: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> > > MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> > >
> > > Hi
> > > I think this policy protocol should be EDKII specific. Currently it
> > > is no in PI
> > spec.
> > > Should it be in MdeModulePkg ?
> > >
> > > Thank you
> > > Yao Jiewen
> > >
> > > > -Original Message-
> > > > From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf
> > Of
> > > > Liming Gao
> > > > Sent: Monday, July 29, 2019 3:52 PM
> > > > To: Javeed, Ashraf ; devel@edk2.groups.io
> > > > Cc: Kinney, Michael D ; Ni, Ray
> > > > 
> > > > Subject: Re: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH
> > V2]
> > > > MdePkg/Protocols: New interface, EFI encodings to PCI Plat
> > > > protocol
> > > >
> > > > Ashraf:
> > > >   For new files, please use license: SPDX-License-Identifier:
> > > > BSD-2-Clause-Patent.
> > > >
> > >

Re: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2] MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol

2019-07-29 Thread Yao, Jiewen
Oh. This patch is for staging. Not for EDKII master, right?
If so, I have no concern.
For the master, I think MdePkg should only include what has been defined.

For this patch, I am curious on how to maintain the compatibility?

For example, what happen, if PCIE 5.0 or PCIE 6.0 add new device policy?
It seems weird to bind a PI protocol to another industry standard. We had 
better decouple them.

As such, we don't need update PI spec again and again just because PCIE spec 
update.
Thinking of SMBIOS, ACPI, ATA, SCSI, I don't believe we need update protocol 
interface just because they are updated.

Thank you
Yao Jiewen

> -Original Message-
> From: Javeed, Ashraf
> Sent: Monday, July 29, 2019 4:12 PM
> To: Yao, Jiewen ; devel@edk2.groups.io; Gao,
> Liming 
> Cc: Kinney, Michael D ; Ni, Ray
> 
> Subject: RE: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> 
> Hi Yao Jiewen,
> Can you please elaborate your concern?
> The PCI Platform Protocol / PCI Override Protocol are defined in PI Spec 1.7.
> These same protocols are enhanced here.
> The producer would be the platform firmware, and consumer would be the
> MdeModulePkg's PCI Bus driver.
> The detailed document is attached to Bugzilla feature request Id 1954.
> 
> Thanks
> Ashraf
> 
> > -Original Message-
> > From: Yao, Jiewen
> > Sent: Monday, July 29, 2019 1:36 PM
> > To: devel@edk2.groups.io; Gao, Liming ; Javeed,
> Ashraf
> > 
> > Cc: Kinney, Michael D ; Ni, Ray
> > ; Yao, Jiewen 
> > Subject: RE: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> > MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> >
> > Hi
> > I think this policy protocol should be EDKII specific. Currently it is no 
> > in PI
> spec.
> > Should it be in MdeModulePkg ?
> >
> > Thank you
> > Yao Jiewen
> >
> > > -Original Message-
> > > From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf
> Of
> > > Liming Gao
> > > Sent: Monday, July 29, 2019 3:52 PM
> > > To: Javeed, Ashraf ; devel@edk2.groups.io
> > > Cc: Kinney, Michael D ; Ni, Ray
> > > 
> > > Subject: Re: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH
> V2]
> > > MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> > >
> > > Ashraf:
> > >   For new files, please use license: SPDX-License-Identifier:
> > > BSD-2-Clause-Patent.
> > >
> > >   Other change is good. Reviewed-by: Liming Gao
> 
> > >
> > > Thanks
> > > Liming
> > > >-Original Message-
> > > >From: Javeed, Ashraf
> > > >Sent: Monday, July 29, 2019 2:52 PM
> > > >To: devel@edk2.groups.io
> > > >Cc: Kinney, Michael D ; Gao, Liming
> > > >; Ni, Ray 
> > > >Subject: [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> > > MdePkg/Protocols:
> > > >New interface, EFI encodings to PCI Plat protocol
> > > >
> > > >BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1954
> > > >
> > > >New interface added to PCI Platform Protocol / PCI Override Protocol
> > > >to retrieve device-specific platform policy for the following PCI
> > > >standard features, like Maximum Payload Size (MPS), Maximum Read
> > > >Request Size (MRRS),Extended Tags, Relax Order, No-Snoop, Active
> > > >State Power Management (ASPM),Latency Time Reporting (LTR),
> AtomicOp,
> > > >Reference Clock Configuration, Extended SYNCH, PTM support, and
> > > >Completion Timeout
> > > (CTO).
> > > >New source files added with enhanced definitions are in:
> > > >MdePkg/Include/Protocol/PciPlatform2.h,
> > > >MdePkg/Include/Protocol/PciOverride2.h
> > > >
> > > >Signed-off-by: Ashraf Javeed 
> > > >Cc: Michael D Kinney 
> > > >Cc: Liming Gao 
> > > >Cc: Ray Ni 
> > > >---
> > > >
> > > >In V2: Correction made to header sections of source files
> > > >---
> > > > MdePkg/Include/Protocol/PciOverride2.h |  43
> > > >+++
> > > > MdePkg/Include/Protocol/PciPlatform2.h | 393
> > > >++
> +
> > > >++
> +
> > > >++
> +
> > > >+++

Re: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2] MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol

2019-07-29 Thread Javeed, Ashraf
Hi Yao Jiewen,
Can you please elaborate your concern?
The PCI Platform Protocol / PCI Override Protocol are defined in PI Spec 1.7. 
These same protocols are enhanced here.
The producer would be the platform firmware, and consumer would be the 
MdeModulePkg's PCI Bus driver.
The detailed document is attached to Bugzilla feature request Id 1954.

Thanks
Ashraf

> -Original Message-
> From: Yao, Jiewen
> Sent: Monday, July 29, 2019 1:36 PM
> To: devel@edk2.groups.io; Gao, Liming ; Javeed, Ashraf
> 
> Cc: Kinney, Michael D ; Ni, Ray
> ; Yao, Jiewen 
> Subject: RE: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> 
> Hi
> I think this policy protocol should be EDKII specific. Currently it is no in 
> PI spec.
> Should it be in MdeModulePkg ?
> 
> Thank you
> Yao Jiewen
> 
> > -Original Message-
> > From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of
> > Liming Gao
> > Sent: Monday, July 29, 2019 3:52 PM
> > To: Javeed, Ashraf ; devel@edk2.groups.io
> > Cc: Kinney, Michael D ; Ni, Ray
> > 
> > Subject: Re: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> > MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> >
> > Ashraf:
> >   For new files, please use license: SPDX-License-Identifier:
> > BSD-2-Clause-Patent.
> >
> >   Other change is good. Reviewed-by: Liming Gao 
> >
> > Thanks
> > Liming
> > >-Original Message-
> > >From: Javeed, Ashraf
> > >Sent: Monday, July 29, 2019 2:52 PM
> > >To: devel@edk2.groups.io
> > >Cc: Kinney, Michael D ; Gao, Liming
> > >; Ni, Ray 
> > >Subject: [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> > MdePkg/Protocols:
> > >New interface, EFI encodings to PCI Plat protocol
> > >
> > >BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1954
> > >
> > >New interface added to PCI Platform Protocol / PCI Override Protocol
> > >to retrieve device-specific platform policy for the following PCI
> > >standard features, like Maximum Payload Size (MPS), Maximum Read
> > >Request Size (MRRS),Extended Tags, Relax Order, No-Snoop, Active
> > >State Power Management (ASPM),Latency Time Reporting (LTR), AtomicOp,
> > >Reference Clock Configuration, Extended SYNCH, PTM support, and
> > >Completion Timeout
> > (CTO).
> > >New source files added with enhanced definitions are in:
> > >MdePkg/Include/Protocol/PciPlatform2.h,
> > >MdePkg/Include/Protocol/PciOverride2.h
> > >
> > >Signed-off-by: Ashraf Javeed 
> > >Cc: Michael D Kinney 
> > >Cc: Liming Gao 
> > >Cc: Ray Ni 
> > >---
> > >
> > >In V2: Correction made to header sections of source files
> > >---
> > > MdePkg/Include/Protocol/PciOverride2.h |  43
> > >+++
> > > MdePkg/Include/Protocol/PciPlatform2.h | 393
> > >+++
> > >+++
> > >+++
> > >+++
> > >+++
> > >+++
> > >+++
> > > MdePkg/MdePkg.dec  |   6 ++
> > > 3 files changed, 442 insertions(+)
> > >
> > >diff --git a/MdePkg/Include/Protocol/PciOverride2.h
> > >b/MdePkg/Include/Protocol/PciOverride2.h
> > >new file mode 100644
> > >index 00..a7f541b4c3
> > >--- /dev/null
> > >+++ b/MdePkg/Include/Protocol/PciOverride2.h
> > >@@ -0,0 +1,43 @@
> > >+/** @file
> > >+  This file declares EFI PCI Override protocol which provides the
> > >+interface
> > >between
> > >+  the PCI bus driver/PCI Host Bridge Resource Allocation driver and
> > >+ an
> > >implementation's
> > >+  driver to describe the unique features of a platform.
> > >+  This protocol is optional.
> > >+
> > >+  Copyright (c) 2019, Intel Corporation. All rights reserved.
> > >+ This program and the accompanying materials  are licensed and made
> > >+ available under the terms and conditions of the
> > BSD
> > >License
> > >+  which accompanies this distribution.  The full text of the license
> > &

Re: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2] MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol

2019-07-29 Thread Yao, Jiewen
Hi
I think this policy protocol should be EDKII specific. Currently it is no in PI 
spec.
Should it be in MdeModulePkg ?

Thank you
Yao Jiewen

> -Original Message-
> From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of
> Liming Gao
> Sent: Monday, July 29, 2019 3:52 PM
> To: Javeed, Ashraf ; devel@edk2.groups.io
> Cc: Kinney, Michael D ; Ni, Ray
> 
> Subject: Re: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> 
> Ashraf:
>   For new files, please use license: SPDX-License-Identifier:
> BSD-2-Clause-Patent.
> 
>   Other change is good. Reviewed-by: Liming Gao 
> 
> Thanks
> Liming
> >-Original Message-
> >From: Javeed, Ashraf
> >Sent: Monday, July 29, 2019 2:52 PM
> >To: devel@edk2.groups.io
> >Cc: Kinney, Michael D ; Gao, Liming
> >; Ni, Ray 
> >Subject: [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> MdePkg/Protocols:
> >New interface, EFI encodings to PCI Plat protocol
> >
> >BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1954
> >
> >New interface added to PCI Platform Protocol / PCI Override Protocol to
> >retrieve device-specific platform policy for the following PCI standard
> >features, like Maximum Payload Size (MPS), Maximum Read Request Size
> >(MRRS),Extended Tags, Relax Order, No-Snoop, Active State Power
> >Management
> >(ASPM),Latency Time Reporting (LTR), AtomicOp, Reference Clock
> >Configuration, Extended SYNCH, PTM support, and Completion Timeout
> (CTO).
> >New source files added with enhanced definitions are in:
> >MdePkg/Include/Protocol/PciPlatform2.h,
> >MdePkg/Include/Protocol/PciOverride2.h
> >
> >Signed-off-by: Ashraf Javeed 
> >Cc: Michael D Kinney 
> >Cc: Liming Gao 
> >Cc: Ray Ni 
> >---
> >
> >In V2: Correction made to header sections of source files
> >---
> > MdePkg/Include/Protocol/PciOverride2.h |  43
> >+++
> > MdePkg/Include/Protocol/PciPlatform2.h | 393
> >+++
> >+++
> >+++
> >+++
> >+++
> >+++
> >+++
> > MdePkg/MdePkg.dec  |   6 ++
> > 3 files changed, 442 insertions(+)
> >
> >diff --git a/MdePkg/Include/Protocol/PciOverride2.h
> >b/MdePkg/Include/Protocol/PciOverride2.h
> >new file mode 100644
> >index 00..a7f541b4c3
> >--- /dev/null
> >+++ b/MdePkg/Include/Protocol/PciOverride2.h
> >@@ -0,0 +1,43 @@
> >+/** @file
> >+  This file declares EFI PCI Override protocol which provides the interface
> >between
> >+  the PCI bus driver/PCI Host Bridge Resource Allocation driver and an
> >implementation's
> >+  driver to describe the unique features of a platform.
> >+  This protocol is optional.
> >+
> >+  Copyright (c) 2019, Intel Corporation. All rights reserved.
> >+  This program and the accompanying materials
> >+  are licensed and made available under the terms and conditions of the
> BSD
> >License
> >+  which accompanies this distribution.  The full text of the license may
> be
> >found at
> >+  http://opensource.org/licenses/bsd-license.php
> >+
> >+  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS
> IS"
> >BASIS,
> >+  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
> >EXPRESS OR IMPLIED.
> >+
> >+
> >+**/
> >+
> >+#ifndef _PCI_OVERRIDE2_H_
> >+#define _PCI_OVERRIDE2_H_
> >+
> >+///
> >+/// EFI_PCI_OVERRIDE_PROTOCOL has the same structure with
> >EFI_PCI_PLATFORM_PROTOCOL
> >+///
> >+#include 
> >+
> >+///
> >+/// Global ID for the EFI_PCI_OVERRIDE_PROTOCOL
> >+///
> >+#define EFI_PCI_OVERRIDE2_GUID \
> >+  { \
> >+0xb9d5ea1, 0x66cb, 0x4546, {0xb0, 0xbb, 0x5c, 0x6d, 0xae, 0xd9,
> 0x42, 0x47}
> >\
> >+  }
> >+
> >+///
> >+/// Declaration for EFI_PCI_OVERRIDE_PROTOCOL
> >+///
> >+typedef EFI_PCI_PLATFORM_PROTOCOL2
> EFI_PCI_OVERRIDE_PROTOCOL2;
> >+
> >+
> >+extern EFI_GUID   gEfiPciOverrideProtocol2Guid;
> >+
> >+#endif
> >diff --git a/MdePkg/Include/Protocol/PciPlatform2.h
> >b/MdePkg/Include/Protocol/Pc

Re: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2] MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol

2019-07-29 Thread Liming Gao
Ashraf:
  For new files, please use license: SPDX-License-Identifier: 
BSD-2-Clause-Patent. 

  Other change is good. Reviewed-by: Liming Gao 

Thanks
Liming
>-Original Message-
>From: Javeed, Ashraf
>Sent: Monday, July 29, 2019 2:52 PM
>To: devel@edk2.groups.io
>Cc: Kinney, Michael D ; Gao, Liming
>; Ni, Ray 
>Subject: [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2] MdePkg/Protocols:
>New interface, EFI encodings to PCI Plat protocol
>
>BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1954
>
>New interface added to PCI Platform Protocol / PCI Override Protocol to
>retrieve device-specific platform policy for the following PCI standard
>features, like Maximum Payload Size (MPS), Maximum Read Request Size
>(MRRS),Extended Tags, Relax Order, No-Snoop, Active State Power
>Management
>(ASPM),Latency Time Reporting (LTR), AtomicOp, Reference Clock
>Configuration, Extended SYNCH, PTM support, and Completion Timeout (CTO).
>New source files added with enhanced definitions are in:
>MdePkg/Include/Protocol/PciPlatform2.h,
>MdePkg/Include/Protocol/PciOverride2.h
>
>Signed-off-by: Ashraf Javeed 
>Cc: Michael D Kinney 
>Cc: Liming Gao 
>Cc: Ray Ni 
>---
>
>In V2: Correction made to header sections of source files
>---
> MdePkg/Include/Protocol/PciOverride2.h |  43
>+++
> MdePkg/Include/Protocol/PciPlatform2.h | 393
>+++
>+++
>+++
>+++
>+++
>+++
>+++
> MdePkg/MdePkg.dec  |   6 ++
> 3 files changed, 442 insertions(+)
>
>diff --git a/MdePkg/Include/Protocol/PciOverride2.h
>b/MdePkg/Include/Protocol/PciOverride2.h
>new file mode 100644
>index 00..a7f541b4c3
>--- /dev/null
>+++ b/MdePkg/Include/Protocol/PciOverride2.h
>@@ -0,0 +1,43 @@
>+/** @file
>+  This file declares EFI PCI Override protocol which provides the interface
>between
>+  the PCI bus driver/PCI Host Bridge Resource Allocation driver and an
>implementation's
>+  driver to describe the unique features of a platform.
>+  This protocol is optional.
>+
>+  Copyright (c) 2019, Intel Corporation. All rights reserved.
>+  This program and the accompanying materials
>+  are licensed and made available under the terms and conditions of the BSD
>License
>+  which accompanies this distribution.  The full text of the license may be
>found at
>+  http://opensource.org/licenses/bsd-license.php
>+
>+  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
>BASIS,
>+  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
>EXPRESS OR IMPLIED.
>+
>+
>+**/
>+
>+#ifndef _PCI_OVERRIDE2_H_
>+#define _PCI_OVERRIDE2_H_
>+
>+///
>+/// EFI_PCI_OVERRIDE_PROTOCOL has the same structure with
>EFI_PCI_PLATFORM_PROTOCOL
>+///
>+#include 
>+
>+///
>+/// Global ID for the EFI_PCI_OVERRIDE_PROTOCOL
>+///
>+#define EFI_PCI_OVERRIDE2_GUID \
>+  { \
>+0xb9d5ea1, 0x66cb, 0x4546, {0xb0, 0xbb, 0x5c, 0x6d, 0xae, 0xd9, 0x42, 
>0x47}
>\
>+  }
>+
>+///
>+/// Declaration for EFI_PCI_OVERRIDE_PROTOCOL
>+///
>+typedef EFI_PCI_PLATFORM_PROTOCOL2 EFI_PCI_OVERRIDE_PROTOCOL2;
>+
>+
>+extern EFI_GUID   gEfiPciOverrideProtocol2Guid;
>+
>+#endif
>diff --git a/MdePkg/Include/Protocol/PciPlatform2.h
>b/MdePkg/Include/Protocol/PciPlatform2.h
>new file mode 100644
>index 00..717938e68d
>--- /dev/null
>+++ b/MdePkg/Include/Protocol/PciPlatform2.h
>@@ -0,0 +1,393 @@
>+/** @file
>+  This file declares PCI Platform Protocol that provide the interface between
>+  the PCI bus driver/PCI Host Bridge Resource Allocation driver and a
>platform-specific
>+  driver to describe the unique features of a platform.
>+  This protocol is optional.
>+
>+Copyright (c) 2019, Intel Corporation. All rights reserved.
>+This program and the accompanying materials are licensed and made
>available under
>+the terms and conditions of the BSD License that accompanies this
>distribution.
>+The full text of the license may be found at
>+http://opensource.org/licenses/bsd-license.php.
>+
>+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
>BASIS,
>+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
>EXPRESS OR IMPLIED.
>+
>+
>+**/
>+
>+#ifndef _PCI_PLATFORM2_H_
>+#define _PCI_PLATFORM2_H_
>+
>+///
>+/// This file must be included because the EFI_PCI_PLATFORM_PROTOCOL2
>uses
>+/// EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PHASE.
>+///
>+#include 
>+
>+///
>+/// Reuse the existing definition to maintain backward compatibility
>+///
>+#include 
>+
>+///
>+/// Global ID for the EFI_PCI_PLATFORM_PROTOCOL2.
>+///
>+#define EFI_PCI_PLATFORM_PROTOCOL2_GUID \
>+  { \
>+0x787b0367, 0xa945, 0x4d60, {0x8d, 0x34, 0xb9, 0xd1, 0x88, 0xd2, 0xd0,
>0xb6} \
>+  }
>+
>+///
>+/// 

Re: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2] MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol

2019-07-29 Thread Javeed, Ashraf
Remote repository:- https://github.com/ashrafj/edk2-staging
This commit:- 
https://github.com/ashrafj/edk2-staging/commit/be59cc61f29a67d1bc28a768f3673143b02a7a21

Thanks
Ashraf

> -Original Message-
> From: devel@edk2.groups.io  On Behalf Of Javeed,
> Ashraf
> Sent: Monday, July 29, 2019 12:22 PM
> To: devel@edk2.groups.io
> Cc: Kinney, Michael D ; Gao, Liming
> ; Ni, Ray 
> Subject: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> 
> BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1954
> 
> New interface added to PCI Platform Protocol / PCI Override Protocol to
> retrieve device-specific platform policy for the following PCI standard 
> features,
> like Maximum Payload Size (MPS), Maximum Read Request Size
> (MRRS),Extended Tags, Relax Order, No-Snoop, Active State Power
> Management (ASPM),Latency Time Reporting (LTR), AtomicOp, Reference Clock
> Configuration, Extended SYNCH, PTM support, and Completion Timeout (CTO).
> New source files added with enhanced definitions are in:
> MdePkg/Include/Protocol/PciPlatform2.h,
> MdePkg/Include/Protocol/PciOverride2.h
> 
> Signed-off-by: Ashraf Javeed 
> Cc: Michael D Kinney 
> Cc: Liming Gao 
> Cc: Ray Ni 
> ---
> 
> In V2: Correction made to header sections of source files
> ---
>  MdePkg/Include/Protocol/PciOverride2.h |  43
> +++
>  MdePkg/Include/Protocol/PciPlatform2.h | 393
> +
> +
> +
> +
> +
> +
> +++
>  MdePkg/MdePkg.dec  |   6 ++
>  3 files changed, 442 insertions(+)
> 
> diff --git a/MdePkg/Include/Protocol/PciOverride2.h
> b/MdePkg/Include/Protocol/PciOverride2.h
> new file mode 100644
> index 00..a7f541b4c3
> --- /dev/null
> +++ b/MdePkg/Include/Protocol/PciOverride2.h
> @@ -0,0 +1,43 @@
> +/** @file
> +  This file declares EFI PCI Override protocol which provides the
> +interface between
> +  the PCI bus driver/PCI Host Bridge Resource Allocation driver and an
> +implementation's
> +  driver to describe the unique features of a platform.
> +  This protocol is optional.
> +
> +  Copyright (c) 2019, Intel Corporation. All rights reserved.  This
> + program and the accompanying materials  are licensed and made
> + available under the terms and conditions of the BSD License  which
> + accompanies this distribution.  The full text of the license may be
> + found at  http://opensource.org/licenses/bsd-license.php
> +
> +  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
> BASIS,
> + WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
> EXPRESS OR IMPLIED.
> +
> +
> +**/
> +
> +#ifndef _PCI_OVERRIDE2_H_
> +#define _PCI_OVERRIDE2_H_
> +
> +///
> +/// EFI_PCI_OVERRIDE_PROTOCOL has the same structure with
> +EFI_PCI_PLATFORM_PROTOCOL /// #include 
> +
> +///
> +/// Global ID for the EFI_PCI_OVERRIDE_PROTOCOL /// #define
> +EFI_PCI_OVERRIDE2_GUID \
> +  { \
> +0xb9d5ea1, 0x66cb, 0x4546, {0xb0, 0xbb, 0x5c, 0x6d, 0xae, 0xd9,
> +0x42, 0x47} \
> +  }
> +
> +///
> +/// Declaration for EFI_PCI_OVERRIDE_PROTOCOL /// typedef
> +EFI_PCI_PLATFORM_PROTOCOL2 EFI_PCI_OVERRIDE_PROTOCOL2;
> +
> +
> +extern EFI_GUID   gEfiPciOverrideProtocol2Guid;
> +
> +#endif
> diff --git a/MdePkg/Include/Protocol/PciPlatform2.h
> b/MdePkg/Include/Protocol/PciPlatform2.h
> new file mode 100644
> index 00..717938e68d
> --- /dev/null
> +++ b/MdePkg/Include/Protocol/PciPlatform2.h
> @@ -0,0 +1,393 @@
> +/** @file
> +  This file declares PCI Platform Protocol that provide the interface
> +between
> +  the PCI bus driver/PCI Host Bridge Resource Allocation driver and a
> +platform-specific
> +  driver to describe the unique features of a platform.
> +  This protocol is optional.
> +
> +Copyright (c) 2019, Intel Corporation. All rights reserved. This
> +program and the accompanying materials are licensed and made available
> +under the terms and conditions of the BSD License that accompanies this
> distribution.
> +The full text of the license may be found at
> +http://opensource.org/licenses/bsd-license.php.
> +
> +THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
> +WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS
> OR IMPLIED.
> +
> +
> +**/
> +
> +#ifndef _PCI_PLATFORM2_H_
> +#define _PCI_PLATFORM2_H_
> +
> +///
> +/// This file must be included because the EFI_PCI_PLATFORM_PROTOCOL2
> +uses /// EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PHASE.
> +///
> +#include 
> +
> +///
> +/// Reuse the existing definition to maintain backward compatibility
> +/// #include 
> +
> +///
> +/// Global ID 

Re: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2] MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol

2019-07-25 Thread Liming Gao
V2 is still full patch. It is not the change delta since the first patch. If 
this patch pass review, it will push. The final push patch should be same to 
the reviewed patch. 

Thanks
Liming
> -Original Message-
> From: Javeed, Ashraf
> Sent: Thursday, July 25, 2019 11:42 PM
> To: Gao, Liming ; devel@edk2.groups.io
> Cc: Kinney, Michael D ; Ni, Ray 
> Subject: RE: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2] 
> MdePkg/Protocols: New interface, EFI encodings to PCI Plat
> protocol
> 
> Liming,
> I meant to create only second patch, I just appended the commit message with 
> the actual changes details from the previous patch.
> 
> > New interface added to PCI Platform Protocol / PCI Override Protocol
> > to retrieve device-specific platform policy for the following PCI
> > standard features, like Maximum Payload Size (MPS), Maximum Read
> > Request Size (MRRS),Extended Tags, Relax Order, No-Snoop, Active State
> > Power Management (ASPM),Latency Time Reporting (LTR), AtomicOp,
> > Reference Clock Configuration, Extended SYNCH, PTM support, and Completion 
> > Timeout (CTO).
> > New source files added with enhanced definitions are in:
> > MdePkg/Include/Protocol/PciPlatform2.h,
> > MdePkg/Include/Protocol/PciOverride2.h
> 
> Thanks
> Ashraf
> 
> > -Original Message-
> > From: Gao, Liming
> > Sent: Thursday, July 25, 2019 9:01 PM
> > To: devel@edk2.groups.io; Javeed, Ashraf 
> > Cc: Kinney, Michael D ; Ni, Ray
> > 
> > Subject: RE: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> > MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> >
> > Ashraf:
> >   V2 is the updated full patch, not patch 2. I think you mean to create 
> > single
> > patch to include all changes instead of create two patches. Right?
> >
> > Thanks
> > Liming
> > > -Original Message-
> > > From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of
> > > Javeed, Ashraf
> > > Sent: Thursday, July 25, 2019 10:45 PM
> > > To: devel@edk2.groups.io
> > > Cc: Kinney, Michael D ; Gao, Liming
> > > ; Ni, Ray 
> > > Subject: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> > > MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> > >
> > > BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1954
> > >
> > > In V2: Correction made to header sections of source files
> > >
> > > New interface added to PCI Platform Protocol / PCI Override Protocol
> > > to retrieve device-specific platform policy for the following PCI
> > > standard features, like Maximum Payload Size (MPS), Maximum Read
> > > Request Size (MRRS),Extended Tags, Relax Order, No-Snoop, Active State
> > > Power Management (ASPM),Latency Time Reporting (LTR), AtomicOp,
> > > Reference Clock Configuration, Extended SYNCH, PTM support, and
> > Completion Timeout (CTO).
> > > New source files added with enhanced definitions are in:
> > > MdePkg/Include/Protocol/PciPlatform2.h,
> > > MdePkg/Include/Protocol/PciOverride2.h
> > >
> > > Signed-off-by: Ashraf Javeed 
> > > Cc: Michael D Kinney 
> > > Cc: Liming Gao 
> > > Cc: Ray Ni 
> > > ---
> > >  MdePkg/Include/Protocol/PciOverride2.h | 3 ---
> > > MdePkg/Include/Protocol/PciPlatform2.h | 5 +
> > >  2 files changed, 1 insertion(+), 7 deletions(-)
> > >
> > > diff --git a/MdePkg/Include/Protocol/PciOverride2.h
> > > b/MdePkg/Include/Protocol/PciOverride2.h
> > > index cf452d9f8f..a7f541b4c3 100644
> > > --- a/MdePkg/Include/Protocol/PciOverride2.h
> > > +++ b/MdePkg/Include/Protocol/PciOverride2.h
> > > @@ -13,9 +13,6 @@
> > >THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
> > BASIS,
> > >WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
> > EXPRESS OR IMPLIED.
> > >
> > > -  @par Revision Reference:
> > > -  This Protocol is defined in UEFI Platform Initialization
> > > Specification 1.2
> > > -  Volume 5: Standards
> > >
> > >  **/
> > >
> > > diff --git a/MdePkg/Include/Protocol/PciPlatform2.h
> > > b/MdePkg/Include/Protocol/PciPlatform2.h
> > > index 3ff41b7754..717938e68d 100644
> > > --- a/MdePkg/Include/Protocol/PciPlatform2.h
> > > +++ b/MdePkg/Include/Protocol/PciPlatform2.h
> > > @@ -4,7 +4,7 @@
> > >driver to describe the unique features of a platform.
> > >Th

Re: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2] MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol

2019-07-25 Thread Javeed, Ashraf
Liming,
I meant to create only second patch, I just appended the commit message with 
the actual changes details from the previous patch.

> New interface added to PCI Platform Protocol / PCI Override Protocol 
> to retrieve device-specific platform policy for the following PCI 
> standard features, like Maximum Payload Size (MPS), Maximum Read 
> Request Size (MRRS),Extended Tags, Relax Order, No-Snoop, Active State 
> Power Management (ASPM),Latency Time Reporting (LTR), AtomicOp, 
> Reference Clock Configuration, Extended SYNCH, PTM support, and Completion 
> Timeout (CTO).
> New source files added with enhanced definitions are in:
> MdePkg/Include/Protocol/PciPlatform2.h,
> MdePkg/Include/Protocol/PciOverride2.h

Thanks
Ashraf

> -Original Message-
> From: Gao, Liming
> Sent: Thursday, July 25, 2019 9:01 PM
> To: devel@edk2.groups.io; Javeed, Ashraf 
> Cc: Kinney, Michael D ; Ni, Ray
> 
> Subject: RE: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> 
> Ashraf:
>   V2 is the updated full patch, not patch 2. I think you mean to create single
> patch to include all changes instead of create two patches. Right?
> 
> Thanks
> Liming
> > -Original Message-
> > From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of
> > Javeed, Ashraf
> > Sent: Thursday, July 25, 2019 10:45 PM
> > To: devel@edk2.groups.io
> > Cc: Kinney, Michael D ; Gao, Liming
> > ; Ni, Ray 
> > Subject: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2]
> > MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> >
> > BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1954
> >
> > In V2: Correction made to header sections of source files
> >
> > New interface added to PCI Platform Protocol / PCI Override Protocol
> > to retrieve device-specific platform policy for the following PCI
> > standard features, like Maximum Payload Size (MPS), Maximum Read
> > Request Size (MRRS),Extended Tags, Relax Order, No-Snoop, Active State
> > Power Management (ASPM),Latency Time Reporting (LTR), AtomicOp,
> > Reference Clock Configuration, Extended SYNCH, PTM support, and
> Completion Timeout (CTO).
> > New source files added with enhanced definitions are in:
> > MdePkg/Include/Protocol/PciPlatform2.h,
> > MdePkg/Include/Protocol/PciOverride2.h
> >
> > Signed-off-by: Ashraf Javeed 
> > Cc: Michael D Kinney 
> > Cc: Liming Gao 
> > Cc: Ray Ni 
> > ---
> >  MdePkg/Include/Protocol/PciOverride2.h | 3 ---
> > MdePkg/Include/Protocol/PciPlatform2.h | 5 +
> >  2 files changed, 1 insertion(+), 7 deletions(-)
> >
> > diff --git a/MdePkg/Include/Protocol/PciOverride2.h
> > b/MdePkg/Include/Protocol/PciOverride2.h
> > index cf452d9f8f..a7f541b4c3 100644
> > --- a/MdePkg/Include/Protocol/PciOverride2.h
> > +++ b/MdePkg/Include/Protocol/PciOverride2.h
> > @@ -13,9 +13,6 @@
> >THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
> BASIS,
> >WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
> EXPRESS OR IMPLIED.
> >
> > -  @par Revision Reference:
> > -  This Protocol is defined in UEFI Platform Initialization
> > Specification 1.2
> > -  Volume 5: Standards
> >
> >  **/
> >
> > diff --git a/MdePkg/Include/Protocol/PciPlatform2.h
> > b/MdePkg/Include/Protocol/PciPlatform2.h
> > index 3ff41b7754..717938e68d 100644
> > --- a/MdePkg/Include/Protocol/PciPlatform2.h
> > +++ b/MdePkg/Include/Protocol/PciPlatform2.h
> > @@ -4,7 +4,7 @@
> >driver to describe the unique features of a platform.
> >This protocol is optional.
> >
> > -Copyright (c) 2007 - 2019, Intel Corporation. All rights
> > reserved.
> > +Copyright (c) 2019, Intel Corporation. All rights reserved.
> >  This program and the accompanying materials are licensed and made
> > available under  the terms and conditions of the BSD License that 
> > accompanies
> this distribution.
> >  The full text of the license may be found at @@ -13,9 +13,6 @@
> > http://opensource.org/licenses/bsd-license.php.
> >  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
> BASIS,
> > WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
> EXPRESS OR IMPLIED.
> >
> > -  @par Revision Reference:
> > -  This Protocol is defined in UEFI Platform Initialization
> > Specification 1.2
> > -  Volume 5: Standards
> >
> >  **/
> >
> > --
> > 2.21.0.windows.1
> >
> >
> > 


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#44394): https://edk2.groups.io/g/devel/message/44394
Mute This Topic: https://groups.io/mt/32598671/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 V2] MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol

2019-07-25 Thread Liming Gao
Ashraf:
  V2 is the updated full patch, not patch 2. I think you mean to create single 
patch to include all changes instead of create two patches. Right?

Thanks
Liming
> -Original Message-
> From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of Javeed, 
> Ashraf
> Sent: Thursday, July 25, 2019 10:45 PM
> To: devel@edk2.groups.io
> Cc: Kinney, Michael D ; Gao, Liming 
> ; Ni, Ray 
> Subject: [edk2-devel] [edk2-staging/UEFI_PCI_ENHANCE-2 PATCH V2] 
> MdePkg/Protocols: New interface, EFI encodings to PCI Plat protocol
> 
> BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1954
> 
> In V2: Correction made to header sections of source files
> 
> New interface added to PCI Platform Protocol / PCI Override Protocol to
> retrieve device-specific platform policy for the following PCI standard
> features, like Maximum Payload Size (MPS), Maximum Read Request Size
> (MRRS),Extended Tags, Relax Order, No-Snoop, Active State Power Management
> (ASPM),Latency Time Reporting (LTR), AtomicOp, Reference Clock
> Configuration, Extended SYNCH, PTM support, and Completion Timeout (CTO).
> New source files added with enhanced definitions are in:
> MdePkg/Include/Protocol/PciPlatform2.h,
> MdePkg/Include/Protocol/PciOverride2.h
> 
> Signed-off-by: Ashraf Javeed 
> Cc: Michael D Kinney 
> Cc: Liming Gao 
> Cc: Ray Ni 
> ---
>  MdePkg/Include/Protocol/PciOverride2.h | 3 ---
>  MdePkg/Include/Protocol/PciPlatform2.h | 5 +
>  2 files changed, 1 insertion(+), 7 deletions(-)
> 
> diff --git a/MdePkg/Include/Protocol/PciOverride2.h 
> b/MdePkg/Include/Protocol/PciOverride2.h
> index cf452d9f8f..a7f541b4c3 100644
> --- a/MdePkg/Include/Protocol/PciOverride2.h
> +++ b/MdePkg/Include/Protocol/PciOverride2.h
> @@ -13,9 +13,6 @@
>THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
>WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR 
> IMPLIED.
> 
> -  @par Revision Reference:
> -  This Protocol is defined in UEFI Platform Initialization Specification 1.2
> -  Volume 5: Standards
> 
>  **/
> 
> diff --git a/MdePkg/Include/Protocol/PciPlatform2.h 
> b/MdePkg/Include/Protocol/PciPlatform2.h
> index 3ff41b7754..717938e68d 100644
> --- a/MdePkg/Include/Protocol/PciPlatform2.h
> +++ b/MdePkg/Include/Protocol/PciPlatform2.h
> @@ -4,7 +4,7 @@
>driver to describe the unique features of a platform.
>This protocol is optional.
> 
> -Copyright (c) 2007 - 2019, Intel Corporation. All rights reserved.
> +Copyright (c) 2019, Intel Corporation. All rights reserved.
>  This program and the accompanying materials are licensed and made available 
> under
>  the terms and conditions of the BSD License that accompanies this 
> distribution.
>  The full text of the license may be found at
> @@ -13,9 +13,6 @@ http://opensource.org/licenses/bsd-license.php.
>  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
>  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
> 
> -  @par Revision Reference:
> -  This Protocol is defined in UEFI Platform Initialization Specification 1.2
> -  Volume 5: Standards
> 
>  **/
> 
> --
> 2.21.0.windows.1
> 
> 
> 


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#44392): https://edk2.groups.io/g/devel/message/44392
Mute This Topic: https://groups.io/mt/32598671/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-