2 * Copyright(c) 2013-2015 Intel Corporation. All rights reserved.
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of version 2 of the GNU General Public License as
6 * published by the Free Software Foundation.
8 * This program is distributed in the hope that it will be useful, but
9 * WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 * General Public License for more details.
13 #ifndef __NFIT_TEST_H__
14 #define __NFIT_TEST_H__
15 #include <linux/list.h>
16 #include <linux/ioport.h>
17 #include <linux/spinlock_types.h>
19 struct nfit_test_request {
20 struct list_head list;
24 struct nfit_test_resource {
25 struct list_head requests;
26 struct list_head list;
35 typedef void *acpi_handle;
37 typedef struct nfit_test_resource *(*nfit_test_lookup_fn)(resource_size_t);
38 typedef union acpi_object *(*nfit_test_evaluate_dsm_fn)(acpi_handle handle,
39 const u8 *uuid, u64 rev, u64 func, union acpi_object *argv4);
40 void __iomem *__wrap_ioremap_nocache(resource_size_t offset,
42 void __wrap_iounmap(volatile void __iomem *addr);
43 void nfit_test_setup(nfit_test_lookup_fn lookup,
44 nfit_test_evaluate_dsm_fn evaluate);
45 void nfit_test_teardown(void);
46 struct nfit_test_resource *get_nfit_res(resource_size_t resource);