Re: [PATCH 2/6] virt: bao: Add Bao IPC shared memory driver
From: João Peixoto
Date: Fri Aug 07 2026 - 03:47:43 EST
On 1/14/26 20:37, Andrew Jones wrote:
On Wed, Jan 07, 2026 at 04:28:25PM +0000,joaopeixoto@xxxxxxxxx wrote:Agreed. In v3 the IPC hypercall ID is a shared constant, so
...
diff --git a/arch/riscv/include/asm/bao.h b/arch/riscv/include/asm/bao.hJust let lines like these stick out. We have up to 100 chars and these
new file mode 100644
index 000000000000..35658f37e1bd
--- /dev/null
+++ b/arch/riscv/include/asm/bao.h
@@ -0,0 +1,31 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+/*
+ * Bao Hypervisor Hypercall Interface
+ *
+ * Copyright (c) Bao Project and Contributors. All rights reserved.
+ *
+ * Authors:
+ * João Peixoto<joaopeixoto@xxxxxxxxx>
+ * José Martins<jose@xxxxxxxxx>
+ * David Cerdeira<davidmcerdeira@xxxxxxxxx>
+ */
+
+#ifndef __ASM_RISCV_BAO_H
+#define __ASM_RISCV_BAO_H
+
+#include <asm/sbi.h>
+
+#define BAO_SBI_EXT_ID 0x08000ba0
+
+static inline unsigned long bao_ipcshmem_hypercall(unsigned long hypercall_id,
+ unsigned long ipcshmem_id)
+{
+ struct sbiret ret;
+
+ ret = sbi_ecall(BAO_SBI_EXT_ID, hypercall_id, ipcshmem_id, 0, 0, 0, 0,
+ 0);
types of few-char wraps are the most annoying.
Thanks,
drew
bao_ipcshmem_hypercall() now takes a single argument and its declaration
fits on one line, and I unwrapped the remaining few-char wraps. For example
the RISC-V ecall is now a single line:
ret = sbi_ecall(BAO_SBI_EXT_ID, BAO_IPCSHMEM_HYPERCALL_ID, ipcshmem_id, 0, 0, 0, 0, 0);
Thanks.