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

Elliot Berman
2022-10-11T18:23:25Z

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.

Thanks,
Elliot