raw/ifpga/base: add eth group driver
[dpdk.git] / drivers / raw / ifpga_rawdev / base / opae_hw_api.h
index 826da37..383e751 100644 (file)
@@ -12,6 +12,7 @@
 
 #include "opae_osdep.h"
 #include "opae_intel_max10.h"
+#include "opae_eth_group.h"
 
 #ifndef PCI_MAX_RESOURCE
 #define PCI_MAX_RESOURCE 6
@@ -45,6 +46,8 @@ struct opae_manager {
 struct opae_manager_ops {
        int (*flash)(struct opae_manager *mgr, int id, void *buffer,
                     u32 size, u64 *status);
+       int (*get_eth_group_region_info)(struct opae_manager *mgr,
+                       struct opae_eth_group_region_info *info);
 };
 
 /* networking management ops in FME */
@@ -53,6 +56,17 @@ struct opae_manager_networking_ops {
                        int size);
        int (*write_mac_rom)(struct opae_manager *mgr, int offset, void *buf,
                        int size);
+       int (*get_eth_group_nums)(struct opae_manager *mgr);
+       int (*get_eth_group_info)(struct opae_manager *mgr,
+                       u8 group_id, struct opae_eth_group_info *info);
+       int (*eth_group_reg_read)(struct opae_manager *mgr, u8 group_id,
+                       u8 type, u8 index, u16 addr, u32 *data);
+       int (*eth_group_reg_write)(struct opae_manager *mgr, u8 group_id,
+                       u8 type, u8 index, u16 addr, u32 data);
+       int (*get_retimer_info)(struct opae_manager *mgr,
+                       struct opae_retimer_info *info);
+       int (*get_retimer_status)(struct opae_manager *mgr,
+                       struct opae_retimer_status *status);
 };
 
 /* OPAE Manager APIs */
@@ -62,6 +76,8 @@ opae_manager_alloc(const char *name, struct opae_manager_ops *ops,
 #define opae_manager_free(mgr) opae_free(mgr)
 int opae_manager_flash(struct opae_manager *mgr, int acc_id, void *buf,
                       u32 size, u64 *status);
+int opae_manager_get_eth_group_region_info(struct opae_manager *mgr,
+               u8 group_id, struct opae_eth_group_region_info *info);
 
 /* OPAE Bridge Data Structure */
 struct opae_bridge_ops;
@@ -276,4 +292,15 @@ int opae_manager_read_mac_rom(struct opae_manager *mgr, int port,
                struct opae_ether_addr *addr);
 int opae_manager_write_mac_rom(struct opae_manager *mgr, int port,
                struct opae_ether_addr *addr);
+int opae_manager_get_retimer_info(struct opae_manager *mgr,
+               struct opae_retimer_info *info);
+int opae_manager_get_retimer_status(struct opae_manager *mgr,
+               struct opae_retimer_status *status);
+int opae_manager_get_eth_group_nums(struct opae_manager *mgr);
+int opae_manager_get_eth_group_info(struct opae_manager *mgr,
+               u8 group_id, struct opae_eth_group_info *info);
+int opae_manager_eth_group_write_reg(struct opae_manager *mgr, u8 group_id,
+               u8 type, u8 index, u16 addr, u32 data);
+int opae_manager_eth_group_read_reg(struct opae_manager *mgr, u8 group_id,
+               u8 type, u8 index, u16 addr, u32 *data);
 #endif /* _OPAE_HW_API_H_*/