commit | 1d4c5856b02e048c7cdeeeac1004249b459ae2fe | [log] [tgz] |
---|---|---|
author | Vadim Sukhomlinov <sukhomlinov@google.com> | Tue Nov 22 11:07:42 2022 -0800 |
committer | Jonathon Murphy <jpmurphy@google.com> | Tue Nov 29 23:53:10 2022 +0000 |
tree | a52addfedb7943d6a8fbca8469c3f7aa4c934b6a | |
parent | fc9efb64cc90444dbde4303999a4f4e2da00cc1e [diff] |
pinweaver/ti50: workaround to build with Clang-15 in Ti50 SDK LIBCLANG_PATH cause weird issues that types from stdint.h not found: pinweaver_types.h:100:2: error: unknown type name 'uint8_t' pinweaver_types.h:105:2: error: unknown type name 'uint8_t' pinweaver_types.h:110:2: error: unknown type name 'uint8_t' ... Commenting out LIBCLANG_PATH helps, but in general this is not a correct behavior. Updating bindgen to 0.62 also didn't make a difference. BUG=b:259282140 TEST=make, manually check that RISC-V target is correctly handled Cq-Depend: chrome-internal:5146615 Change-Id: I9778afa3fb0f6c134e9f599f0bdb594ab6f36aea Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/pinweaver/+/4049022 Reviewed-by: Vadim Sukhomlinov <sukhomlinov@chromium.org> Owners-Override: Brad McKee <bradmckee@google.com> Reviewed-by: Alyssa Haroldsen <kupiakos@google.com> Auto-Submit: Vadim Sukhomlinov <sukhomlinov@chromium.org> Commit-Queue: Vadim Sukhomlinov <sukhomlinov@chromium.org> Tested-by: Vadim Sukhomlinov <sukhomlinov@chromium.org>
This directory contains reference PinWeaver code that can be used across implementation platforms.
It consists of:
pinweaver.h
- PinWeaver embedded API definitionpinweaver.c
- implementationpinweaver_eal.h
- API for Environment Abstraction Layer (EAL) used by PinWeavereal/**/pinweaver_eal_types.h
pinweaver_types.h
- header that is shared by PinWeaver implementation and PinWeaver clients that call it through platform-specific interface.eal/
foldereal/cr50
- implementation for cr50pinweaver_eal_types.h
- cr50-specific EAL API typespinweaver_eal.c
- cr50 implementation of EALeal/tpm_storage
- implementation for platforms that use TPM as PinWeaver data storagepinweaver_eal_types.h
- TPM-storage-specific EAL API typespinweaver_eal_tpm.h
- additional EAL functions required by TPM storagepinweaver_eal_linux.c
- implementation of non-storage EAL methods for Linux casetpm_storage_stubs.c
- empty implementation of storage EAL methodstpm_storage.c
- implementation of storage EAL methods on top of TSSmini_trunks/
- mini-TSS (TPM client software stack) used by TPM storage implementationpinweaver_eal.h
+ pinweaver_eal_tpm.h
EAL methodstss.h
+ *authorization_delegate.h
A platform implementation that uses TPM storage EAL option needs to implement all EAL methods implemented in pinweaver_eal_linux.c
(or use it as-is, if Linux compatible).