RPMC Support Using eSPI OOB (eRPMC)

Architecture Specification

ID Date Version Classification
739180 03/01/2023 Public

A newer version of this document is available. Customers should click here to go to the newest version.

Read RPMC Parameters

This command is used to read RPMC parameters values.

RPMC Parameter table is as defined below:

Bits

Description

31:8

Reserved

7:4

Document Version. Default=0.

3:0

Num_​RPMC: Number of supported RPMC Devices (Note)

RPMC Parameters, RPMC Device n:

Bits

Description

31:28

Update_​Rate: Rate of update = 5*(2**Update_​Rate) seconds

27:26

RPMC Device

25

MC_​Size: 0= Monotonic counter size is 32 bits, 1=Reserved. Default =0.

24

SHA_​Size: 0=SHA-256, 1=SHA-384. Default =0.

23:16

Reserved

15:8

OP1: OP1 Opcode for RPMC Devices. Default= 9Bh

7:0

Num_​Counter-1: Number of supported Monotonic Counters-1 (Note)

  1. If RPMC is supported in FW in the EC device only, reports one device and number of supported counters. Num_​RPMC is zero if RPMC is not supported in EC device.
  2. If RPMC is supported by EC device and/or the EC device passing commands to SPI RPMC devices, reports the number of flash devices supported and the number of monotonic counters in each RPMC device.

Read RPMC Parameters Command:

Byte #

7

6

5

4

3

2

1

0

0

eSPI Cycle Type: OOB Message=21h

1

Tag[3:0]=0h

Length[11:8]=0h

2

Length[7:0]=0Bh

3

Dest Slave Addr[7:1]=07h

0

4

Command Code=0Fh

5

Byte Count=08h

6

Source Slave Address[7:1]= 08h

1

7

MCTP Reserved=0h

Header Version

8

Destination Endpoint ID

9

Source Endpoint ID

10

SOM

EOM

Packet Seq #

TO

Message Tag

11

IC

Message Type=7Dh

12

RPMC Device= 00h

13

Opcode = 9Fh

Response:

Byte #

7

6

5

4

3

2

1

0

0

eSPI Cycle Type: OOB Message=21h

1

Tag[3:0]=0h

Length[11:8]=0h

2

Length[7:0]=12h

3

Dest Slave Addr[7:1]=08h

0

4

Command Code=0Fh

5

Byte Count=0Fh

6

Source Slave Address[7:1]= 07h

1

7

MCTP Reserved=0h

Header Version

8

Destination Endpoint ID

9

Source Endpoint ID

10

SOM

EOM

Packet Seq #

TO

Message Tag

11

IC

Message Type=7Dh

12

Extended Status[7:0]

13

RPMC Parameter Table[31:24]

16

RPMC Parameter Table[7:0]

17

RPMC Parameters, RPMC Device 0[31:24]

20

RPMC Parameters, RPMC Device 0[7:0]

Note:This command may return up to three additional DWs, depending on number of RPMC Devices.

If the received transaction has errors, the device does not execute the transaction and posts the corresponding error in extended status.

Expected Extended Status [7:0] results:

Extended Status [7:0]

Description

10000000

Successful completion.

0XXXXXX1

N/A. This bit cannot be read as 1, eRPMC not supported.

0XXXXX1X

This bit is only set when incorrect payload size is received.

Examples of RPMC Devices Supported

The following show examples of different RPMC devices (EC, SPI flash devices or both). Parameter table values and relevant MCTP command parameters for each example are shown.

EC is RPMC Device

RPMC Parameter Table:

Bits

Description

Value

31:8

Reserved

000000h

7:4

Document Version. Default=0.

0h

3:2

Reserved

00b

1:0

Num_​RPMC: Number of supported RPMC Devices

01b

RPMC Parameters, RPMC Device 0:

Bits

Description

Value

31:28

Update_​Rate

0h

27:26

RPMC Device

00b

25

MC_​Size

0b

24

SHA_​Size: 0=SHA-256, 1=SHA-384. Default =0.

0b

23:16

Reserved

00h

15:8

OP1: OP1 Opcode for RPMC Devices. Default= 9Bh

9Bh

7:0

Num_​Counter-1: Number of supported Monotonic Counters-1

0-FFh

RPMC OOB Command Parameters, RPMC Device 0:

Parameter

Value

RPMC Device

00h

Counter Addr[7:0]

00h-FFh

Two RPMC SPI Flash Devices, Each with Four Monotonic Counters

RPMC Parameter Table:

Bits

Description

Value

31:8

Reserved

000000h

7:4

Document Version. Default=0.

0h

3:2

Reserved

00b

1:0

Num_​RPMC: Number of supported RPMC Devices

02b

RPMC Parameters, RPMC Device 0:

Bits

Description

Value

31:28

Update_​Rate

0h

27:26

RPMC Device

00b

25

MC_​Size

0b

24

SHA_​Size: 0=SHA-256, 1=SHA-384. Default =0.

0b

23:16

Reserved

00h

15:8

OP1: OP1 Opcode for RPMC Devices. Default= 9Bh

9Bh

7:0

Num_​Counter-1: Number of supported Monotonic Counters-1

03h

RPMC OOB Command Parameters, RPMC Device 0:

Parameter

Value

RPMC Device

00h

Counter Addr[7:0]

00h-03h

RPMC Parameters, RPMC Device 1:

Bits

Description

Value

31:28

Update_​Rate

0h

27:26

RPMC Device

01b

25

MC_​Size

0b

24

SHA_​Size: 0=SHA-256, 1=SHA-384. Default =0.

0b

23:16

Reserved

00h

15:8

OP1: OP1 Opcode for RPMC Devices. Default= 9Bh

9Bh

7:0

Num_​Counter-1: Number of supported Monotonic Counters-1

03h

RPMC OOB Command Parameters, RPMC Device 1:

Parameter

Value

RPMC Device

01h

Counter Addr[7:0]

00h-03h

EC as RPMC Device and Two SPI RPMC Flash Devices

RPMC Parameter Table:

Bits

Description

Value

31:8

Reserved

000000h

7:4

Document Version. Default=0.

0h

3:2

Reserved

00b

1:0

Num_​RPMC: Number of supported RPMC Devices

03b

RPMC Parameters, RPMC Device 0 (EC):

Bits

Description

Value

31:28

Update_​Rate

0h

27:26

RPMC Device

00b

25

MC_​Size

0b

24

SHA_​Size: 0=SHA-256, 1=SHA-384. Default =0.

0b

23:16

Reserved

00h

15:8

OP1: OP1 Opcode for RPMC Devices. Default= 9Bh

9Bh

7:0

Num_​Counter-1: Number of supported Monotonic Counters-1

FFh

RPMC OOB Command Parameters, RPMC Device 0 (EC):

Parameter

Value

RPMC Device

00h

Counter Addr[7:0]

00h-FFh

RPMC Parameters, RPMC Device 1:

Bits

Description

Value

31:28

Update_​Rate

0h

27:26

RPMC Device

01b

25

MC_​Size

0b

24

SHA_​Size: 0=SHA-256, 1=SHA-384. Default =0.

0b

23:16

Reserved

00h

15:8

OP1: OP1 Opcode for RPMC Devices. Default= 9Bh

9Bh

7:0

Num_​Counter-1: Number of supported Monotonic Counters-1

03h

RPMC OOB Command Parameters, RPMC Device 1:

Parameter

Value

RPMC Device

01h

Counter Addr[7:0]

00h-03h

RPMC Parameters, RPMC Device 2:

Bits

Description

Value

31:28

Update_​Rate

0h

27:26

RPMC Device

02b

25

MC_​Size

0b

24

SHA_​Size: 0=SHA-256, 1=SHA-384. Default =0.

0b

23:16

Reserved

00h

15:8

OP1: OP1 Opcode for RPMC Devices. Default= 9Bh

9Bh

7:0

Num_​Counter-1: Number of supported Monotonic Counters-1

03h

RPMC OOB Command Parameters, RPMC Device 2:

Parameter

Value

RPMC Device

02h

Counter Addr[7:0]

00h-03h