diff --git a/drivers/bus/acpi/acpica/events/evgpe.c b/drivers/bus/acpi/acpica/events/evgpe.c index 7527a0031b7..b293aee3469 100644 --- a/drivers/bus/acpi/acpica/events/evgpe.c +++ b/drivers/bus/acpi/acpica/events/evgpe.c @@ -132,6 +132,14 @@ AcpiEvEnableGpe ( ACPI_FUNCTION_TRACE (EvEnableGpe); + /* Clear the GPE (of stale events) */ + + Status = AcpiHwClearGpe(GpeEventInfo); + if (ACPI_FAILURE(Status)) + { + return_ACPI_STATUS(Status); + } + /* Enable the requested GPE */ Status = AcpiHwLowSetGpe (GpeEventInfo, ACPI_GPE_ENABLE); diff --git a/drivers/bus/acpi/acpica/include/acpixf.h b/drivers/bus/acpi/acpica/include/acpixf.h index d700786dc3c..75533de5e92 100644 --- a/drivers/bus/acpi/acpica/include/acpixf.h +++ b/drivers/bus/acpi/acpica/include/acpixf.h @@ -46,7 +46,7 @@ /* Current ACPICA subsystem version in YYYYMMDD format */ -#define ACPI_CA_VERSION 0x20190329 +#define ACPI_CA_VERSION 0x20190405 #include "acconfig.h" #include "actypes.h" diff --git a/drivers/bus/acpi/acpica/namespace/nsalloc.c b/drivers/bus/acpi/acpica/namespace/nsalloc.c index 8f079c3e9f4..fb5cc71d007 100644 --- a/drivers/bus/acpi/acpica/namespace/nsalloc.c +++ b/drivers/bus/acpi/acpica/namespace/nsalloc.c @@ -124,6 +124,11 @@ AcpiNsDeleteNode ( ACPI_FUNCTION_NAME (NsDeleteNode); + if (!Node) + { + return_VOID; + } + /* Detach an object if there is one */ AcpiNsDetachObject (Node);