Lines Matching full:gpe
128 * this threshold, will think there is a GPE storm happened and
129 * will disable the GPE for normal transaction.
133 MODULE_PARM_DESC(ec_storm_threshold, "Maxim false GPE numbers not considered as GPE storm");
184 static int EC_FLAGS_TRUST_DSDT_GPE; /* Needs DSDT GPE as correction setting */
334 * GPE Registers
341 (void)acpi_get_gpe_status(NULL, ec->gpe, &gpe_status); in acpi_ec_gpe_status_set()
348 acpi_enable_gpe(NULL, ec->gpe); in acpi_ec_enable_gpe()
351 acpi_set_gpe(NULL, ec->gpe, ACPI_GPE_ENABLE); in acpi_ec_enable_gpe()
355 * On some platforms, EN=1 writes cannot trigger GPE. So in acpi_ec_enable_gpe()
356 * software need to manually trigger a pseudo GPE event on in acpi_ec_enable_gpe()
367 acpi_disable_gpe(NULL, ec->gpe); in acpi_ec_disable_gpe()
370 acpi_set_gpe(NULL, ec->gpe, ACPI_GPE_DISABLE); in acpi_ec_disable_gpe()
382 ec->gpe >= 0 && ec->reference_count == 1) in acpi_ec_submit_request()
392 ec->gpe >= 0 && ec->reference_count == 0) in acpi_ec_complete_request()
402 if (ec->gpe >= 0) in acpi_ec_mask_events()
416 if (ec->gpe >= 0) in acpi_ec_unmask_events()
738 * GPE handler after the transaction enters in ec_guard()
791 /* Enable GPE for command processing (IBF=0/OBF=1) */ in acpi_ec_transaction_unlocked()
810 /* Disable GPE for command processing (IBF=0/OBF=1) */ in acpi_ec_transaction_unlocked()
968 /* Enable GPE for event processing (SCI_EVT=1) */ in acpi_ec_start()
1000 /* Disable GPE for event processing (SCI_EVT=1) */ in acpi_ec_stop()
1298 * changes to always trigger a GPE interrupt. in clear_gpe_and_advance_transaction()
1300 * GPE STS is a W1C register, which means: in clear_gpe_and_advance_transaction()
1308 if (ec->gpe >= 0 && acpi_ec_gpe_status_set(ec)) in clear_gpe_and_advance_transaction()
1309 acpi_clear_gpe(NULL, ec->gpe); in clear_gpe_and_advance_transaction()
1434 ec->gpe = -1; in acpi_ec_alloc()
1473 /* Get GPE bit assignment (EC events). */ in ec_parse_device()
1477 ec->gpe = tmp; in ec_parse_device()
1480 * platforms which use GpioInt instead of GPE. in ec_parse_device()
1495 status = acpi_install_gpe_raw_handler(NULL, ec->gpe, in install_gpe_event_handler()
1521 * namespace and register them, and install an event (either GPE or GPIO IRQ)
1560 if (ec->gpe < 0) { in ec_install_handlers()
1583 if (ec->gpe >= 0) in ec_install_handlers()
1621 * Flushes the EC requests and thus disables the GPE before in ec_remove_handlers()
1622 * removing the GPE handler. This is required by the current ACPICA in ec_remove_handlers()
1623 * GPE core. ACPICA GPE core will automatically disable a GPE when in ec_remove_handlers()
1625 * must disable the GPEs prior to removing the GPE handlers. in ec_remove_handlers()
1630 if (ec->gpe >= 0 && in ec_remove_handlers()
1631 ACPI_FAILURE(acpi_remove_gpe_handler(NULL, ec->gpe, in ec_remove_handlers()
1633 pr_err("failed to remove gpe handler\n"); in ec_remove_handlers()
1666 if (ec->gpe >= 0) in acpi_ec_setup()
1667 pr_info("GPE=0x%x\n", ec->gpe); in acpi_ec_setup()
1704 * But trust ECDT GPE rather than _GPE because of ASUS in acpi_ec_add()
1705 * quirks. So do not change boot_ec->gpe to ec->gpe, in acpi_ec_add()
1711 boot_ec->gpe = ec->gpe; in acpi_ec_add()
1841 * At this point, the GPE is not fully initialized, so do not to in acpi_ec_dsdt_probe()
1934 * Some ECDTs contain wrong GPE setting, but they share the same port addresses
1940 pr_debug("Detected system needing DSDT GPE setting.\n"); in ec_honor_dsdt_gpe()
2047 * Ignore the GPE value on Reduced Hardware platforms. in acpi_ec_ecdt_probe()
2051 ec->gpe = ecdt_ptr->gpe; in acpi_ec_ecdt_probe()
2090 * The SCI handler doesn't run at this point, so the GPE can be in acpi_ec_suspend_noirq()
2094 ec->gpe >= 0 && ec->reference_count >= 1) in acpi_ec_suspend_noirq()
2095 acpi_set_gpe(NULL, ec->gpe, ACPI_GPE_DISABLE); in acpi_ec_suspend_noirq()
2109 ec->gpe >= 0 && ec->reference_count >= 1) in acpi_ec_resume_noirq()
2110 acpi_set_gpe(NULL, ec->gpe, ACPI_GPE_ENABLE); in acpi_ec_resume_noirq()
2127 acpi_mark_gpe_for_wake(NULL, first_ec->gpe); in acpi_ec_mark_gpe_for_wake()
2134 acpi_set_gpe_wake_mask(NULL, first_ec->gpe, action); in acpi_ec_set_gpe_wake_mask()
2150 * Report wakeup if the status bit is set for any enabled GPE other in acpi_ec_dispatch_gpe()
2153 if (acpi_any_gpe_status_set(first_ec->gpe)) in acpi_ec_dispatch_gpe()
2167 * Dispatch the EC GPE in-band, but do not report wakeup in any case in acpi_ec_dispatch_gpe()
2173 pm_pr_dbg("ACPI EC GPE status set\n"); in acpi_ec_dispatch_gpe()
2184 pm_pr_dbg("ACPI EC GPE dispatched\n"); in acpi_ec_dispatch_gpe()
2317 * wakeup from EC GPE. in acpi_ec_init()