Messages in this thread | | | Date | Tue, 22 Aug 2017 09:03:06 -0700 | From | "Luck, Tony" <> | Subject | Re: [PATCH] ACPI, APEI, EINJ: Subtract any matching Register Region from Trigger resources |
| |
On Tue, Aug 22, 2017 at 02:04:27PM +0000, Ghannam, Yazen wrote: > > *einj_get_trigger_parameter_region( > > ((char *)trigger_tab + sizeof(struct acpi_einj_trigger)); > > for (i = 0; i < trigger_tab->entry_count; i++) { > > if (entry->action == ACPI_EINJ_TRIGGER_ERROR && > > - entry->instruction == ACPI_EINJ_WRITE_REGISTER_VALUE && > > entry->register_region.space_id == > > ACPI_ADR_SPACE_SYSTEM_MEMORY && > > (entry->register_region.address & param2) == (param1 & > > param2))
Maybe you should add the other instruction types that make sense here (ACPI_EINJ_READ_REGISTER, ACPI_EINJ_READ_REGISTER_VALUE and ACPI_EINJ_WRITE_REGISTER) as a sanity check against the BIOS giving you an action in the trigger table that doesn't involve a memory access?
-Tony
| |