raw/ifpga/base: add I2C and at24 EEPROM driver
[dpdk.git] / drivers / raw / ifpga_rawdev / base / ifpga_api.h
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(c) 2010-2018 Intel Corporation
3  */
4
5 #ifndef _IFPGA_API_H_
6 #define _IFPGA_API_H_
7
8 #include "opae_hw_api.h"
9 #include "ifpga_hw.h"
10
11 extern struct opae_adapter_ops ifpga_adapter_ops;
12 extern struct opae_manager_ops ifpga_mgr_ops;
13 extern struct opae_bridge_ops ifpga_br_ops;
14 extern struct opae_accelerator_ops ifpga_acc_ops;
15 extern struct opae_manager_networking_ops ifpga_mgr_network_ops;
16
17 /* common APIs */
18 int ifpga_get_prop(struct ifpga_hw *hw, u32 fiu_id, u32 port_id,
19                    struct feature_prop *prop);
20 int ifpga_set_prop(struct ifpga_hw *hw, u32 fiu_id, u32 port_id,
21                    struct feature_prop *prop);
22 int ifpga_set_irq(struct ifpga_hw *hw, u32 fiu_id, u32 port_id,
23                   u32 feature_id, void *irq_set);
24
25 /* FME APIs */
26 int ifpga_pr(struct ifpga_hw *hw, u32 port_id, void *buffer, u32 size,
27              u64 *status);
28
29 #endif /* _IFPGA_API_H_ */