> -----Original Message----- > From: Jason Gunthorpe <jgg@xxxxxxxx> > Sent: Wednesday, April 10, 2019 10:57 AM > To: Sasha Levin <sashal@xxxxxxxxxx> > Cc: Rob Herring <robh+dt@xxxxxxxxxx>; Peter Huewe <peterhuewe@xxxxxx>; > Jarkko Sakkinen <jarkko.sakkinen@xxxxxxxxxxxxxxx>; Mark Rutland > <mark.rutland@xxxxxxx>; Jonathan Corbet <corbet@xxxxxxx>; Arnd Bergmann > <arnd@xxxxxxxx>; Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>; linux- > kernel@xxxxxxxxxxxxxxx; Linux Doc Mailing List <linux-doc@xxxxxxxxxxxxxxx>; > linux-integrity@xxxxxxxxxxxxxxx; Microsoft Linux Kernel List <linux- > kernel@xxxxxxxxxxxxx>; Thirupathaiah Annapureddy <thiruan@xxxxxxxxxxxxx>; > Bryan Kelly (CSI) <bryankel@xxxxxxxxxxxxx> > Subject: Re: [PATCH v2 1/3] ftpm: dt-binding: add dts documentation for > fTPM driver > > On Wed, Apr 10, 2019 at 01:53:59PM -0400, Sasha Levin wrote: > > On Wed, Apr 10, 2019 at 02:03:16PM -0300, Jason Gunthorpe wrote: > > > On Wed, Apr 10, 2019 at 12:01:37PM -0500, Rob Herring wrote: > > > > On Wed, Apr 10, 2019 at 11:19 AM Sasha Levin <sashal@xxxxxxxxxx> > wrote: > > > > > > > > > > On Tue, Apr 09, 2019 at 04:18:29PM -0500, Rob Herring wrote: > > > > > >On Tue, Apr 9, 2019 at 1:50 PM Sasha Levin <sashal@xxxxxxxxxx> > wrote: > > > > > >> > > > > > >> The parameters are similar to the ones used by IBM's vTPM and > the > > > > > >> various I2C tpm drivers. > > > > > > > > > > > >Bindings describe h/w (or firmware interfaces in this case), not > drivers. > > > > > > > > > > > >> > > > > > >> Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx> > > > > > >> .../bindings/security/tpm/tpm_ftpm_tee.txt | 13 > +++++++++++++ > > > > > >> .../devicetree/bindings/vendor-prefixes.txt | 1 + > > > > > >> 2 files changed, 14 insertions(+) > > > > > >> create mode 100644 > Documentation/devicetree/bindings/security/tpm/tpm_ftpm_tee.txt > > > > > >> > > > > > >> diff --git > a/Documentation/devicetree/bindings/security/tpm/tpm_ftpm_tee.txt > b/Documentation/devicetree/bindings/security/tpm/tpm_ftpm_tee.txt > > > > > >> new file mode 100644 > > > > > >> index 000000000000..20fca67a56c4 > > > > > >> +++ > b/Documentation/devicetree/bindings/security/tpm/tpm_ftpm_tee.txt > > > > > >> @@ -0,0 +1,13 @@ > > > > > >> +Required properties: > > > > > >> +- compatible: should be "microsoft,ftpm" > > > > > >> +- linux,sml-base: 64-bit base address of the reserved memory > allocated > > > > > >> + for the firmware event log > > > > > >> +- linux,sml-size: size of the memory allocated for the firmware > event log > > > > > > > > > > > >Firmware is defining linux specific properties? What if I want to > run > > > > > >BSD? We should use 'reg' here instead. > > > > > > > > > > This is based on already existing code that defines these names, > see > > > > > tpm_read_log_of() in drivers/char/tpm/eventlog/of.c . > > > > > > > > BTW, that probably needs updating to handle endianness correctly. > > > > > > IIRC this legacy IBM code has broken endianness in the firmware.. > > > > > > All that stuff in read_log_of, and the related DT stuff, is historical > > > IBM special case-ness and should not be copied into new things. > > > > The fTPM driver does not use it on it's own, so I guess I can just drop > > this patch then? > > If your ARM system boots via EFI then it should pass the firmware > event log through EFI mechanisms, IIRC. > > Otherwise maybe you could make a case for using this, but only if the > old IBM stuff is perfectly emulated, bugs and all. > > Do you even have an event log? > Our ARM system is booting using U-boot and Device Tree. So the ACPI/EFI table mechanism to pass binary boot measurements won't be applicable. We have event logs working and we are able to successfully read them using /sys/kernel/security/tpm0/binary_bios_measurements and parse them --Thiru > Jason