Skip to content

Update to ms-tpm-20-ref V1.83 #17

Description

@jan-kiszka

In a big hack, I started a port the latest ms-tpm-20-ref: https://github.com/jan-kiszka/optee_ftpm/commits/V1.83-update. If others want to continue from here, please drop a note. I may at some point, but right now the topic is on hold.

This depends on a few smaller fixes/cleanup of the reference implementation: microsoft/ms-tpm-20-ref#119. It nicely builds (fixed or silenced warnings), but it does not run yet:

[    6.227973] tpm tpm0: ftpm_tee_tpm_op_send: SUBMIT_COMMAND invoke error: 0xffff0006
[    6.228655] tpm tpm0: tpm_try_transmit: send(): error -65530
[    6.229953] tpm tpm0: ftpm_tee_tpm_op_send: SUBMIT_COMMAND invoke error: 0xffff0006
[    6.230470] tpm tpm0: tpm_try_transmit: send(): error -65530
[    6.230971] optee-ftpm optee-ta-bc50d971-d4c9-42c4-82cb-343fb7f37896: ftpm_tee_probe: tpm_chip_register failed with rc=-65530
[    6.233003] optee-ftpm optee-ta-bc50d971-d4c9-42c4-82cb-343fb7f37896: probe with driver optee-ftpm failed with error -65530
D/TA:  TA_CreateEntryPoint:150 Entry Point
D/TA:  _plat__NVEnable:383 _plat__NVEnable()
D/TA:  _plat__NvInitFromStorage:134 _plat__NvInitFromStorage()
I/TA: Created fTPM storage object, i: 0x0, s: 0x200, id: 0x54504d00, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x1, s: 0x200, id: 0x54504d01, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x2, s: 0x200, id: 0x54504d02, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x3, s: 0x200, id: 0x54504d03, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x4, s: 0x200, id: 0x54504d04, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x5, s: 0x200, id: 0x54504d05, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x6, s: 0x200, id: 0x54504d06, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x7, s: 0x200, id: 0x54504d07, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x8, s: 0x200, id: 0x54504d08, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x9, s: 0x200, id: 0x54504d09, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0xa, s: 0x200, id: 0x54504d0a, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0xb, s: 0x200, id: 0x54504d0b, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0xc, s: 0x200, id: 0x54504d0c, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0xd, s: 0x200, id: 0x54504d0d, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0xe, s: 0x200, id: 0x54504d0e, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0xf, s: 0x200, id: 0x54504d0f, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x10, s: 0x200, id: 0x54504d10, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x11, s: 0x200, id: 0x54504d11, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x12, s: 0x200, id: 0x54504d12, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x13, s: 0x200, id: 0x54504d13, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x14, s: 0x200, id: 0x54504d14, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x15, s: 0x200, id: 0x54504d15, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x16, s: 0x200, id: 0x54504d16, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x17, s: 0x200, id: 0x54504d17, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x18, s: 0x200, id: 0x54504d18, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x19, s: 0x200, id: 0x54504d19, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x1a, s: 0x200, id: 0x54504d1a, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x1b, s: 0x200, id: 0x54504d1b, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x1c, s: 0x200, id: 0x54504d1c, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x1d, s: 0x200, id: 0x54504d1d, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x1e, s: 0x200, id: 0x54504d1e, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x1f, s: 0x200, id: 0x54504d1f, h:0x13e6e0
I/TA: Created fTPM storage object, i: 0x20, s: 0x200, id: 0x54504d20, h:0x13e6e0
D/TA:  TA_CreateEntryPoint:172 NVEnable Complete
D/TA:  TA_CreateEntryPoint:179 TPM_Manufacture
Size of OBJECT = 2104
Size of components in TPMT_SENSITIVE = 1384
    TPMI_ALG_PUBLIC                 2
    TPM2B_AUTH                      50
    TPM2B_DIGEST                    50
    TPMU_SENSITIVE_COMPOSITE        1282
D/TA:  _plat__NvWriteBack:294 bMap: 0xffffffff
D/TA:  _plat__NVEnable:383 _plat__NVEnable()
D/TA:  TA_CreateEntryPoint:191 Init Complete
D/TA:  TA_CreateEntryPoint:214 No TPM state present
D/TA:  _plat__NvWriteBack:294 bMap: 0x2
I/TA: Bad param size(s)
I/TA: Bad param size(s)

I still need to diff the various changes in the reference platform code to optee_ftpm, maybe some relevant bits are missing.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions