Maggie:
  PR reports the Uncrustify issue for this patch. Can you help check this issue?

ERROR - /home/vsts/work/1/s/MdePkg/Include/IndustryStandard/Nvme.h
ERROR - --->Test Failed: Uncrustify Coding Standard Test NO-TARGET returned 1

Thanks
Liming
> -----邮件原件-----
> 发件人: [email protected] <[email protected]> 代表 gaoliming
> 发送时间: 2021年12月23日 9:33
> 收件人: 'Chu, Maggie' <[email protected]>; [email protected]; 'Liu,
> Zhiguang' <[email protected]>
> 抄送: 'Kinney, Michael D' <[email protected]>
> 主题: 回复: [edk2-devel] [PATCH] MdePkg: Add registers of boot partition
> feature
> 
> Create PR https://github.com/tianocore/edk2/pull/2348 for this patch.
> 
> Thanks
> Liming
> > -----邮件原件-----
> > 发件人: Chu, Maggie <[email protected]>
> > 发送时间: 2021年12月22日 16:35
> > 收件人: [email protected]; Gao, Liming <[email protected]>;
> > Liu, Zhiguang <[email protected]>
> > 抄送: Kinney, Michael D <[email protected]>
> > 主题: RE: [edk2-devel] [PATCH] MdePkg: Add registers of boot partition
> > feature
> >
> > Hi Liming, Hi Michael,
> >
> > May I know when will the review process finished and code will be merged ?
> >
> > -----Original Message-----
> > From: [email protected] <[email protected]> On Behalf Of
> gaoliming
> > Sent: Wednesday, December 15, 2021 1:41 PM
> > To: [email protected]; Liu, Zhiguang <[email protected]>; Chu,
> > Maggie <[email protected]>
> > Cc: Kinney, Michael D <[email protected]>
> > Subject: 回复: [edk2-devel] [PATCH] MdePkg: Add registers of boot
> partition
> > feature
> >
> > Reviewed-by: Liming Gao <[email protected]>
> >
> > > -----邮件原件-----
> > > 发件人: [email protected] <[email protected]> 代表 Zhiguang
> > Liu
> > > 发送时间: 2021年12月15日 12:32
> > > 收件人: Chu, Maggie <[email protected]>; [email protected]
> > > 抄送: Gao, Liming <[email protected]>; Kinney, Michael D
> > > <[email protected]>
> > > 主题: Re: [edk2-devel] [PATCH] MdePkg: Add registers of boot partition
> > > feature
> > >
> > > I have checked that the change follows NVM Express 1.4 Spec
> > > Reviewed-by: Zhiguang Liu <[email protected]>
> > >
> > > -----Original Message-----
> > > From: Chu, Maggie <[email protected]>
> > > Sent: Wednesday, December 8, 2021 3:18 PM
> > > To: [email protected]
> > > Cc: Liming Gao <[email protected]>; Kinney, Michael D
> > > <[email protected]>; Liu, Zhiguang <[email protected]>
> > > Subject: [PATCH] MdePkg: Add registers of boot partition feature
> > >
> > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3757
> > >
> > > Add registers of boot partition feature which defined in NVM Express
> > > 1.4
> > Spec
> > >
> > > Cc: Liming Gao <[email protected]>
> > > Cc: Michael D Kinney <[email protected]>
> > > Cc: Zhiguang Liu <[email protected]>
> > > Signed-off-by: Maggie Chu <[email protected]>
> > > ---
> > >  MdePkg/Include/IndustryStandard/Nvme.h | 113
> > > ++++++++++++++++++++-----
> > >  1 file changed, 92 insertions(+), 21 deletions(-)
> > >
> > > diff --git a/MdePkg/Include/IndustryStandard/Nvme.h
> > > b/MdePkg/Include/IndustryStandard/Nvme.h
> > > index 7d4aee9dc8..8387183e4f 100644
> > > --- a/MdePkg/Include/IndustryStandard/Nvme.h
> > > +++ b/MdePkg/Include/IndustryStandard/Nvme.h
> > > @@ -2,11 +2,12 @@
> > >    Definitions based on NVMe spec. version 1.1.
> > >
> > >
> > >
> > >    (C) Copyright 2016 Hewlett Packard Enterprise Development LP<BR>
> > >
> > > -  Copyright (c) 2017, Intel Corporation. All rights reserved.<BR>
> > >
> > > +  Copyright (c) 2017 - 2021, Intel Corporation. All rights
> > > + reserved.<BR>
> > >
> > >    SPDX-License-Identifier: BSD-2-Clause-Patent
> > >
> > >
> > >
> > >    @par Specification Reference:
> > >
> > >    NVMe Specification 1.1
> > >
> > > +  NVMe Specification 1.4
> > >
> > >
> > >
> > >  **/
> > >
> > >
> > >
> > > @@ -18,18 +19,21 @@
> > >  //
> > >
> > >  // controller register offsets
> > >
> > >  //
> > >
> > > -#define NVME_CAP_OFFSET    0x0000        // Controller
> > Capabilities
> > >
> > > -#define NVME_VER_OFFSET    0x0008        // Version
> > >
> > > -#define NVME_INTMS_OFFSET  0x000c        // Interrupt Mask Set
> > >
> > > -#define NVME_INTMC_OFFSET  0x0010        // Interrupt Mask
> Clear
> > >
> > > -#define NVME_CC_OFFSET     0x0014        // Controller
> > > Configuration
> > >
> > > -#define NVME_CSTS_OFFSET   0x001c        // Controller Status
> > >
> > > -#define NVME_NSSR_OFFSET   0x0020        // NVM Subsystem
> > Reset
> > >
> > > -#define NVME_AQA_OFFSET    0x0024        // Admin Queue
> > > Attributes
> > >
> > > -#define NVME_ASQ_OFFSET    0x0028        // Admin Submission
> > > Queue Base Address
> > >
> > > -#define NVME_ACQ_OFFSET    0x0030        // Admin Completion
> > > Queue Base Address
> > >
> > > -#define NVME_SQ0_OFFSET    0x1000        // Submission Queue 0
> > > (admin) Tail Doorbell
> > >
> > > -#define NVME_CQ0_OFFSET    0x1004        // Completion Queue
> 0
> > > (admin) Head Doorbell
> > >
> > > +#define NVME_CAP_OFFSET     0x0000        // Controller
> > > Capabilities
> > >
> > > +#define NVME_VER_OFFSET     0x0008        // Version
> > >
> > > +#define NVME_INTMS_OFFSET   0x000c        // Interrupt Mask
> Set
> > >
> > > +#define NVME_INTMC_OFFSET   0x0010        // Interrupt Mask
> > Clear
> > >
> > > +#define NVME_CC_OFFSET      0x0014        // Controller
> > > Configuration
> > >
> > > +#define NVME_CSTS_OFFSET    0x001c        // Controller Status
> > >
> > > +#define NVME_NSSR_OFFSET    0x0020        // NVM Subsystem
> > > Reset
> > >
> > > +#define NVME_AQA_OFFSET     0x0024        // Admin Queue
> > > Attributes
> > >
> > > +#define NVME_ASQ_OFFSET     0x0028        // Admin Submission
> > > Queue Base Address
> > >
> > > +#define NVME_ACQ_OFFSET     0x0030        // Admin
> Completion
> > > Queue Base Address
> > >
> > > +#define NVME_BPINFO_OFFSET  0x0040        // Boot Partition
> > > Information
> > >
> > > +#define NVME_BPRSEL_OFFSET  0x0044        // Boot Partition
> Read
> > > Select
> > >
> > > +#define NVME_BPMBL_OFFSET   0x0048        // Boot Partition
> > > Memory Buffer Location
> > >
> > > +#define NVME_SQ0_OFFSET     0x1000        // Submission Queue
> 0
> > > (admin) Tail Doorbell
> > >
> > > +#define NVME_CQ0_OFFSET     0x1004        // Completion
> Queue
> > 0
> > > (admin) Head Doorbell
> > >
> > >
> > >
> > >  //
> > >
> > >  // These register offsets are defined as 0x1000 + (N * (4 <<
> > > CAP.DSTRD))
> > >
> > > @@ -51,11 +55,14 @@ typedef struct {
> > >    UINT8     To;     // Timeout
> > >
> > >    UINT16    Dstrd  : 4;
> > >
> > >    UINT16    Nssrs  : 1; // NVM Subsystem Reset Supported NSSRS
> > >
> > > -  UINT16    Css    : 4; // Command Sets Supported - Bit 37
> > >
> > > -  UINT16    Rsvd3  : 7;
> > >
> > > -  UINT8     Mpsmin : 4;
> > >
> > > -  UINT8     Mpsmax : 4;
> > >
> > > -  UINT8     Rsvd4;
> > >
> > > +  UINT16    Css:8;     // Command Sets Supported - Bit 37
> > >
> > > +  UINT16    Bps:1;     // Boot Partition Support - Bit 45 in NVMe1.4
> > >
> > > +  UINT16    Rsvd3:2;
> > >
> > > +  UINT8     Mpsmin:4;
> > >
> > > +  UINT8     Mpsmax:4;
> > >
> > > +  UINT8     Pmrs:1;
> > >
> > > +  UINT8     Cmbs:1;
> > >
> > > +  UINT8     Rsvd4:6;
> > >
> > >  } NVME_CAP;
> > >
> > >
> > >
> > >  //
> > >
> > > @@ -115,7 +122,36 @@ typedef struct {
> > >  #define NVME_ACQ  UINT64
> > >
> > >
> > >
> > >  //
> > >
> > > -// 3.1.11 Offset (1000h + ((2y) * (4 << CAP.DSTRD))): SQyTDBL -
> > Submission
> > > Queue y Tail Doorbell
> > >
> > > +// 3.1.13 Offset 40h: BPINFO - Boot Partition Information
> > >
> > > +//
> > >
> > > +typedef struct {
> > >
> > > +  UINT32  Bpsz:15;    // Boot Partition Size
> > >
> > > +  UINT32  Rsvd1:9;
> > >
> > > +  UINT32  Brs:2;      // Boot Read Status
> > >
> > > +  UINT32  Rsvd2:5;
> > >
> > > +  UINT32  Abpid:1;    // Active Boot Partition ID
> > >
> > > +} NVME_BPINFO;
> > >
> > > +
> > >
> > > +//
> > >
> > > +// 3.1.14 Offset 44h: BPRSEL - Boot Partition Read Select
> > >
> > > +//
> > >
> > > +typedef struct {
> > >
> > > +  UINT32  Bprsz:10;    // Boot Partition Read Size
> > >
> > > +  UINT32  Bprof:20;    // Boot Partition Read Offset
> > >
> > > +  UINT32  Rsvd1:1;
> > >
> > > +  UINT32  Bpid:1;      // Boot Partition Identifier
> > >
> > > +} NVME_BPRSEL;
> > >
> > > +
> > >
> > > +//
> > >
> > > +// 3.1.15 Offset 48h: BPMBL - Boot Partition Memory Buffer Location
> > > (Optional)
> > >
> > > +//
> > >
> > > +typedef struct {
> > >
> > > +  UINT64  Rsvd1:12;
> > >
> > > +  UINT64  Bmbba:52;    // Boot Partition Memory Buffer Base
> Address
> > >
> > > +} NVME_BPMBL;
> > >
> > > +
> > >
> > > +//
> > >
> > > +// 3.1.25 Offset (1000h + ((2y) * (4 << CAP.DSTRD))): SQyTDBL -
> > Submission
> > > Queue y Tail Doorbell
> > >
> > >  //
> > >
> > >  typedef struct {
> > >
> > >    UINT16    Sqt;
> > >
> > > @@ -353,7 +389,7 @@ typedef struct {
> > >    UINT8                Avscc; /* Admin Vendor Specific Command
> > > Configuration */
> > >
> > >    UINT8                Apsta; /* Autonomous Power State
> > Transition
> > > Attributes */
> > >
> > >    //
> > >
> > > -  // Below fields before Rsvd2 are defined in NVM Express 1.3 Spec
> > >
> > > +  // Below fields before Rsvd2 are defined in NVM Express 1.4 Spec
> > >
> > >    //
> > >
> > >    UINT16               Wctemp;      /* Warning Composite
> > > Temperature Threshold */
> > >
> > >    UINT16               Cctemp;      /* Critical Composite
> > > Temperature Threshold */
> > >
> > > @@ -361,7 +397,12 @@ typedef struct {
> > >    UINT32               Hmpre;       /* Host Memory Buffer
> > > Preferred Size */
> > >
> > >    UINT32               Hmmin;       /* Host Memory Buffer
> > > Minimum Size */
> > >
> > >    UINT8                Tnvmcap[16]; /* Total NVM Capacity */
> > >
> > > -  UINT8                Rsvd2[216];  /* Reserved as of NVM
> Express
> > > */
> > >
> > > +  UINT8                Unvmcap[16]; /* Unallocated NVM
> Capacity
> > */
> > >
> > > +  UINT32               Rpmbs;       /* Replay Protected
> Memory
> > > Block Support */
> > >
> > > +  UINT16               Edstt;       /* Extended Device Self-test
> > > Time */
> > >
> > > +  UINT8                Dsto;        /* Device Self-test Options
> > */
> > >
> > > +  UINT8                Fwug;        /* Firmware Update
> > > Granularity */
> > >
> > > +  UINT8                Rsvd2[192];  /* Reserved as of Nvm
> Express
> > > 1.4 Spec */
> > >
> > >    //
> > >
> > >    // NVM Command Set Attributes
> > >
> > >    //
> > >
> > > @@ -433,6 +474,35 @@ typedef struct {
> > >    UINT8             VendorData[3712]; /* Vendor specific data */
> > >
> > >  } NVME_ADMIN_NAMESPACE_DATA;
> > >
> > >
> > >
> > > +//
> > >
> > > +// RPMB Device Configuration Block Data Structure as of Nvm Express
> > > +1.4
> > > Spec
> > >
> > > +//
> > >
> > > +typedef struct {
> > >
> > > +  UINT8  Bppe;                /* Boot Partition Protection Enable
> > */
> > >
> > > +  UINT8  Bpl;                 /* Boot Partition Lock */
> > >
> > > +  UINT8  Nwpac;               /* Namespace Write Protection
> > > Authentication Control */
> > >
> > > +
> > >
> > > +  UINT8  Rsvd1[509];          /* Reserved as of Nvm Express 1.4
> > Spec
> > > */
> > >
> > > +} NVME_RPMB_CONFIGURATION_DATA;
> > >
> > > +
> > >
> > > +#define RPMB_FRAME_STUFF_BYTES  223
> > >
> > > +
> > >
> > > +//
> > >
> > > +// RPMB Data Frame as of Nvm Express 1.4 Spec
> > >
> > > +//
> > >
> > > +typedef struct {
> > >
> > > +  UINT8   Sbakamc[RPMB_FRAME_STUFF_BYTES];       /*
> > [222-N:00]
> > > Stuff Bytes */
> > >
> > > +                                                 /*
> > > [222:222-(N-1)] Authentication Key or Message Authentication Code
> > > (MAC) */
> > >
> > > +  UINT8   Rpmbt;                                 /* RPMB
> > > Target */
> > >
> > > +  UINT64  Nonce[2];
> > >
> > > +  UINT32  Wcounter;                              /* Write
> > > Counter */
> > >
> > > +  UINT32  Address;                               /* Starting
> > > address of data to be programmed to or read from the RPMB. */
> > >
> > > +  UINT32  Scount;                                /* Sector
> > Count
> > > */
> > >
> > > +  UINT16  Result;
> > >
> > > +  UINT16  Rpmessage;                             /*
> > > Request/Response Message */
> > >
> > > +//  UINT8  *Data;                                /* Data to
> be
> > > written or read by signed access where M = 512 * Sector Count. */
> > >
> > > +} NVME_RPMB_DATA_FRAME;
> > >
> > > +
> > >
> > >  //
> > >
> > >  // NvmExpress Admin Identify Cmd
> > >
> > >  //
> > >
> > > @@ -564,6 +634,7 @@ typedef struct {
> > >    #define LID_ERROR_INFO    0x1
> > >
> > >    #define LID_SMART_INFO    0x2
> > >
> > >    #define LID_FW_SLOT_INFO  0x3
> > >
> > > +  #define LID_BP_INFO       0x15
> > >
> > >    UINT32    Rsvd1 : 8;
> > >
> > >    UINT32    Numd  : 12;       /* Number of Dwords */
> > >
> > >    UINT32    Rsvd2 : 4;        /* Reserved as of Nvm Express 1.1
> > Spec
> > > */
> > >
> > > --
> > > 2.26.2.windows.1
> > >
> > >
> > >
> > >
> > >
> >
> >
> >
> >
> >
> >
> >
> 
> 
> 
> 
> 
> 
> 





-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#85209): https://edk2.groups.io/g/devel/message/85209
Mute This Topic: https://groups.io/mt/87930846/21656
Group Owner: [email protected]
Unsubscribe: https://edk2.groups.io/g/devel/unsub [[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to