diff options
author | njl <njl@FreeBSD.org> | 2003-12-23 18:26:53 +0000 |
---|---|---|
committer | njl <njl@FreeBSD.org> | 2003-12-23 18:26:53 +0000 |
commit | 891932b7f3ada94905ef6cc670008b2cb0e17441 (patch) | |
tree | 4e9612d54c8f5e3be4352a3406793ac7016e1c19 /sys/dev/acpica/acpi_package.c | |
parent | 29de6d4f904c6f1388be9629cf9eba37fc24277e (diff) | |
download | FreeBSD-src-891932b7f3ada94905ef6cc670008b2cb0e17441.zip FreeBSD-src-891932b7f3ada94905ef6cc670008b2cb0e17441.tar.gz |
Remove the device_t parameter from package routines that only used it to
print an error message. Update all callers of the package routines.
Diffstat (limited to 'sys/dev/acpica/acpi_package.c')
-rw-r--r-- | sys/dev/acpica/acpi_package.c | 54 |
1 files changed, 19 insertions, 35 deletions
diff --git a/sys/dev/acpica/acpi_package.c b/sys/dev/acpica/acpi_package.c index d1d1448..0011308 100644 --- a/sys/dev/acpica/acpi_package.c +++ b/sys/dev/acpica/acpi_package.c @@ -44,47 +44,41 @@ */ int -acpi_PkgInt(device_t dev, ACPI_OBJECT *res, int idx, ACPI_INTEGER *dst) +acpi_PkgInt(ACPI_OBJECT *res, int idx, ACPI_INTEGER *dst) { ACPI_OBJECT *obj; obj = &res->Package.Elements[idx]; - if (obj == NULL || obj->Type != ACPI_TYPE_INTEGER) { - ACPI_VPRINT(dev, acpi_device_get_parent_softc(dev), - "PkgInt error, pkg[%d] at %d %p\n", - res->Package.Count, idx, obj); - return (-1); - } - + if (obj == NULL || obj->Type != ACPI_TYPE_INTEGER) + return (EINVAL); *dst = obj->Integer.Value; + return (0); } int -acpi_PkgInt32(device_t dev, ACPI_OBJECT *res, int idx, uint32_t *dst) +acpi_PkgInt32(ACPI_OBJECT *res, int idx, uint32_t *dst) { - ACPI_INTEGER tmp; - int error; + ACPI_INTEGER tmp; + int error; - error = acpi_PkgInt(dev, res, idx, &tmp); + error = acpi_PkgInt(res, idx, &tmp); if (error == 0) *dst = (uint32_t)tmp; + return (error); } int -acpi_PkgStr(device_t dev, ACPI_OBJECT *res, int idx, void *dst, size_t size) +acpi_PkgStr(ACPI_OBJECT *res, int idx, void *dst, size_t size) { ACPI_OBJECT *obj; void *ptr; size_t length; obj = &res->Package.Elements[idx]; - if (obj == NULL) { - ACPI_VPRINT(dev, acpi_device_get_parent_softc(dev), - "PkgStr NULL object at %d\n", idx); - return (-1); - } + if (obj == NULL) + return (EINVAL); bzero(dst, sizeof(dst)); switch (obj->Type) { @@ -97,17 +91,12 @@ acpi_PkgStr(device_t dev, ACPI_OBJECT *res, int idx, void *dst, size_t size) length = obj->Buffer.Length; break; default: - ACPI_VPRINT(dev, acpi_device_get_parent_softc(dev), - "PkgStr: invalid object type %d at %d\n", obj->Type, idx); - return (-1); + return (EINVAL); } /* Make sure string will fit, including terminating NUL */ - if (++length > size) { - ACPI_VPRINT(dev, acpi_device_get_parent_softc(dev), - "PkgStr string too long (%zu bytes) at %d\n", length, idx); - return (-1); - } + if (++length > size) + return (E2BIG); strlcpy(dst, ptr, length); return (0); @@ -115,7 +104,7 @@ acpi_PkgStr(device_t dev, ACPI_OBJECT *res, int idx, void *dst, size_t size) int acpi_PkgGas(device_t dev, ACPI_OBJECT *res, int idx, int *rid, - struct resource **dst) + struct resource **dst) { ACPI_GENERIC_ADDRESS gas; ACPI_OBJECT *obj; @@ -124,18 +113,13 @@ acpi_PkgGas(device_t dev, ACPI_OBJECT *res, int idx, int *rid, if (obj == NULL || obj->Type != ACPI_TYPE_BUFFER || obj->Buffer.Length < sizeof(ACPI_GENERIC_ADDRESS) + 3) { - ACPI_VPRINT(dev, acpi_device_get_parent_softc(dev), - "PkgGas error at %d\n", idx); - return (-1); + return (EINVAL); } memcpy(&gas, obj->Buffer.Pointer + 3, sizeof(gas)); *dst = acpi_bus_alloc_gas(dev, rid, &gas); - if (*dst == NULL) { - ACPI_VPRINT(dev, acpi_device_get_parent_softc(dev), - "PkgGas error at %d\n", idx); - return (-1); - } + if (*dst == NULL) + return (ENXIO); return (0); } |