Re: [PATCH] tpm: move struct tpm_class_ops to drivers/char/tpm/tpm.h
From: Jarkko Sakkinen
Date: Mon Sep 05 2016 - 01:44:45 EST
On Sun, Sep 04, 2016 at 02:14:06PM -0600, Jason Gunthorpe wrote:
> On Sat, Sep 03, 2016 at 09:26:05AM +0300, Jarkko Sakkinen wrote:
> > >
> > > OK, how would one get the chip instance?
>
> Most subsystems have a get function that returns a kref'd pointer. For
> TPM all we really need today is a 'get_default_tpm_for_ns' kind of
> function.
Sorry, but I have no idea what you are talking about.
This does not imply that these structure definitions need to be in
include/linux/tpm.h since you are talking something that does not exist.
> > This still doesn't explain why moving the structures inside the driver
> > would be wrong. Even if outside callers would use a pointer the
> > structure could be opaque.
>
> For instance, if we did a get function then the 'put' function would
> be an inline around dev_put and that needs to see inside the chip.
I do not see any get/put functionality in include/linux/tpm.h.
> This is a well trodden pattern in the kernel, there is no reason to do
> something different for tpm.
/Jarkko