On Tuesday, August 15, 2017 4:12:24 AM CEST Zheng, Lv wrote: > Hi, Rafael > > > From: linux-acpi-owner@xxxxxxxxxxxxxxx [mailto:linux-acpi-owner@xxxxxxxxxxxxxxx] On Behalf Of Rafael J. > > Wysocki > > Subject: [PATCH 3/3] ACPI / scan: Enable GPEs before scanning the namespace > > > > From: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx> > > > > On some systems the platform firmware expects GPEs to be enabled > > before the enumeration of devices and if that expectation is not > > met, the systems in question may not boot in some situations. > > > > For this reason, change the initialization ordering of the ACPI > > subsystem to make it enable GPEs before scanning the namespace > > for the first time in order to enumerate devices. > > > > Reported-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx> > > Suggested-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx> > > Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx> > > --- > > drivers/acpi/scan.c | 8 ++++---- > > 1 file changed, 4 insertions(+), 4 deletions(-) > > > > Index: linux-pm/drivers/acpi/scan.c > > =================================================================== > > --- linux-pm.orig/drivers/acpi/scan.c > > +++ linux-pm/drivers/acpi/scan.c > > @@ -2139,6 +2139,10 @@ int __init acpi_scan_init(void) > > acpi_get_spcr_uart_addr(); > > } > > > > + acpi_gpe_apply_masked_gpes(); > > + acpi_update_all_gpes(); > > + acpi_ec_ecdt_start(); > > + > > Just for your information. > A recent internal bug reveals that acpi_ec_ecdt_start() should only be > invoked after the enumeration (acpi_ec_add()) for now. > The function contains logics that need to be altered by acpi_ec_add(). > > So it seems we can only do less aggressive change by moving the GPE > related 2 lines up. OK, done. Please check my linux-next branch and see if that's what it should be. Thanks, Rafael -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html