diff options
Diffstat (limited to 'include/acpi/ghes.h')
| -rw-r--r-- | include/acpi/ghes.h | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/include/acpi/ghes.h b/include/acpi/ghes.h index be1dd4c1a917..8d7e5caef3f1 100644 --- a/include/acpi/ghes.h +++ b/include/acpi/ghes.h @@ -21,6 +21,7 @@ struct ghes { struct acpi_hest_generic_v2 *generic_v2; }; struct acpi_hest_generic_status *estatus; + unsigned int estatus_length; unsigned long flags; union { struct list_head list; @@ -29,15 +30,13 @@ struct ghes { }; struct device *dev; struct list_head elist; + void __iomem *error_status_vaddr; }; struct ghes_estatus_node { struct llist_node llnode; struct acpi_hest_generic *generic; struct ghes *ghes; - - int task_work_cpu; - struct callback_head task_work; }; struct ghes_estatus_cache { @@ -72,6 +71,17 @@ int ghes_register_vendor_record_notifier(struct notifier_block *nb); */ void ghes_unregister_vendor_record_notifier(struct notifier_block *nb); +/** + * devm_ghes_register_vendor_record_notifier - device-managed vendor + * record notifier registration. + * @dev: device that owns the notifier lifetime + * @nb: pointer to the notifier_block structure of the vendor record handler + * + * Return: 0 on success, negative errno on failure. + */ +int devm_ghes_register_vendor_record_notifier(struct device *dev, + struct notifier_block *nb); + struct list_head *ghes_get_devices(void); void ghes_estatus_pool_region_free(unsigned long addr, u32 size); |
