Thread (11 messages) 11 messages, 5 authors, 2019-11-24

Re: [PATCH v1 4/5] dt-bindings: tpm: Add the TPM TIS I2C device tree binding documentaion

From: Amir Mizinski <hidden>
Date: 2019-11-24 18:02:25
Also in: linux-integrity, lkml

On Thu, Nov 14, 2019 at 9:10 PM Rob Herring [off-list ref] wrote:
On Sun, Nov 10, 2019 at 06:21:36PM +0200, amirmizi6@gmail.com wrote:
quoted
From: Amir Mizinski <redacted>

this file aim at documenting TPM TIS I2C related dt-bindings for the I2C PTP based Physical TPM.

Signed-off-by: Amir Mizinski <redacted>
---
 .../bindings/security/tpm/tpm_tis_i2c.txt          | 24 ++++++++++++++++++++++
 1 file changed, 24 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/security/tpm/tpm_tis_i2c.txt
Please make this a schema. See
Documentation/devicetree/writing-schema.rst.
quoted
diff --git a/Documentation/devicetree/bindings/security/tpm/tpm_tis_i2c.txt b/Documentation/devicetree/bindings/security/tpm/tpm_tis_i2c.txt
new file mode 100644
index 0000000..7d5a69e
--- /dev/null
+++ b/Documentation/devicetree/bindings/security/tpm/tpm_tis_i2c.txt
@@ -0,0 +1,24 @@
+* Device Tree Bindings for I2C PTP based Trusted Platform Module(TPM)
+
+The TCG defines hardware protocol, registers and interface (based
+on the TPM Interface Specification) for accessing TPM devices
+implemented with an I2C interface.
+
+Refer to the 'I2C Interface Definition' section in 'TCG PC Client
+PlatformTPMProfile(PTP) Specification' publication for specification.
+
+Required properties:
+
+- compatible     : Should be "tcg,tpm_tis-i2c"
s/_/-/

As this has to be under an I2C controller node, the '-i2c' part is
redundant.
I wrote this Respectively with the tpm_tis-spi driver.
https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/security/tpm/tpm_tis_spi.txt
Should i change it anyway or keep the format?
Also the '-i2c' is added since its not the only protocol used over
tis, and it is handled differently from spi.
There's a bigger issue that the h/w here is more than just an I2C
protocol. The chip may have multiple power supplies, clocks, reset
lines, etc. HID over I2C seems like a similar case. Does the spec define
*all* of that? If not, you need chip specific compatibles. You can keep
this as a fallback though.
quoted
+- reg            : Address on the bus
+- tpm-pirq       : Input gpio pin, used for host interrupts
GPIO connections are properties ending in '-gpios'. However, if the only
use is an interrupt, then you should use 'interrupts'.
My mistake, i didn't implemented interrupts yet so ill clear this for
now.  thank you.
quoted
+
+Example (for Raspberry Pie 3 Board with Nuvoton's NPCT75X (2.0)
+-------------------------------------------------------------------
+
+tpm_tis-i2c: tpm_tis-i2c@2e {
+
+       compatible = "tcg,tpm_tis-i2c";
+       reg = <0x2e>;
+       tpm-pirq = <&gpio 24 GPIO_ACTIVE_HIGH>;
+};
--
2.7.4
Apologies for the late response, had a personal issue that needed my attention
I'm working on making this a schema for next version. This is new for
me, if you have additional sources regarding how to write it, i'll
appreciate if you send me.
Thank you.

Amir Mizinski
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help