[PATCH v3 2/7] lib: utils: Include more headers directly
Samuel Holland
samuel.holland at sifive.com
Wed Oct 14 04:30:19 PDT 2026
Most drivers include fdt_helper.h, which pulls in sbi_domain.h. This
pulls in several other headers like sbi_bitops.h. Include the required
headers directly from each driver so that they will still compile after
fdt_helper.h stops including sbi_domain.h.
Signed-off-by: Samuel Holland <samuel.holland at sifive.com>
---
Changes in v3:
- New patch for v3
include/sbi_utils/serial/uart8250.h | 1 +
lib/utils/cache/fdt_cmo_helper.c | 1 +
lib/utils/cache/fdt_sifive_ec.c | 1 +
lib/utils/cache/fdt_sifive_pl2.c | 1 +
lib/utils/cppc/fdt_cppc_rpmi.c | 1 +
lib/utils/hsm/fdt_hsm_andes_atcsmu.c | 1 +
lib/utils/hsm/fdt_hsm_sifive_tmc0.c | 1 +
lib/utils/i2c/fdt_i2c_spacemit.c | 1 +
lib/utils/mailbox/fdt_mailbox_rpmi_shmem.c | 1 +
lib/utils/mpxy/fdt_mpxy_rpmi_mbox.c | 1 +
lib/utils/mpxy/fdt_mpxy_rpmi_mm.c | 1 +
lib/utils/regmap/fdt_regmap_syscon.c | 1 +
lib/utils/reset/fdt_reset_atcwdt200.c | 1 +
platform/generic/eswin/eic770x.c | 9 +++++----
platform/generic/sifive/sifive_dev_platform.c | 1 +
15 files changed, 19 insertions(+), 4 deletions(-)
diff --git a/include/sbi_utils/serial/uart8250.h b/include/sbi_utils/serial/uart8250.h
index 78c0e614..ed13418a 100644
--- a/include/sbi_utils/serial/uart8250.h
+++ b/include/sbi_utils/serial/uart8250.h
@@ -10,6 +10,7 @@
#ifndef __SERIAL_UART8250_H__
#define __SERIAL_UART8250_H__
+#include <sbi/sbi_bitops.h>
#include <sbi/sbi_types.h>
#define UART_CAP_UUE BIT(0) /* Check UUE capability for XScale PXA UARTs */
diff --git a/lib/utils/cache/fdt_cmo_helper.c b/lib/utils/cache/fdt_cmo_helper.c
index 3ab8abe6..bdc5fe19 100644
--- a/lib/utils/cache/fdt_cmo_helper.c
+++ b/lib/utils/cache/fdt_cmo_helper.c
@@ -6,6 +6,7 @@
#include <libfdt.h>
#include <sbi/sbi_error.h>
+#include <sbi/sbi_hartmask.h>
#include <sbi/sbi_scratch.h>
#include <sbi_utils/cache/fdt_cache.h>
#include <sbi_utils/cache/fdt_cmo_helper.h>
diff --git a/lib/utils/cache/fdt_sifive_ec.c b/lib/utils/cache/fdt_sifive_ec.c
index dda0d10d..3ab863f0 100644
--- a/lib/utils/cache/fdt_sifive_ec.c
+++ b/lib/utils/cache/fdt_sifive_ec.c
@@ -6,6 +6,7 @@
#include <libfdt.h>
#include <sbi/riscv_io.h>
+#include <sbi/sbi_domain.h>
#include <sbi/sbi_heap.h>
#include <sbi/sbi_platform.h>
#include <sbi_utils/cache/fdt_cache.h>
diff --git a/lib/utils/cache/fdt_sifive_pl2.c b/lib/utils/cache/fdt_sifive_pl2.c
index 8069e96a..3f8a294b 100644
--- a/lib/utils/cache/fdt_sifive_pl2.c
+++ b/lib/utils/cache/fdt_sifive_pl2.c
@@ -6,6 +6,7 @@
#include <libfdt.h>
#include <sbi/riscv_io.h>
+#include <sbi/sbi_bitops.h>
#include <sbi/sbi_error.h>
#include <sbi/sbi_heap.h>
#include <sbi_utils/cache/fdt_cache.h>
diff --git a/lib/utils/cppc/fdt_cppc_rpmi.c b/lib/utils/cppc/fdt_cppc_rpmi.c
index 15c89351..9945286d 100644
--- a/lib/utils/cppc/fdt_cppc_rpmi.c
+++ b/lib/utils/cppc/fdt_cppc_rpmi.c
@@ -10,6 +10,7 @@
#include <libfdt.h>
#include <sbi/riscv_io.h>
#include <sbi/sbi_cppc.h>
+#include <sbi/sbi_domain.h>
#include <sbi/sbi_ecall_interface.h>
#include <sbi/sbi_scratch.h>
#include <sbi/sbi_timer.h>
diff --git a/lib/utils/hsm/fdt_hsm_andes_atcsmu.c b/lib/utils/hsm/fdt_hsm_andes_atcsmu.c
index 2885a983..267f64fc 100644
--- a/lib/utils/hsm/fdt_hsm_andes_atcsmu.c
+++ b/lib/utils/hsm/fdt_hsm_andes_atcsmu.c
@@ -8,6 +8,7 @@
#include <libfdt.h>
#include <sbi/riscv_io.h>
#include <sbi/sbi_console.h>
+#include <sbi/sbi_domain.h>
#include <sbi/sbi_ecall_interface.h>
#include <sbi/sbi_error.h>
#include <sbi/sbi_hart.h>
diff --git a/lib/utils/hsm/fdt_hsm_sifive_tmc0.c b/lib/utils/hsm/fdt_hsm_sifive_tmc0.c
index 2690a638..911f55b1 100644
--- a/lib/utils/hsm/fdt_hsm_sifive_tmc0.c
+++ b/lib/utils/hsm/fdt_hsm_sifive_tmc0.c
@@ -14,6 +14,7 @@
#include <sbi/sbi_heap.h>
#include <sbi/sbi_hsm.h>
#include <sbi/sbi_ipi.h>
+#include <sbi/sbi_list.h>
#include <sbi_utils/cache/fdt_cmo_helper.h>
#include <sbi_utils/fdt/fdt_driver.h>
#include <sbi_utils/fdt/fdt_helper.h>
diff --git a/lib/utils/i2c/fdt_i2c_spacemit.c b/lib/utils/i2c/fdt_i2c_spacemit.c
index 9009b6b6..a8a0d832 100644
--- a/lib/utils/i2c/fdt_i2c_spacemit.c
+++ b/lib/utils/i2c/fdt_i2c_spacemit.c
@@ -8,6 +8,7 @@
*/
#include <sbi/riscv_io.h>
+#include <sbi/sbi_bitops.h>
#include <sbi/sbi_error.h>
#include <sbi/sbi_heap.h>
#include <sbi/sbi_timer.h>
diff --git a/lib/utils/mailbox/fdt_mailbox_rpmi_shmem.c b/lib/utils/mailbox/fdt_mailbox_rpmi_shmem.c
index cf975658..0c256bd4 100644
--- a/lib/utils/mailbox/fdt_mailbox_rpmi_shmem.c
+++ b/lib/utils/mailbox/fdt_mailbox_rpmi_shmem.c
@@ -11,6 +11,7 @@
#include <libfdt.h>
#include <sbi/sbi_console.h>
+#include <sbi/sbi_domain.h>
#include <sbi/sbi_error.h>
#include <sbi/sbi_heap.h>
#include <sbi/sbi_timer.h>
diff --git a/lib/utils/mpxy/fdt_mpxy_rpmi_mbox.c b/lib/utils/mpxy/fdt_mpxy_rpmi_mbox.c
index 825ac9b3..e08c080e 100644
--- a/lib/utils/mpxy/fdt_mpxy_rpmi_mbox.c
+++ b/lib/utils/mpxy/fdt_mpxy_rpmi_mbox.c
@@ -9,6 +9,7 @@
*/
#include <libfdt.h>
+#include <sbi/sbi_domain.h>
#include <sbi/sbi_error.h>
#include <sbi/sbi_heap.h>
#include <sbi_utils/fdt/fdt_helper.h>
diff --git a/lib/utils/mpxy/fdt_mpxy_rpmi_mm.c b/lib/utils/mpxy/fdt_mpxy_rpmi_mm.c
index 7185f3f3..dd907bbb 100644
--- a/lib/utils/mpxy/fdt_mpxy_rpmi_mm.c
+++ b/lib/utils/mpxy/fdt_mpxy_rpmi_mm.c
@@ -8,6 +8,7 @@
* Sunil V L <sunilvl at oss.qualcomm.com>
*/
+#include <sbi/sbi_domain.h>
#include <sbi_utils/mpxy/fdt_mpxy_rpmi_mbox.h>
#include <sbi_utils/mailbox/rpmi_mailbox.h>
diff --git a/lib/utils/regmap/fdt_regmap_syscon.c b/lib/utils/regmap/fdt_regmap_syscon.c
index 59cd5ee5..b5764312 100644
--- a/lib/utils/regmap/fdt_regmap_syscon.c
+++ b/lib/utils/regmap/fdt_regmap_syscon.c
@@ -11,6 +11,7 @@
#include <sbi/riscv_asm.h>
#include <sbi/riscv_io.h>
#include <sbi/sbi_byteorder.h>
+#include <sbi/sbi_domain.h>
#include <sbi/sbi_error.h>
#include <sbi/sbi_heap.h>
#include <sbi_utils/fdt/fdt_helper.h>
diff --git a/lib/utils/reset/fdt_reset_atcwdt200.c b/lib/utils/reset/fdt_reset_atcwdt200.c
index 5dad8ac9..7cd31cad 100644
--- a/lib/utils/reset/fdt_reset_atcwdt200.c
+++ b/lib/utils/reset/fdt_reset_atcwdt200.c
@@ -9,6 +9,7 @@
#include <sbi/sbi_ecall_interface.h>
#include <sbi/sbi_error.h>
#include <sbi/sbi_hart.h>
+#include <sbi/sbi_scratch.h>
#include <sbi/sbi_system.h>
#include <sbi_utils/fdt/fdt_driver.h>
#include <sbi_utils/fdt/fdt_helper.h>
diff --git a/platform/generic/eswin/eic770x.c b/platform/generic/eswin/eic770x.c
index c71198a8..ca48b39e 100644
--- a/platform/generic/eswin/eic770x.c
+++ b/platform/generic/eswin/eic770x.c
@@ -8,13 +8,14 @@
#include <platform_override.h>
#include <sbi/riscv_io.h>
#include <sbi/sbi_console.h>
-#include <sbi/sbi_system.h>
-#include <sbi/sbi_math.h>
+#include <sbi/sbi_domain.h>
#include <sbi/sbi_hart.h>
-#include <sbi/sbi_hsm.h>
-#include <sbi/sbi_ipi.h>
#include <sbi/sbi_hart_pmp.h>
#include <sbi/sbi_hart_protection.h>
+#include <sbi/sbi_hsm.h>
+#include <sbi/sbi_ipi.h>
+#include <sbi/sbi_math.h>
+#include <sbi/sbi_system.h>
#include <sbi_utils/hsm/fdt_hsm_sifive_inst.h>
#include <eswin/eic770x.h>
#include <eswin/hfp.h>
diff --git a/platform/generic/sifive/sifive_dev_platform.c b/platform/generic/sifive/sifive_dev_platform.c
index 579d4651..a8d2889a 100644
--- a/platform/generic/sifive/sifive_dev_platform.c
+++ b/platform/generic/sifive/sifive_dev_platform.c
@@ -5,6 +5,7 @@
*/
#include <platform_override.h>
+#include <sbi/sbi_domain.h>
#include <sbi/sbi_hart.h>
#include <sbi/sbi_scratch.h>
--
2.52.0
More information about the opensbi
mailing list