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

From: Elliot Berman
Date: Tue Oct 11 2022 - 14:23:25 EST




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@xxxxxxxxxxx>
---
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@xxxxxxxxxxxxxxx
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@xxxxxxxxxx>
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