xref: /openbsd/sys/dev/pci/igc_api.h (revision 3b70601b)
1 /*	$OpenBSD: igc_api.h,v 1.3 2024/06/09 05:18:12 jsg Exp $	*/
2 /*-
3  * Copyright 2021 Intel Corp
4  * Copyright 2021 Rubicon Communications, LLC (Netgate)
5  * SPDX-License-Identifier: BSD-3-Clause
6  *
7  * $FreeBSD$
8  */
9 
10 #ifndef _IGC_API_H_
11 #define _IGC_API_H_
12 
13 #include <dev/pci/if_igc.h>
14 #include <dev/pci/igc_hw.h>
15 
16 extern void	igc_init_function_pointers_i225(struct igc_hw *);
17 
18 int		igc_set_mac_type(struct igc_hw *);
19 int		igc_setup_init_funcs(struct igc_hw *, bool);
20 int		igc_init_mac_params(struct igc_hw *);
21 int		igc_init_nvm_params(struct igc_hw *);
22 int		igc_init_phy_params(struct igc_hw *);
23 int		igc_check_for_link(struct igc_hw *);
24 int		igc_reset_hw(struct igc_hw *);
25 int		igc_init_hw(struct igc_hw *);
26 int		igc_get_speed_and_duplex(struct igc_hw *, uint16_t *,
27 		    uint16_t *);
28 int		igc_rar_set(struct igc_hw *, uint8_t *, uint32_t);
29 void		igc_update_mc_addr_list(struct igc_hw *, uint8_t *, uint32_t);
30 int		igc_check_reset_block(struct igc_hw *);
31 int		igc_get_phy_info(struct igc_hw *);
32 int		igc_phy_hw_reset(struct igc_hw *);
33 int		igc_read_mac_addr(struct igc_hw *);
34 int		igc_validate_nvm_checksum(struct igc_hw *);
35 
36 #endif /* _IGC_API_H_ */
37