SPMI parsing has been disabled on ARM because it relied on unsafe trolling through /dev/mem to find ACPI tables. Now that we support using the sysfs interface, it is safe to enable everywhere. Keep the fallback /dev/mem disabled on ARM though. --- ChangeLog | 3 +++ libfreeipmi/locate/ipmi-locate-acpi-spmi.c | 7 +++---- 2 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/ChangeLog b/ChangeLog index 4cce75cf8..55772053e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -7,6 +7,9 @@ * libfreeipmi/locate/ipmi-locate-acpi-spmi.c: Add support for parsing SPMI tables exposed via sysfs. + * libfreeipmi/locate/ipmi-locate-acpi-spmi.c: Allow sysfs SPMI + parsing on ARM platforms. + 2018-07-31 Albert Chu <ch...@llnl.gov> * libfreeipmi/locate/ipmi-locate-acpi-spmi.c diff --git a/libfreeipmi/locate/ipmi-locate-acpi-spmi.c b/libfreeipmi/locate/ipmi-locate-acpi-spmi.c index 503d4528e..a89b16af6 100644 --- a/libfreeipmi/locate/ipmi-locate-acpi-spmi.c +++ b/libfreeipmi/locate/ipmi-locate-acpi-spmi.c @@ -1296,6 +1296,9 @@ _ipmi_acpi_get_table_dev_mem (ipmi_locate_ctx_t ctx, { 0, "", 0} }; +#if defined(__arm__) || defined (__aarch64__) + return (-1); +#endif assert (ctx); assert (ctx->magic == IPMI_LOCATE_CTX_MAGIC); assert (signature); @@ -1639,9 +1642,6 @@ ipmi_locate_acpi_spmi_get_device_info (ipmi_locate_ctx_t ctx, uint64_t val; int rv = -1; -#if defined(__arm__) || defined(__aarch64__) - return (-1); -#else if (!ctx || ctx->magic != IPMI_LOCATE_CTX_MAGIC) { ERR_TRACE (ipmi_locate_ctx_errormsg (ctx), ipmi_locate_ctx_errnum (ctx)); @@ -1817,5 +1817,4 @@ ipmi_locate_acpi_spmi_get_device_info (ipmi_locate_ctx_t ctx, cleanup: fiid_obj_destroy (obj_acpi_spmi_table_descriptor); return (rv); -#endif /* defined(__arm__) || defined(__aarch64__) */ } -- 2.18.0 _______________________________________________ Freeipmi-devel mailing list Freeipmi-devel@gnu.org https://lists.gnu.org/mailman/listinfo/freeipmi-devel