Lines Matching defs:trigger_tab
252 static int einj_check_trigger_header(struct acpi_einj_trigger *trigger_tab)
254 if (trigger_tab->header_size != sizeof(struct acpi_einj_trigger))
256 if (trigger_tab->table_size > PAGE_SIZE ||
257 trigger_tab->table_size < trigger_tab->header_size)
259 if (trigger_tab->entry_count !=
260 (trigger_tab->table_size - trigger_tab->header_size) /
268 struct acpi_einj_trigger *trigger_tab, u64 param1, u64 param2)
274 ((char *)trigger_tab + sizeof(struct acpi_einj_trigger));
275 for (i = 0; i < trigger_tab->entry_count; i++) {
291 struct acpi_einj_trigger *trigger_tab = NULL;
300 r = request_mem_region(trigger_paddr, sizeof(*trigger_tab),
306 sizeof(*trigger_tab) - 1);
309 trigger_tab = ioremap_cache(trigger_paddr, sizeof(*trigger_tab));
310 if (!trigger_tab) {
314 rc = einj_check_trigger_header(trigger_tab);
321 if (!trigger_tab->entry_count)
325 table_size = trigger_tab->table_size;
326 r = request_mem_region(trigger_paddr + sizeof(*trigger_tab),
327 table_size - sizeof(*trigger_tab),
331 (unsigned long long)trigger_paddr + sizeof(*trigger_tab),
335 iounmap(trigger_tab);
336 trigger_tab = ioremap_cache(trigger_paddr, table_size);
337 if (!trigger_tab) {
342 ((char *)trigger_tab + sizeof(struct acpi_einj_trigger));
346 trigger_entry, trigger_tab->entry_count);
364 trigger_tab, param1, param2);
393 release_mem_region(trigger_paddr + sizeof(*trigger_tab),
394 table_size - sizeof(*trigger_tab));
396 release_mem_region(trigger_paddr, sizeof(*trigger_tab));
398 if (trigger_tab)
399 iounmap(trigger_tab);