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@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.
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.