Commit ca8283d
committed
ACPI: EC: Call advance_transaction() from acpi_ec_dispatch_gpe()
Calling acpi_dispatch_gpe() from acpi_ec_dispatch_gpe() is generally
problematic, because it may cause the spurious interrupt handling in
advance_transaction() to trigger in theory.
However, instead of calling acpi_dispatch_gpe() to dispatch the EC
GPE, acpi_ec_dispatch_gpe() can call advance_transaction() directly
on first_ec and it can pass 'false' as its second argument to indicate
calling it from process context.
Moreover, if advance_transaction() is modified to return a bool value
indicating whether or not the EC work needs to be flushed, it can be
used to avoid unnecessary EC work flushing in acpi_ec_dispatch_gpe(),
so change the code accordingly.
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>1 parent 4a9af6c commit ca8283d
1 file changed
Lines changed: 28 additions & 11 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
170 | 170 | | |
171 | 171 | | |
172 | 172 | | |
173 | | - | |
| 173 | + | |
174 | 174 | | |
175 | 175 | | |
176 | 176 | | |
| |||
444 | 444 | | |
445 | 445 | | |
446 | 446 | | |
447 | | - | |
| 447 | + | |
448 | 448 | | |
449 | 449 | | |
450 | 450 | | |
451 | | - | |
| 451 | + | |
| 452 | + | |
452 | 453 | | |
453 | 454 | | |
454 | 455 | | |
455 | 456 | | |
456 | 457 | | |
457 | | - | |
| 458 | + | |
458 | 459 | | |
| 460 | + | |
| 461 | + | |
| 462 | + | |
| 463 | + | |
| 464 | + | |
| 465 | + | |
459 | 466 | | |
460 | 467 | | |
461 | 468 | | |
| |||
628 | 635 | | |
629 | 636 | | |
630 | 637 | | |
631 | | - | |
| 638 | + | |
632 | 639 | | |
633 | 640 | | |
634 | 641 | | |
| 642 | + | |
635 | 643 | | |
636 | 644 | | |
637 | 645 | | |
| |||
698 | 706 | | |
699 | 707 | | |
700 | 708 | | |
701 | | - | |
| 709 | + | |
702 | 710 | | |
703 | 711 | | |
704 | 712 | | |
| 713 | + | |
| 714 | + | |
705 | 715 | | |
706 | 716 | | |
707 | 717 | | |
| |||
2038 | 2048 | | |
2039 | 2049 | | |
2040 | 2050 | | |
2041 | | - | |
2042 | | - | |
| 2051 | + | |
2043 | 2052 | | |
2044 | 2053 | | |
2045 | 2054 | | |
| |||
2055 | 2064 | | |
2056 | 2065 | | |
2057 | 2066 | | |
2058 | | - | |
2059 | | - | |
2060 | | - | |
| 2067 | + | |
| 2068 | + | |
| 2069 | + | |
| 2070 | + | |
| 2071 | + | |
| 2072 | + | |
| 2073 | + | |
| 2074 | + | |
| 2075 | + | |
| 2076 | + | |
| 2077 | + | |
2061 | 2078 | | |
2062 | 2079 | | |
2063 | 2080 | | |
| |||
0 commit comments