feat(tpm): changes to support TPM libThe build system sets TPM_INTERFACE to FIFO_SPI, but this cannot betested by the C preprocessor. So, create new build defineTPM_INTERFACE_FIFO_SPI. Correct th
feat(tpm): changes to support TPM libThe build system sets TPM_INTERFACE to FIFO_SPI, but this cannot betested by the C preprocessor. So, create new build defineTPM_INTERFACE_FIFO_SPI. Correct the #if statements to use it.Make spi_init() in rpi3_spi.c static.Pass timer functions as ops structure to TPM.Remove implicit interface between TPM library and main firmware byintroducing explicit interface to allow firmware to pass structureof function pointers to setup a timer and check whether it has elapsed.Update build system for new TPM lib location.Change #include statements in TPM source and header files to allowfor new directory structure.Change-Id: Ie16b2e402b963161d7d4f35a187b9bd2765a1faaSigned-off-by: Matthew Ellis <Matthew.Ellis@arm.com>
show more ...
feat(io): add generic gpio spi bit-bang driverWhen using a tpm breakout board with rpi3, we elected to bit-banggpio pins to emulate a spi interface, this implementation required adriver to interf
feat(io): add generic gpio spi bit-bang driverWhen using a tpm breakout board with rpi3, we elected to bit-banggpio pins to emulate a spi interface, this implementation required adriver to interface with the platform specific pins and emulate spifunctionality. The generic driver provides the ability to pass in agpio_spi_data structure that contains the necessary gpio pins inorder to simulate spi operations (get_access, start, stop, xfer).Change-Id: I88919e8a294c05e0cabb8224e35ae5c1ba5f2413Signed-off-by: Tushar Khandelwal <tushar.khandelwal@arm.com>Signed-off-by: Abhi Singh <abhi.singh@arm.com>
Sanitise includes across codebaseEnforce full include path for includes. Deprecate old paths.The following folders inside include/lib have been left unchanged:- include/lib/cpus/${ARCH}- inclu
Sanitise includes across codebaseEnforce full include path for includes. Deprecate old paths.The following folders inside include/lib have been left unchanged:- include/lib/cpus/${ARCH}- include/lib/el3_runtime/${ARCH}The reason for this change is that having a global namespace forincludes isn't a good idea. It defeats one of the advantages of havingfolders and it introduces problems that are sometimes subtle (becauseyou may not know the header you are actually including if there are twoof them).For example, this patch had to be created because two headers werecalled the same way: e0ea0928d5b7 ("Fix gpio includes of mt8173 platformto avoid collision."). More recently, this patch has had similarproblems: 46f9b2c3a282 ("drivers: add tzc380 support").This problem was introduced in commit 4ecca33988b9 ("Move include andsource files to logical locations"). At that time, there weren't toomany headers so it wasn't a real issue. However, time has shown thatthis creates problems.Platforms that want to preserve the way they include headers may add theremoved paths to PLAT_INCLUDES, but this is discouraged.Change-Id: I39dc53ed98f9e297a5966e723d1936d6ccf2fc8fSigned-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
Use SPDX license identifiersTo make software license auditing simpler, use SPDX[0] licenseidentifiers instead of duplicating the license text in every file.NOTE: Files that have been imported by
Use SPDX license identifiersTo make software license auditing simpler, use SPDX[0] licenseidentifiers instead of duplicating the license text in every file.NOTE: Files that have been imported by FreeBSD have not been modified.[0]: https://spdx.org/Change-Id: I80a00e1f641b8cc075ca5a95b10607ed9ed8761aSigned-off-by: dp-arm <dimitris.papastamos@arm.com>
gpio: support gpio set/get pull statusOn some platform gpio can set/get pull status when input, add thesefunction so we can set/get gpio pull status when need it. And they areoptional function.
gpio: add gpio frameworkDefine the gpio ops in gpio driver.Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>