On Wed, Jul 16, 2025 at 11:44:02AM -0700, Randy Dunlap wrote:
> (mostly nits, along with Paul's comments)
> 
> 
> On 7/16/25 5:18 AM, Jarkko Sakkinen wrote:
> > From: Jarkko Sakkinen <[email protected]>
> > 
> > Provide a kernel command-line parameter named as `supplicant`, which
> > contains a path to an TPM emulator binary. When defind, the kernel will
> 
>                   to a TPM
> 
> > launch the program during boot-time.
> > 
> > This feature is most useful in feature testing e.g., in environments
> 
>                                          testing, e.g.,
> 
> > where other means are not possible, such as CI runners. Its original use
> > case highlights also quite well of its applicability for pre-production
> > hardware: it was used to provide a TPM implemnentation for a RISC-V SoC
> > running on FPGA with no TPM HW implementation at the time.
> > 
> > Signed-off-by: Jarkko Sakkinen <[email protected]>
> > ---
> > Bumped into this in my archives so thought to make it available just in
> > case anyone is interested.
> > ---
> >  .../admin-guide/kernel-parameters.txt         | 14 +++++
> >  drivers/char/tpm/tpm_vtpm_proxy.c             | 51 +++++++++++++++++++
> >  2 files changed, 65 insertions(+)
> > 
> > diff --git a/Documentation/admin-guide/kernel-parameters.txt 
> > b/Documentation/admin-guide/kernel-parameters.txt
> > index f1f2c0874da9..e062de99480e 100644
> > --- a/Documentation/admin-guide/kernel-parameters.txt
> > +++ b/Documentation/admin-guide/kernel-parameters.txt
> > @@ -7230,6 +7230,20 @@
> >                     defined by Trusted Computing Group (TCG) see
> >                     
> > https://trustedcomputinggroup.org/resource/pc-client-platform-tpm-profile-ptp-specification/
> >  
> > +   tpm_vtpm_proxy.supplicant= [TPM]
> > +                   When defined, this field must contain a legit path to a
> 
>                                                               legitimate
> or                                                            valid
> 
> > +                   program emulating a TPM chip, which will be started
> > +                   during the driver initialization, thus providing a
> > +                   mechanism for the user space have an emulated TPM from
> > +                   the get go. Kernel prepares the process with a file
> 
>                           get-go.
> or just don't use slang terms.
> 
> > +                   pre-opened file descriptor in the index 3 for
> > +                   /dev/vtpmx.
> > +
> > +                   An emulator can optionally provide support for
> > +                   localities by reacting to the vendor command defined
> > +                   by the driver: 0x20001000. Its payload is a single
> > +                   byte containing the new locality.
> > +
> >     tp_printk       [FTRACE]
> >                     Have the tracepoints sent to printk as well as the
> >                     tracing ring buffer. This is useful for early boot up
> 
> thanks.
> -- 
> ~Randy
> 

Thank you for reviewing this (especially given how bad shape it was)!

BR, Jarkko

Reply via email to