Re: [PATCH v5 03/13] gunyah: Common types and error codes for Gunyah hypercalls

Greg Kroah-Hartman
2022-10-11T18:48:02Z

On Tue, Oct 11, 2022 at 11:21:36AM -0700, Elliot Berman wrote:
>
>
> On 10/11/2022 12:21 AM, Greg Kroah-Hartman wrote:
> > On Mon, Oct 10, 2022 at 05:08:30PM -0700, Elliot Berman wrote:
> > > Add architecture-independent standard error codes, types, and macros for
> > > Gunyah hypercalls.
> > >
> > > Signed-off-by: Elliot Berman <quic_eberman@quicinc.com>
> > > ---
> > > MAINTAINERS | 1 +
> > > include/asm-generic/gunyah.h | 74 ++++++++++++++++++++++++++++++++++++
> > > 2 files changed, 75 insertions(+)
> > > create mode 100644 include/asm-generic/gunyah.h
> > >
> > > diff --git a/MAINTAINERS b/MAINTAINERS
> > > index ef6de7599d98..4fe8cec61551 100644
> > > --- a/MAINTAINERS
> > > +++ b/MAINTAINERS
> > > @@ -8886,6 +8886,7 @@ L: linux-arm-msm@vger.kernel.org
> > > S: Supported
> > > F: Documentation/devicetree/bindings/firmware/gunyah-hypervisor.yaml
> > > F: Documentation/virt/gunyah/
> > > +F: include/asm-generic/gunyah.h
> > > HABANALABS PCI DRIVER
> > > M: Oded Gabbay <ogabbay@kernel.org>
> > > diff --git a/include/asm-generic/gunyah.h b/include/asm-generic/gunyah.h
> > > new file mode 100644
> > > index 000000000000..64a02dd3b5ad
> > > --- /dev/null
> > > +++ b/include/asm-generic/gunyah.h
> >
> > Why not include/linux/gunyah.h? Why asm-generic? This is not an
> > architecture.
> >
>
> My idea here is to differentiate between code that interacts with hypercalls
> and code that uses the abstractions provided on top of those hypercalls.
> include/asm-generic/gunyah.h contains architecture-independent definitions
> for hypercalls. Hypercalls are architecture-specific.
>
> For instance, I wanted to avoid a header file that mixes the definitions for
> the message-queue mailbox with the hypercall definitions that the
> message-queue mailbox driver itself uses.
>
> I can put it all in include/linux/gunyah.h and delineate with some clear
> comments, but I initially felt it would be better to have separate header
> file.

Please put it all in one place, this is just one tiny driver and should
not abuse the asm-generic location at all, no one is only going to want
just this one file, they are going to need the whole thing or nothing.

thanks,

greg k-h