git: 2a23faee4f12 - main - acpi_bus_alloc_gas: Pass rid by value
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 09 Dec 2025 20:12:34 UTC
The branch main has been updated by jhb:
URL: https://cgit.FreeBSD.org/src/commit/?id=2a23faee4f12cebf57fd1716bf846a53cc737c3b
commit 2a23faee4f12cebf57fd1716bf846a53cc737c3b
Author: John Baldwin <jhb@FreeBSD.org>
AuthorDate: 2025-12-09 20:02:43 +0000
Commit: John Baldwin <jhb@FreeBSD.org>
CommitDate: 2025-12-09 20:02:43 +0000
acpi_bus_alloc_gas: Pass rid by value
Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D53405
---
sys/dev/acpica/acpi.c | 8 ++++----
sys/dev/acpica/acpi_apei.c | 4 ++--
sys/dev/acpica/acpi_cpu.c | 4 ++--
sys/dev/acpica/acpi_package.c | 2 +-
sys/dev/acpica/acpi_throttle.c | 4 ++--
sys/dev/acpica/acpivar.h | 2 +-
sys/dev/wdatwd/wdatwd.c | 2 +-
7 files changed, 13 insertions(+), 13 deletions(-)
diff --git a/sys/dev/acpica/acpi.c b/sys/dev/acpica/acpi.c
index 408570f53a21..d2ccdfbf6535 100644
--- a/sys/dev/acpica/acpi.c
+++ b/sys/dev/acpica/acpi.c
@@ -1770,13 +1770,13 @@ acpi_unmap_resource(device_t bus, device_t child, struct resource *r,
/* Allocate an IO port or memory resource, given its GAS. */
int
-acpi_bus_alloc_gas(device_t dev, int *type, int *rid, ACPI_GENERIC_ADDRESS *gas,
+acpi_bus_alloc_gas(device_t dev, int *type, int rid, ACPI_GENERIC_ADDRESS *gas,
struct resource **res, u_int flags)
{
int error, res_type;
error = ENOMEM;
- if (type == NULL || rid == NULL || gas == NULL || res == NULL)
+ if (type == NULL || gas == NULL || res == NULL)
return (EINVAL);
/* We only support memory and IO spaces. */
@@ -1802,14 +1802,14 @@ acpi_bus_alloc_gas(device_t dev, int *type, int *rid, ACPI_GENERIC_ADDRESS *gas,
if (gas->Address == 0 || gas->BitWidth == 0)
return (EINVAL);
- bus_set_resource(dev, res_type, *rid, gas->Address,
+ bus_set_resource(dev, res_type, rid, gas->Address,
gas->BitWidth / 8);
*res = bus_alloc_resource_any(dev, res_type, rid, RF_ACTIVE | flags);
if (*res != NULL) {
*type = res_type;
error = 0;
} else
- bus_delete_resource(dev, res_type, *rid);
+ bus_delete_resource(dev, res_type, rid);
return (error);
}
diff --git a/sys/dev/acpica/acpi_apei.c b/sys/dev/acpica/acpi_apei.c
index 624c81ad1b4f..0d23b504cb60 100644
--- a/sys/dev/acpica/acpi_apei.c
+++ b/sys/dev/acpica/acpi_apei.c
@@ -700,7 +700,7 @@ apei_attach(device_t dev)
rid = 0;
TAILQ_FOREACH(ge, &sc->ges, link) {
ge->res_rid = rid++;
- acpi_bus_alloc_gas(dev, &ge->res_type, &ge->res_rid,
+ acpi_bus_alloc_gas(dev, &ge->res_type, ge->res_rid,
&ge->v1.ErrorStatusAddress, &ge->res, 0);
if (ge->res) {
ge->buf = pmap_mapdev_attr(READ8(ge->res, 0),
@@ -710,7 +710,7 @@ apei_attach(device_t dev)
}
if (ge->v1.Header.Type == ACPI_HEST_TYPE_GENERIC_ERROR_V2) {
ge->res2_rid = rid++;
- acpi_bus_alloc_gas(dev, &ge->res2_type, &ge->res2_rid,
+ acpi_bus_alloc_gas(dev, &ge->res2_type, ge->res2_rid,
&ge->v2.ReadAckRegister, &ge->res2, RF_SHAREABLE);
if (ge->res2 == NULL)
device_printf(dev, "Can't allocate ack resource.\n");
diff --git a/sys/dev/acpica/acpi_cpu.c b/sys/dev/acpica/acpi_cpu.c
index 2cd6c8bd4758..37246890fd79 100644
--- a/sys/dev/acpica/acpi_cpu.c
+++ b/sys/dev/acpica/acpi_cpu.c
@@ -732,7 +732,7 @@ acpi_cpu_generic_cx_probe(struct acpi_cpu_softc *sc)
if (AcpiGbl_FADT.C2Latency <= 100) {
gas.Address = sc->cpu_p_blk + 4;
cx_ptr->res_rid = 0;
- acpi_bus_alloc_gas(sc->cpu_dev, &cx_ptr->res_type, &cx_ptr->res_rid,
+ acpi_bus_alloc_gas(sc->cpu_dev, &cx_ptr->res_type, cx_ptr->res_rid,
&gas, &cx_ptr->p_lvlx, RF_SHAREABLE);
if (cx_ptr->p_lvlx != NULL) {
cx_ptr->type = ACPI_STATE_C2;
@@ -749,7 +749,7 @@ acpi_cpu_generic_cx_probe(struct acpi_cpu_softc *sc)
if (AcpiGbl_FADT.C3Latency <= 1000 && !(cpu_quirks & CPU_QUIRK_NO_C3)) {
gas.Address = sc->cpu_p_blk + 5;
cx_ptr->res_rid = 1;
- acpi_bus_alloc_gas(sc->cpu_dev, &cx_ptr->res_type, &cx_ptr->res_rid,
+ acpi_bus_alloc_gas(sc->cpu_dev, &cx_ptr->res_type, cx_ptr->res_rid,
&gas, &cx_ptr->p_lvlx, RF_SHAREABLE);
if (cx_ptr->p_lvlx != NULL) {
cx_ptr->type = ACPI_STATE_C3;
diff --git a/sys/dev/acpica/acpi_package.c b/sys/dev/acpica/acpi_package.c
index 4e64fdbbab2b..e0a3b40e507e 100644
--- a/sys/dev/acpica/acpi_package.c
+++ b/sys/dev/acpica/acpi_package.c
@@ -126,7 +126,7 @@ acpi_PkgGas(device_t dev, ACPI_OBJECT *res, int idx, int *type, int *rid,
memcpy(&gas, obj->Buffer.Pointer + 3, sizeof(gas));
- return (acpi_bus_alloc_gas(dev, type, rid, &gas, dst, flags));
+ return (acpi_bus_alloc_gas(dev, type, *rid, &gas, dst, flags));
}
int
diff --git a/sys/dev/acpica/acpi_throttle.c b/sys/dev/acpica/acpi_throttle.c
index 8b2919c71073..ce8b7c411859 100644
--- a/sys/dev/acpica/acpi_throttle.c
+++ b/sys/dev/acpica/acpi_throttle.c
@@ -275,7 +275,7 @@ acpi_throttle_evaluate(struct acpi_throttle_softc *sc)
return (ENXIO);
}
memcpy(&gas, obj.Buffer.Pointer + 3, sizeof(gas));
- acpi_bus_alloc_gas(sc->cpu_dev, &sc->cpu_p_type, &thr_rid,
+ acpi_bus_alloc_gas(sc->cpu_dev, &sc->cpu_p_type, thr_rid,
&gas, &sc->cpu_p_cnt, 0);
if (sc->cpu_p_cnt != NULL && bootverbose) {
device_printf(sc->cpu_dev, "P_CNT from _PTC %#jx\n",
@@ -295,7 +295,7 @@ acpi_throttle_evaluate(struct acpi_throttle_softc *sc)
gas.Address = sc->cpu_p_blk;
gas.SpaceId = ACPI_ADR_SPACE_SYSTEM_IO;
gas.BitWidth = 32;
- acpi_bus_alloc_gas(sc->cpu_dev, &sc->cpu_p_type, &thr_rid,
+ acpi_bus_alloc_gas(sc->cpu_dev, &sc->cpu_p_type, thr_rid,
&gas, &sc->cpu_p_cnt, 0);
if (sc->cpu_p_cnt != NULL) {
if (bootverbose)
diff --git a/sys/dev/acpica/acpivar.h b/sys/dev/acpica/acpivar.h
index 71d8e46ab310..4da1a5a35a41 100644
--- a/sys/dev/acpica/acpivar.h
+++ b/sys/dev/acpica/acpivar.h
@@ -419,7 +419,7 @@ int acpi_parse_prw(ACPI_HANDLE h, struct acpi_prw_data *prw);
ACPI_STATUS acpi_Startup(void);
void acpi_UserNotify(const char *subsystem, ACPI_HANDLE h,
uint8_t notify);
-int acpi_bus_alloc_gas(device_t dev, int *type, int *rid,
+int acpi_bus_alloc_gas(device_t dev, int *type, int rid,
ACPI_GENERIC_ADDRESS *gas, struct resource **res,
u_int flags);
void acpi_walk_subtables(void *first, void *end,
diff --git a/sys/dev/wdatwd/wdatwd.c b/sys/dev/wdatwd/wdatwd.c
index c67e37281307..8873dd74103c 100644
--- a/sys/dev/wdatwd/wdatwd.c
+++ b/sys/dev/wdatwd/wdatwd.c
@@ -612,7 +612,7 @@ wdatwd_probe(device_t dev)
int type, rid = 0;
struct resource *res;
- if (acpi_bus_alloc_gas(dev, &type, &rid,
+ if (acpi_bus_alloc_gas(dev, &type, rid,
&((ACPI_WDAT_ENTRY *)(wdat + 1))->RegisterRegion,
&res, 0))
return (ENXIO);