70 UINT8 Reserved5[0x4c];
75 UINT8 Reserved6[0xe7c];
106 UINT32 InterfaceType : 4;
107 UINT32 InterfaceVersion : 4;
108 UINT32 CapLocality : 1;
109 UINT32 Reserved1 : 2;
110 UINT32 CapDataXferSizeSupport : 2;
114 UINT32 InterfaceSelector : 2;
115 UINT32 IntfSelLock : 1;
116 UINT32 Reserved2 : 4;
117 UINT32 Reserved3 : 8;
127 UINT32 DataAvailIntSupport : 1;
128 UINT32 StsValidIntSupport : 1;
129 UINT32 LocalityChangeIntSupport : 1;
130 UINT32 InterruptLevelHigh : 1;
131 UINT32 InterruptLevelLow : 1;
132 UINT32 InterruptEdgeRising : 1;
133 UINT32 InterruptEdgeFalling : 1;
134 UINT32 CommandReadyIntSupport : 1;
135 UINT32 BurstCountStatic : 1;
136 UINT32 DataTransferSizeSupport : 2;
137 UINT32 Reserved : 17;
138 UINT32 InterfaceVersion : 3;
139 UINT32 Reserved2 : 1;
147#define INTERFACE_CAPABILITY_INTERFACE_VERSION_TIS_12 0x0
148#define INTERFACE_CAPABILITY_INTERFACE_VERSION_TIS_13 0x2
149#define INTERFACE_CAPABILITY_INTERFACE_VERSION_PTP 0x3
158#define PTP_FIFO_VALID BIT7
162#define PTP_FIFO_ACC_ACTIVE BIT5
167#define PTP_FIFO_ACC_SEIZED BIT4
173#define PTP_FIFO_ACC_SEIZE BIT3
177#define PTP_FIFO_ACC_PENDIND BIT2
181#define PTP_FIFO_ACC_RQUUSE BIT1
185#define PTP_FIFO_ACC_ESTABLISH BIT0
190#define PTP_FIFO_STS_VALID BIT7
195#define PTP_FIFO_STS_READY BIT6
199#define PTP_FIFO_STS_GO BIT5
203#define PTP_FIFO_STS_DATA BIT4
207#define PTP_FIFO_STS_EXPECT BIT3
211#define PTP_FIFO_STS_SELFTEST_DONE BIT2
215#define PTP_FIFO_STS_RETRY BIT1
222#define PTP_FIFO_STS_EX_TPM_FAMILY (BIT2 | BIT3)
223#define PTP_FIFO_STS_EX_TPM_FAMILY_OFFSET (2)
224#define PTP_FIFO_STS_EX_TPM_FAMILY_TPM12 (0)
225#define PTP_FIFO_STS_EX_TPM_FAMILY_TPM20 (BIT2)
230#define PTP_FIFO_STS_EX_CANCEL BIT0
258 UINT8 Reserved2[0x20];
295 UINT32 CrbInterruptStatus;
304 UINT32 CrbControlCommandAddressHigh;
313 UINT8 Reserved4[0x10];
317 UINT8 CrbDataBuffer[0xF80];
330 UINT32 InterfaceType : 4;
331 UINT32 InterfaceVersion : 4;
332 UINT32 CapLocality : 1;
333 UINT32 CapCRBIdleBypass : 1;
334 UINT32 Reserved1 : 1;
335 UINT32 CapDataXferSizeSupport : 2;
339 UINT32 InterfaceSelector : 2;
340 UINT32 IntfSelLock : 1;
341 UINT32 Reserved2 : 4;
350#define PTP_INTERFACE_IDENTIFIER_INTERFACE_TYPE_FIFO 0x0
351#define PTP_INTERFACE_IDENTIFIER_INTERFACE_TYPE_CRB 0x1
352#define PTP_INTERFACE_IDENTIFIER_INTERFACE_TYPE_TIS 0xF
357#define PTP_INTERFACE_IDENTIFIER_INTERFACE_VERSION_FIFO 0x0
358#define PTP_INTERFACE_IDENTIFIER_INTERFACE_VERSION_CRB 0x1
363#define PTP_INTERFACE_IDENTIFIER_INTERFACE_SELECTOR_FIFO 0x0
364#define PTP_INTERFACE_IDENTIFIER_INTERFACE_SELECTOR_CRB 0x1
373#define PTP_CRB_LOCALITY_STATE_TPM_REG_VALID_STATUS BIT7
382#define PTP_CRB_LOCALITY_STATE_ACTIVE_LOCALITY_MASK (BIT2 | BIT3 | BIT4)
383#define PTP_CRB_LOCALITY_STATE_ACTIVE_LOCALITY_0 (0)
384#define PTP_CRB_LOCALITY_STATE_ACTIVE_LOCALITY_1 (BIT2)
385#define PTP_CRB_LOCALITY_STATE_ACTIVE_LOCALITY_2 (BIT3)
386#define PTP_CRB_LOCALITY_STATE_ACTIVE_LOCALITY_3 (BIT2 | BIT3)
387#define PTP_CRB_LOCALITY_STATE_ACTIVE_LOCALITY_4 (BIT4)
393#define PTP_CRB_LOCALITY_STATE_LOCALITY_ASSIGNED BIT1
399#define PTP_CRB_LOCALITY_STATE_TPM_ESTABLISHED BIT0
408#define PTP_CRB_LOCALITY_CONTROL_RESET_ESTABLISHMENT_BIT BIT3
413#define PTP_CRB_LOCALITY_CONTROL_SEIZE BIT2
418#define PTP_CRB_LOCALITY_CONTROL_RELINQUISH BIT1
423#define PTP_CRB_LOCALITY_CONTROL_REQUEST_ACCESS BIT0
433#define PTP_CRB_LOCALITY_STATUS_BEEN_SEIZED BIT1
439#define PTP_CRB_LOCALITY_STATUS_GRANTED BIT0
451#define PTP_CRB_CONTROL_AREA_REQUEST_GO_IDLE BIT1
459#define PTP_CRB_CONTROL_AREA_REQUEST_COMMAND_READY BIT0
471#define PTP_CRB_CONTROL_AREA_STATUS_TPM_IDLE BIT1
478#define PTP_CRB_CONTROL_AREA_STATUS_TPM_STATUS BIT0
489#define PTP_CRB_CONTROL_CANCEL BIT0
500#define PTP_CRB_CONTROL_START BIT0
510#define PTP_TIMEOUT_A (750 * 1000)
511#define PTP_TIMEOUT_B (2000 * 1000)
512#define PTP_TIMEOUT_C (200 * 1000)
513#define PTP_TIMEOUT_D (30 * 1000)
UINT32 CrbControlCommandAddressLow
UINT64 CrbControlResponseAddrss
UINT64 CrbControlExtension
UINT32 CrbControlCommandSize
UINT32 CrbInterruptEnable
UINT32 CrbControlResponseSize
UINT32 InterfaceCapability