aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Baldwin <jhb@FreeBSD.org>2026-02-24 20:30:36 +0000
committerJohn Baldwin <jhb@FreeBSD.org>2026-02-24 20:30:36 +0000
commit591127bd4839d00fc218d74096ca07088ad30703 (patch)
tree9ad9b7b8c2c5d22e93f8a51e488a5406755373a7
parent0bb867e9f56500e30948ea7c440dd1166097df7f (diff)
acpi: Use __BUS_ACCESSOR_DEFAULT and __BUS_ACCESSOR for IVARs
- Use __BUS_ACCESSOR_DEFAULT for the global handle IVAR to preserve existing behavior for acpi_get_handle. - Use __BUS_ACCESSOR for the private ACPI IVARs as these are only used with direct children of acpi0. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D55355
-rw-r--r--sys/dev/acpica/acpivar.h29
1 files changed, 4 insertions, 25 deletions
diff --git a/sys/dev/acpica/acpivar.h b/sys/dev/acpica/acpivar.h
index 336f6ed1dc94..aa8d5bd0971f 100644
--- a/sys/dev/acpica/acpivar.h
+++ b/sys/dev/acpica/acpivar.h
@@ -289,31 +289,10 @@ enum {
*/
#define ACPI_DEV_DOMAIN_UNKNOWN (-1)
-/*
- * Accessor functions for our ivars. Default value for BUS_READ_IVAR is
- * (type) 0. The <sys/bus.h> accessor functions don't check return values.
- */
-#define __ACPI_BUS_ACCESSOR(varp, var, ivarp, ivar, type) \
- \
-static __inline type varp ## _get_ ## var(device_t dev) \
-{ \
- uintptr_t v = 0; \
- BUS_READ_IVAR(device_get_parent(dev), dev, \
- ivarp ## _IVAR_ ## ivar, &v); \
- return ((type) v); \
-} \
- \
-static __inline void varp ## _set_ ## var(device_t dev, type t) \
-{ \
- uintptr_t v = (uintptr_t) t; \
- BUS_WRITE_IVAR(device_get_parent(dev), dev, \
- ivarp ## _IVAR_ ## ivar, v); \
-}
-
-__ACPI_BUS_ACCESSOR(acpi, handle, ACPI, HANDLE, ACPI_HANDLE)
-__ACPI_BUS_ACCESSOR(acpi, private, ACPI, PRIVATE, void *)
-__ACPI_BUS_ACCESSOR(acpi, flags, ACPI, FLAGS, int)
-__ACPI_BUS_ACCESSOR(acpi, domain, ACPI, DOMAIN, int)
+__BUS_ACCESSOR_DEFAULT(acpi, handle, ACPI, HANDLE, ACPI_HANDLE, NULL)
+__BUS_ACCESSOR(acpi, private, ACPI, PRIVATE, void *)
+__BUS_ACCESSOR(acpi, flags, ACPI, FLAGS, int)
+__BUS_ACCESSOR(acpi, domain, ACPI, DOMAIN, int)
void acpi_fake_objhandler(ACPI_HANDLE h, void *data);
static __inline device_t