Lines Matching refs:entry
65 int __apei_exec_read_register(struct acpi_whea_header *entry, u64 *val) in __apei_exec_read_register() argument
69 rc = apei_read(val, &entry->register_region); in __apei_exec_read_register()
72 *val >>= entry->register_region.bit_offset; in __apei_exec_read_register()
73 *val &= entry->mask; in __apei_exec_read_register()
79 struct acpi_whea_header *entry) in apei_exec_read_register() argument
84 rc = __apei_exec_read_register(entry, &val); in apei_exec_read_register()
94 struct acpi_whea_header *entry) in apei_exec_read_register_value() argument
98 rc = apei_exec_read_register(ctx, entry); in apei_exec_read_register_value()
101 ctx->value = (ctx->value == entry->value); in apei_exec_read_register_value()
107 int __apei_exec_write_register(struct acpi_whea_header *entry, u64 val) in __apei_exec_write_register() argument
111 val &= entry->mask; in __apei_exec_write_register()
112 val <<= entry->register_region.bit_offset; in __apei_exec_write_register()
113 if (entry->flags & APEI_EXEC_PRESERVE_REGISTER) { in __apei_exec_write_register()
115 rc = apei_read(&valr, &entry->register_region); in __apei_exec_write_register()
118 valr &= ~(entry->mask << entry->register_region.bit_offset); in __apei_exec_write_register()
121 rc = apei_write(val, &entry->register_region); in __apei_exec_write_register()
127 struct acpi_whea_header *entry) in apei_exec_write_register() argument
129 return __apei_exec_write_register(entry, ctx->value); in apei_exec_write_register()
134 struct acpi_whea_header *entry) in apei_exec_write_register_value() argument
138 ctx->value = entry->value; in apei_exec_write_register_value()
139 rc = apei_exec_write_register(ctx, entry); in apei_exec_write_register_value()
146 struct acpi_whea_header *entry) in apei_exec_noop() argument
161 struct acpi_whea_header *entry; in __apei_exec_run() local
175 entry = &ctx->action_table[i]; in __apei_exec_run()
176 if (entry->action != action) in __apei_exec_run()
179 if (entry->instruction >= ctx->instructions || in __apei_exec_run()
180 !ctx->ins_table[entry->instruction].run) { in __apei_exec_run()
183 entry->instruction); in __apei_exec_run()
186 run = ctx->ins_table[entry->instruction].run; in __apei_exec_run()
187 rc = run(ctx, entry); in __apei_exec_run()
203 struct acpi_whea_header *entry,
213 struct acpi_whea_header *entry; in apei_exec_for_each_entry() local
217 entry = ctx->action_table + i; in apei_exec_for_each_entry()
218 ins = entry->instruction; in apei_exec_for_each_entry()
227 rc = func(ctx, entry, data); in apei_exec_for_each_entry()
236 struct acpi_whea_header *entry, in pre_map_gar_callback() argument
239 u8 ins = entry->instruction; in pre_map_gar_callback()
242 return apei_map_generic_address(&entry->register_region); in pre_map_gar_callback()
269 struct acpi_whea_header *entry, in post_unmap_gar_callback() argument
272 u8 ins = entry->instruction; in post_unmap_gar_callback()
275 apei_unmap_generic_address(&entry->register_region); in post_unmap_gar_callback()
712 struct acpi_whea_header *entry, in collect_res_callback() argument
716 struct acpi_generic_address *reg = &entry->register_region; in collect_res_callback()
717 u8 ins = entry->instruction; in collect_res_callback()