forked from Minki/linux
Merge branch '20130924_dn_externs_2' of git://repo.or.cz/linux-2.6/trivial-mods
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
commit
c359ca88cb
@ -29,13 +29,13 @@
|
||||
struct emac_instance;
|
||||
struct mal_instance;
|
||||
|
||||
extern void emac_dbg_register(struct emac_instance *dev);
|
||||
extern void emac_dbg_unregister(struct emac_instance *dev);
|
||||
extern void mal_dbg_register(struct mal_instance *mal);
|
||||
extern void mal_dbg_unregister(struct mal_instance *mal);
|
||||
extern int emac_init_debug(void) __init;
|
||||
extern void emac_fini_debug(void) __exit;
|
||||
extern void emac_dbg_dump_all(void);
|
||||
void emac_dbg_register(struct emac_instance *dev);
|
||||
void emac_dbg_unregister(struct emac_instance *dev);
|
||||
void mal_dbg_register(struct mal_instance *mal);
|
||||
void mal_dbg_unregister(struct mal_instance *mal);
|
||||
int emac_init_debug(void) __init;
|
||||
void emac_fini_debug(void) __exit;
|
||||
void emac_dbg_dump_all(void);
|
||||
|
||||
# define DBG_LEVEL 1
|
||||
|
||||
|
@ -56,15 +56,15 @@ struct rgmii_instance {
|
||||
|
||||
#ifdef CONFIG_IBM_EMAC_RGMII
|
||||
|
||||
extern int rgmii_init(void);
|
||||
extern void rgmii_exit(void);
|
||||
extern int rgmii_attach(struct platform_device *ofdev, int input, int mode);
|
||||
extern void rgmii_detach(struct platform_device *ofdev, int input);
|
||||
extern void rgmii_get_mdio(struct platform_device *ofdev, int input);
|
||||
extern void rgmii_put_mdio(struct platform_device *ofdev, int input);
|
||||
extern void rgmii_set_speed(struct platform_device *ofdev, int input, int speed);
|
||||
extern int rgmii_get_regs_len(struct platform_device *ofdev);
|
||||
extern void *rgmii_dump_regs(struct platform_device *ofdev, void *buf);
|
||||
int rgmii_init(void);
|
||||
void rgmii_exit(void);
|
||||
int rgmii_attach(struct platform_device *ofdev, int input, int mode);
|
||||
void rgmii_detach(struct platform_device *ofdev, int input);
|
||||
void rgmii_get_mdio(struct platform_device *ofdev, int input);
|
||||
void rgmii_put_mdio(struct platform_device *ofdev, int input);
|
||||
void rgmii_set_speed(struct platform_device *ofdev, int input, int speed);
|
||||
int rgmii_get_regs_len(struct platform_device *ofdev);
|
||||
void *rgmii_dump_regs(struct platform_device *ofdev, void *buf);
|
||||
|
||||
#else
|
||||
|
||||
|
@ -72,13 +72,13 @@ struct tah_instance {
|
||||
|
||||
#ifdef CONFIG_IBM_EMAC_TAH
|
||||
|
||||
extern int tah_init(void);
|
||||
extern void tah_exit(void);
|
||||
extern int tah_attach(struct platform_device *ofdev, int channel);
|
||||
extern void tah_detach(struct platform_device *ofdev, int channel);
|
||||
extern void tah_reset(struct platform_device *ofdev);
|
||||
extern int tah_get_regs_len(struct platform_device *ofdev);
|
||||
extern void *tah_dump_regs(struct platform_device *ofdev, void *buf);
|
||||
int tah_init(void);
|
||||
void tah_exit(void);
|
||||
int tah_attach(struct platform_device *ofdev, int channel);
|
||||
void tah_detach(struct platform_device *ofdev, int channel);
|
||||
void tah_reset(struct platform_device *ofdev);
|
||||
int tah_get_regs_len(struct platform_device *ofdev);
|
||||
void *tah_dump_regs(struct platform_device *ofdev, void *buf);
|
||||
|
||||
#else
|
||||
|
||||
|
@ -53,15 +53,15 @@ struct zmii_instance {
|
||||
|
||||
#ifdef CONFIG_IBM_EMAC_ZMII
|
||||
|
||||
extern int zmii_init(void);
|
||||
extern void zmii_exit(void);
|
||||
extern int zmii_attach(struct platform_device *ofdev, int input, int *mode);
|
||||
extern void zmii_detach(struct platform_device *ofdev, int input);
|
||||
extern void zmii_get_mdio(struct platform_device *ofdev, int input);
|
||||
extern void zmii_put_mdio(struct platform_device *ofdev, int input);
|
||||
extern void zmii_set_speed(struct platform_device *ofdev, int input, int speed);
|
||||
extern int zmii_get_regs_len(struct platform_device *ocpdev);
|
||||
extern void *zmii_dump_regs(struct platform_device *ofdev, void *buf);
|
||||
int zmii_init(void);
|
||||
void zmii_exit(void);
|
||||
int zmii_attach(struct platform_device *ofdev, int input, int *mode);
|
||||
void zmii_detach(struct platform_device *ofdev, int input);
|
||||
void zmii_get_mdio(struct platform_device *ofdev, int input);
|
||||
void zmii_put_mdio(struct platform_device *ofdev, int input);
|
||||
void zmii_set_speed(struct platform_device *ofdev, int input, int speed);
|
||||
int zmii_get_regs_len(struct platform_device *ocpdev);
|
||||
void *zmii_dump_regs(struct platform_device *ofdev, void *buf);
|
||||
|
||||
#else
|
||||
# define zmii_init() 0
|
||||
|
@ -325,7 +325,7 @@ enum e1000_state_t {
|
||||
#undef pr_fmt
|
||||
#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
|
||||
|
||||
extern struct net_device *e1000_get_hw_dev(struct e1000_hw *hw);
|
||||
struct net_device *e1000_get_hw_dev(struct e1000_hw *hw);
|
||||
#define e_dbg(format, arg...) \
|
||||
netdev_dbg(e1000_get_hw_dev(hw), format, ## arg)
|
||||
#define e_err(msglvl, format, arg...) \
|
||||
@ -346,20 +346,20 @@ extern struct net_device *e1000_get_hw_dev(struct e1000_hw *hw);
|
||||
extern char e1000_driver_name[];
|
||||
extern const char e1000_driver_version[];
|
||||
|
||||
extern int e1000_up(struct e1000_adapter *adapter);
|
||||
extern void e1000_down(struct e1000_adapter *adapter);
|
||||
extern void e1000_reinit_locked(struct e1000_adapter *adapter);
|
||||
extern void e1000_reset(struct e1000_adapter *adapter);
|
||||
extern int e1000_set_spd_dplx(struct e1000_adapter *adapter, u32 spd, u8 dplx);
|
||||
extern int e1000_setup_all_rx_resources(struct e1000_adapter *adapter);
|
||||
extern int e1000_setup_all_tx_resources(struct e1000_adapter *adapter);
|
||||
extern void e1000_free_all_rx_resources(struct e1000_adapter *adapter);
|
||||
extern void e1000_free_all_tx_resources(struct e1000_adapter *adapter);
|
||||
extern void e1000_update_stats(struct e1000_adapter *adapter);
|
||||
extern bool e1000_has_link(struct e1000_adapter *adapter);
|
||||
extern void e1000_power_up_phy(struct e1000_adapter *);
|
||||
extern void e1000_set_ethtool_ops(struct net_device *netdev);
|
||||
extern void e1000_check_options(struct e1000_adapter *adapter);
|
||||
extern char *e1000_get_hw_dev_name(struct e1000_hw *hw);
|
||||
int e1000_up(struct e1000_adapter *adapter);
|
||||
void e1000_down(struct e1000_adapter *adapter);
|
||||
void e1000_reinit_locked(struct e1000_adapter *adapter);
|
||||
void e1000_reset(struct e1000_adapter *adapter);
|
||||
int e1000_set_spd_dplx(struct e1000_adapter *adapter, u32 spd, u8 dplx);
|
||||
int e1000_setup_all_rx_resources(struct e1000_adapter *adapter);
|
||||
int e1000_setup_all_tx_resources(struct e1000_adapter *adapter);
|
||||
void e1000_free_all_rx_resources(struct e1000_adapter *adapter);
|
||||
void e1000_free_all_tx_resources(struct e1000_adapter *adapter);
|
||||
void e1000_update_stats(struct e1000_adapter *adapter);
|
||||
bool e1000_has_link(struct e1000_adapter *adapter);
|
||||
void e1000_power_up_phy(struct e1000_adapter *);
|
||||
void e1000_set_ethtool_ops(struct net_device *netdev);
|
||||
void e1000_check_options(struct e1000_adapter *adapter);
|
||||
char *e1000_get_hw_dev_name(struct e1000_hw *hw);
|
||||
|
||||
#endif /* _E1000_H_ */
|
||||
|
@ -472,26 +472,25 @@ enum latency_range {
|
||||
extern char e1000e_driver_name[];
|
||||
extern const char e1000e_driver_version[];
|
||||
|
||||
extern void e1000e_check_options(struct e1000_adapter *adapter);
|
||||
extern void e1000e_set_ethtool_ops(struct net_device *netdev);
|
||||
void e1000e_check_options(struct e1000_adapter *adapter);
|
||||
void e1000e_set_ethtool_ops(struct net_device *netdev);
|
||||
|
||||
extern int e1000e_up(struct e1000_adapter *adapter);
|
||||
extern void e1000e_down(struct e1000_adapter *adapter);
|
||||
extern void e1000e_reinit_locked(struct e1000_adapter *adapter);
|
||||
extern void e1000e_reset(struct e1000_adapter *adapter);
|
||||
extern void e1000e_power_up_phy(struct e1000_adapter *adapter);
|
||||
extern int e1000e_setup_rx_resources(struct e1000_ring *ring);
|
||||
extern int e1000e_setup_tx_resources(struct e1000_ring *ring);
|
||||
extern void e1000e_free_rx_resources(struct e1000_ring *ring);
|
||||
extern void e1000e_free_tx_resources(struct e1000_ring *ring);
|
||||
extern struct rtnl_link_stats64 *e1000e_get_stats64(struct net_device *netdev,
|
||||
struct rtnl_link_stats64
|
||||
*stats);
|
||||
extern void e1000e_set_interrupt_capability(struct e1000_adapter *adapter);
|
||||
extern void e1000e_reset_interrupt_capability(struct e1000_adapter *adapter);
|
||||
extern void e1000e_get_hw_control(struct e1000_adapter *adapter);
|
||||
extern void e1000e_release_hw_control(struct e1000_adapter *adapter);
|
||||
extern void e1000e_write_itr(struct e1000_adapter *adapter, u32 itr);
|
||||
int e1000e_up(struct e1000_adapter *adapter);
|
||||
void e1000e_down(struct e1000_adapter *adapter);
|
||||
void e1000e_reinit_locked(struct e1000_adapter *adapter);
|
||||
void e1000e_reset(struct e1000_adapter *adapter);
|
||||
void e1000e_power_up_phy(struct e1000_adapter *adapter);
|
||||
int e1000e_setup_rx_resources(struct e1000_ring *ring);
|
||||
int e1000e_setup_tx_resources(struct e1000_ring *ring);
|
||||
void e1000e_free_rx_resources(struct e1000_ring *ring);
|
||||
void e1000e_free_tx_resources(struct e1000_ring *ring);
|
||||
struct rtnl_link_stats64 *e1000e_get_stats64(struct net_device *netdev,
|
||||
struct rtnl_link_stats64 *stats);
|
||||
void e1000e_set_interrupt_capability(struct e1000_adapter *adapter);
|
||||
void e1000e_reset_interrupt_capability(struct e1000_adapter *adapter);
|
||||
void e1000e_get_hw_control(struct e1000_adapter *adapter);
|
||||
void e1000e_release_hw_control(struct e1000_adapter *adapter);
|
||||
void e1000e_write_itr(struct e1000_adapter *adapter, u32 itr);
|
||||
|
||||
extern unsigned int copybreak;
|
||||
|
||||
@ -508,8 +507,8 @@ extern const struct e1000_info e1000_pch2_info;
|
||||
extern const struct e1000_info e1000_pch_lpt_info;
|
||||
extern const struct e1000_info e1000_es2_info;
|
||||
|
||||
extern void e1000e_ptp_init(struct e1000_adapter *adapter);
|
||||
extern void e1000e_ptp_remove(struct e1000_adapter *adapter);
|
||||
void e1000e_ptp_init(struct e1000_adapter *adapter);
|
||||
void e1000e_ptp_remove(struct e1000_adapter *adapter);
|
||||
|
||||
static inline s32 e1000_phy_hw_reset(struct e1000_hw *hw)
|
||||
{
|
||||
@ -536,7 +535,7 @@ static inline s32 e1e_wphy_locked(struct e1000_hw *hw, u32 offset, u16 data)
|
||||
return hw->phy.ops.write_reg_locked(hw, offset, data);
|
||||
}
|
||||
|
||||
extern void e1000e_reload_nvm_generic(struct e1000_hw *hw);
|
||||
void e1000e_reload_nvm_generic(struct e1000_hw *hw);
|
||||
|
||||
static inline s32 e1000e_read_mac_addr(struct e1000_hw *hw)
|
||||
{
|
||||
|
@ -28,14 +28,14 @@
|
||||
#ifndef _E1000_82575_H_
|
||||
#define _E1000_82575_H_
|
||||
|
||||
extern void igb_shutdown_serdes_link_82575(struct e1000_hw *hw);
|
||||
extern void igb_power_up_serdes_link_82575(struct e1000_hw *hw);
|
||||
extern void igb_power_down_phy_copper_82575(struct e1000_hw *hw);
|
||||
extern void igb_rx_fifo_flush_82575(struct e1000_hw *hw);
|
||||
extern s32 igb_read_i2c_byte(struct e1000_hw *hw, u8 byte_offset,
|
||||
u8 dev_addr, u8 *data);
|
||||
extern s32 igb_write_i2c_byte(struct e1000_hw *hw, u8 byte_offset,
|
||||
u8 dev_addr, u8 data);
|
||||
void igb_shutdown_serdes_link_82575(struct e1000_hw *hw);
|
||||
void igb_power_up_serdes_link_82575(struct e1000_hw *hw);
|
||||
void igb_power_down_phy_copper_82575(struct e1000_hw *hw);
|
||||
void igb_rx_fifo_flush_82575(struct e1000_hw *hw);
|
||||
s32 igb_read_i2c_byte(struct e1000_hw *hw, u8 byte_offset, u8 dev_addr,
|
||||
u8 *data);
|
||||
s32 igb_write_i2c_byte(struct e1000_hw *hw, u8 byte_offset, u8 dev_addr,
|
||||
u8 data);
|
||||
|
||||
#define ID_LED_DEFAULT_82575_SERDES ((ID_LED_DEF1_DEF2 << 12) | \
|
||||
(ID_LED_DEF1_DEF2 << 8) | \
|
||||
|
@ -562,11 +562,11 @@ struct e1000_hw {
|
||||
u8 revision_id;
|
||||
};
|
||||
|
||||
extern struct net_device *igb_get_hw_dev(struct e1000_hw *hw);
|
||||
struct net_device *igb_get_hw_dev(struct e1000_hw *hw);
|
||||
#define hw_dbg(format, arg...) \
|
||||
netdev_dbg(igb_get_hw_dev(hw), format, ##arg)
|
||||
|
||||
/* These functions must be implemented by drivers */
|
||||
s32 igb_read_pcie_cap_reg(struct e1000_hw *hw, u32 reg, u16 *value);
|
||||
s32 igb_write_pcie_cap_reg(struct e1000_hw *hw, u32 reg, u16 *value);
|
||||
s32 igb_read_pcie_cap_reg(struct e1000_hw *hw, u32 reg, u16 *value);
|
||||
s32 igb_write_pcie_cap_reg(struct e1000_hw *hw, u32 reg, u16 *value);
|
||||
#endif /* _E1000_HW_H_ */
|
||||
|
@ -28,26 +28,24 @@
|
||||
#ifndef _E1000_I210_H_
|
||||
#define _E1000_I210_H_
|
||||
|
||||
extern s32 igb_update_flash_i210(struct e1000_hw *hw);
|
||||
extern s32 igb_update_nvm_checksum_i210(struct e1000_hw *hw);
|
||||
extern s32 igb_validate_nvm_checksum_i210(struct e1000_hw *hw);
|
||||
extern s32 igb_write_nvm_srwr_i210(struct e1000_hw *hw, u16 offset,
|
||||
u16 words, u16 *data);
|
||||
extern s32 igb_read_nvm_srrd_i210(struct e1000_hw *hw, u16 offset,
|
||||
u16 words, u16 *data);
|
||||
extern s32 igb_acquire_swfw_sync_i210(struct e1000_hw *hw, u16 mask);
|
||||
extern void igb_release_swfw_sync_i210(struct e1000_hw *hw, u16 mask);
|
||||
extern s32 igb_acquire_nvm_i210(struct e1000_hw *hw);
|
||||
extern void igb_release_nvm_i210(struct e1000_hw *hw);
|
||||
extern s32 igb_valid_led_default_i210(struct e1000_hw *hw, u16 *data);
|
||||
extern s32 igb_read_invm_version(struct e1000_hw *hw,
|
||||
struct e1000_fw_version *invm_ver);
|
||||
extern s32 igb_read_xmdio_reg(struct e1000_hw *hw, u16 addr, u8 dev_addr,
|
||||
u16 *data);
|
||||
extern s32 igb_write_xmdio_reg(struct e1000_hw *hw, u16 addr, u8 dev_addr,
|
||||
u16 data);
|
||||
extern s32 igb_init_nvm_params_i210(struct e1000_hw *hw);
|
||||
extern bool igb_get_flash_presence_i210(struct e1000_hw *hw);
|
||||
s32 igb_update_flash_i210(struct e1000_hw *hw);
|
||||
s32 igb_update_nvm_checksum_i210(struct e1000_hw *hw);
|
||||
s32 igb_validate_nvm_checksum_i210(struct e1000_hw *hw);
|
||||
s32 igb_write_nvm_srwr_i210(struct e1000_hw *hw, u16 offset, u16 words,
|
||||
u16 *data);
|
||||
s32 igb_read_nvm_srrd_i210(struct e1000_hw *hw, u16 offset, u16 words,
|
||||
u16 *data);
|
||||
s32 igb_acquire_swfw_sync_i210(struct e1000_hw *hw, u16 mask);
|
||||
void igb_release_swfw_sync_i210(struct e1000_hw *hw, u16 mask);
|
||||
s32 igb_acquire_nvm_i210(struct e1000_hw *hw);
|
||||
void igb_release_nvm_i210(struct e1000_hw *hw);
|
||||
s32 igb_valid_led_default_i210(struct e1000_hw *hw, u16 *data);
|
||||
s32 igb_read_invm_version(struct e1000_hw *hw,
|
||||
struct e1000_fw_version *invm_ver);
|
||||
s32 igb_read_xmdio_reg(struct e1000_hw *hw, u16 addr, u8 dev_addr, u16 *data);
|
||||
s32 igb_write_xmdio_reg(struct e1000_hw *hw, u16 addr, u8 dev_addr, u16 data);
|
||||
s32 igb_init_nvm_params_i210(struct e1000_hw *hw);
|
||||
bool igb_get_flash_presence_i210(struct e1000_hw *hw);
|
||||
|
||||
#define E1000_STM_OPCODE 0xDB00
|
||||
#define E1000_EEPROM_FLASH_SIZE_WORD 0x11
|
||||
|
@ -86,6 +86,6 @@ enum e1000_mng_mode {
|
||||
|
||||
#define E1000_MNG_DHCP_COOKIE_STATUS_VLAN 0x2
|
||||
|
||||
extern void e1000_init_function_pointers_82575(struct e1000_hw *hw);
|
||||
void e1000_init_function_pointers_82575(struct e1000_hw *hw);
|
||||
|
||||
#endif
|
||||
|
@ -483,40 +483,37 @@ enum igb_boards {
|
||||
extern char igb_driver_name[];
|
||||
extern char igb_driver_version[];
|
||||
|
||||
extern int igb_up(struct igb_adapter *);
|
||||
extern void igb_down(struct igb_adapter *);
|
||||
extern void igb_reinit_locked(struct igb_adapter *);
|
||||
extern void igb_reset(struct igb_adapter *);
|
||||
extern void igb_write_rss_indir_tbl(struct igb_adapter *);
|
||||
extern int igb_set_spd_dplx(struct igb_adapter *, u32, u8);
|
||||
extern int igb_setup_tx_resources(struct igb_ring *);
|
||||
extern int igb_setup_rx_resources(struct igb_ring *);
|
||||
extern void igb_free_tx_resources(struct igb_ring *);
|
||||
extern void igb_free_rx_resources(struct igb_ring *);
|
||||
extern void igb_configure_tx_ring(struct igb_adapter *, struct igb_ring *);
|
||||
extern void igb_configure_rx_ring(struct igb_adapter *, struct igb_ring *);
|
||||
extern void igb_setup_tctl(struct igb_adapter *);
|
||||
extern void igb_setup_rctl(struct igb_adapter *);
|
||||
extern netdev_tx_t igb_xmit_frame_ring(struct sk_buff *, struct igb_ring *);
|
||||
extern void igb_unmap_and_free_tx_resource(struct igb_ring *,
|
||||
struct igb_tx_buffer *);
|
||||
extern void igb_alloc_rx_buffers(struct igb_ring *, u16);
|
||||
extern void igb_update_stats(struct igb_adapter *, struct rtnl_link_stats64 *);
|
||||
extern bool igb_has_link(struct igb_adapter *adapter);
|
||||
extern void igb_set_ethtool_ops(struct net_device *);
|
||||
extern void igb_power_up_link(struct igb_adapter *);
|
||||
extern void igb_set_fw_version(struct igb_adapter *);
|
||||
extern void igb_ptp_init(struct igb_adapter *adapter);
|
||||
extern void igb_ptp_stop(struct igb_adapter *adapter);
|
||||
extern void igb_ptp_reset(struct igb_adapter *adapter);
|
||||
extern void igb_ptp_tx_work(struct work_struct *work);
|
||||
extern void igb_ptp_rx_hang(struct igb_adapter *adapter);
|
||||
extern void igb_ptp_tx_hwtstamp(struct igb_adapter *adapter);
|
||||
extern void igb_ptp_rx_rgtstamp(struct igb_q_vector *q_vector,
|
||||
struct sk_buff *skb);
|
||||
extern void igb_ptp_rx_pktstamp(struct igb_q_vector *q_vector,
|
||||
unsigned char *va,
|
||||
struct sk_buff *skb);
|
||||
int igb_up(struct igb_adapter *);
|
||||
void igb_down(struct igb_adapter *);
|
||||
void igb_reinit_locked(struct igb_adapter *);
|
||||
void igb_reset(struct igb_adapter *);
|
||||
void igb_write_rss_indir_tbl(struct igb_adapter *);
|
||||
int igb_set_spd_dplx(struct igb_adapter *, u32, u8);
|
||||
int igb_setup_tx_resources(struct igb_ring *);
|
||||
int igb_setup_rx_resources(struct igb_ring *);
|
||||
void igb_free_tx_resources(struct igb_ring *);
|
||||
void igb_free_rx_resources(struct igb_ring *);
|
||||
void igb_configure_tx_ring(struct igb_adapter *, struct igb_ring *);
|
||||
void igb_configure_rx_ring(struct igb_adapter *, struct igb_ring *);
|
||||
void igb_setup_tctl(struct igb_adapter *);
|
||||
void igb_setup_rctl(struct igb_adapter *);
|
||||
netdev_tx_t igb_xmit_frame_ring(struct sk_buff *, struct igb_ring *);
|
||||
void igb_unmap_and_free_tx_resource(struct igb_ring *, struct igb_tx_buffer *);
|
||||
void igb_alloc_rx_buffers(struct igb_ring *, u16);
|
||||
void igb_update_stats(struct igb_adapter *, struct rtnl_link_stats64 *);
|
||||
bool igb_has_link(struct igb_adapter *adapter);
|
||||
void igb_set_ethtool_ops(struct net_device *);
|
||||
void igb_power_up_link(struct igb_adapter *);
|
||||
void igb_set_fw_version(struct igb_adapter *);
|
||||
void igb_ptp_init(struct igb_adapter *adapter);
|
||||
void igb_ptp_stop(struct igb_adapter *adapter);
|
||||
void igb_ptp_reset(struct igb_adapter *adapter);
|
||||
void igb_ptp_tx_work(struct work_struct *work);
|
||||
void igb_ptp_rx_hang(struct igb_adapter *adapter);
|
||||
void igb_ptp_tx_hwtstamp(struct igb_adapter *adapter);
|
||||
void igb_ptp_rx_rgtstamp(struct igb_q_vector *q_vector, struct sk_buff *skb);
|
||||
void igb_ptp_rx_pktstamp(struct igb_q_vector *q_vector, unsigned char *va,
|
||||
struct sk_buff *skb);
|
||||
static inline void igb_ptp_rx_hwtstamp(struct igb_ring *rx_ring,
|
||||
union e1000_adv_rx_desc *rx_desc,
|
||||
struct sk_buff *skb)
|
||||
@ -531,11 +528,11 @@ static inline void igb_ptp_rx_hwtstamp(struct igb_ring *rx_ring,
|
||||
rx_ring->last_rx_timestamp = jiffies;
|
||||
}
|
||||
|
||||
extern int igb_ptp_hwtstamp_ioctl(struct net_device *netdev,
|
||||
struct ifreq *ifr, int cmd);
|
||||
int igb_ptp_hwtstamp_ioctl(struct net_device *netdev, struct ifreq *ifr,
|
||||
int cmd);
|
||||
#ifdef CONFIG_IGB_HWMON
|
||||
extern void igb_sysfs_exit(struct igb_adapter *adapter);
|
||||
extern int igb_sysfs_init(struct igb_adapter *adapter);
|
||||
void igb_sysfs_exit(struct igb_adapter *adapter);
|
||||
int igb_sysfs_init(struct igb_adapter *adapter);
|
||||
#endif
|
||||
static inline s32 igb_reset_phy(struct e1000_hw *hw)
|
||||
{
|
||||
|
@ -312,17 +312,17 @@ enum igbvf_state_t {
|
||||
extern char igbvf_driver_name[];
|
||||
extern const char igbvf_driver_version[];
|
||||
|
||||
extern void igbvf_check_options(struct igbvf_adapter *);
|
||||
extern void igbvf_set_ethtool_ops(struct net_device *);
|
||||
void igbvf_check_options(struct igbvf_adapter *);
|
||||
void igbvf_set_ethtool_ops(struct net_device *);
|
||||
|
||||
extern int igbvf_up(struct igbvf_adapter *);
|
||||
extern void igbvf_down(struct igbvf_adapter *);
|
||||
extern void igbvf_reinit_locked(struct igbvf_adapter *);
|
||||
extern int igbvf_setup_rx_resources(struct igbvf_adapter *, struct igbvf_ring *);
|
||||
extern int igbvf_setup_tx_resources(struct igbvf_adapter *, struct igbvf_ring *);
|
||||
extern void igbvf_free_rx_resources(struct igbvf_ring *);
|
||||
extern void igbvf_free_tx_resources(struct igbvf_ring *);
|
||||
extern void igbvf_update_stats(struct igbvf_adapter *);
|
||||
int igbvf_up(struct igbvf_adapter *);
|
||||
void igbvf_down(struct igbvf_adapter *);
|
||||
void igbvf_reinit_locked(struct igbvf_adapter *);
|
||||
int igbvf_setup_rx_resources(struct igbvf_adapter *, struct igbvf_ring *);
|
||||
int igbvf_setup_tx_resources(struct igbvf_adapter *, struct igbvf_ring *);
|
||||
void igbvf_free_rx_resources(struct igbvf_ring *);
|
||||
void igbvf_free_tx_resources(struct igbvf_ring *);
|
||||
void igbvf_update_stats(struct igbvf_adapter *);
|
||||
|
||||
extern unsigned int copybreak;
|
||||
|
||||
|
@ -187,21 +187,21 @@ enum ixgb_state_t {
|
||||
};
|
||||
|
||||
/* Exported from other modules */
|
||||
extern void ixgb_check_options(struct ixgb_adapter *adapter);
|
||||
extern void ixgb_set_ethtool_ops(struct net_device *netdev);
|
||||
void ixgb_check_options(struct ixgb_adapter *adapter);
|
||||
void ixgb_set_ethtool_ops(struct net_device *netdev);
|
||||
extern char ixgb_driver_name[];
|
||||
extern const char ixgb_driver_version[];
|
||||
|
||||
extern void ixgb_set_speed_duplex(struct net_device *netdev);
|
||||
void ixgb_set_speed_duplex(struct net_device *netdev);
|
||||
|
||||
extern int ixgb_up(struct ixgb_adapter *adapter);
|
||||
extern void ixgb_down(struct ixgb_adapter *adapter, bool kill_watchdog);
|
||||
extern void ixgb_reset(struct ixgb_adapter *adapter);
|
||||
extern int ixgb_setup_rx_resources(struct ixgb_adapter *adapter);
|
||||
extern int ixgb_setup_tx_resources(struct ixgb_adapter *adapter);
|
||||
extern void ixgb_free_rx_resources(struct ixgb_adapter *adapter);
|
||||
extern void ixgb_free_tx_resources(struct ixgb_adapter *adapter);
|
||||
extern void ixgb_update_stats(struct ixgb_adapter *adapter);
|
||||
int ixgb_up(struct ixgb_adapter *adapter);
|
||||
void ixgb_down(struct ixgb_adapter *adapter, bool kill_watchdog);
|
||||
void ixgb_reset(struct ixgb_adapter *adapter);
|
||||
int ixgb_setup_rx_resources(struct ixgb_adapter *adapter);
|
||||
int ixgb_setup_tx_resources(struct ixgb_adapter *adapter);
|
||||
void ixgb_free_rx_resources(struct ixgb_adapter *adapter);
|
||||
void ixgb_free_tx_resources(struct ixgb_adapter *adapter);
|
||||
void ixgb_update_stats(struct ixgb_adapter *adapter);
|
||||
|
||||
|
||||
#endif /* _IXGB_H_ */
|
||||
|
@ -759,27 +759,20 @@ struct ixgb_hw_stats {
|
||||
};
|
||||
|
||||
/* Function Prototypes */
|
||||
extern bool ixgb_adapter_stop(struct ixgb_hw *hw);
|
||||
extern bool ixgb_init_hw(struct ixgb_hw *hw);
|
||||
extern bool ixgb_adapter_start(struct ixgb_hw *hw);
|
||||
extern void ixgb_check_for_link(struct ixgb_hw *hw);
|
||||
extern bool ixgb_check_for_bad_link(struct ixgb_hw *hw);
|
||||
|
||||
extern void ixgb_rar_set(struct ixgb_hw *hw,
|
||||
u8 *addr,
|
||||
u32 index);
|
||||
bool ixgb_adapter_stop(struct ixgb_hw *hw);
|
||||
bool ixgb_init_hw(struct ixgb_hw *hw);
|
||||
bool ixgb_adapter_start(struct ixgb_hw *hw);
|
||||
void ixgb_check_for_link(struct ixgb_hw *hw);
|
||||
bool ixgb_check_for_bad_link(struct ixgb_hw *hw);
|
||||
|
||||
void ixgb_rar_set(struct ixgb_hw *hw, u8 *addr, u32 index);
|
||||
|
||||
/* Filters (multicast, vlan, receive) */
|
||||
extern void ixgb_mc_addr_list_update(struct ixgb_hw *hw,
|
||||
u8 *mc_addr_list,
|
||||
u32 mc_addr_count,
|
||||
u32 pad);
|
||||
void ixgb_mc_addr_list_update(struct ixgb_hw *hw, u8 *mc_addr_list,
|
||||
u32 mc_addr_count, u32 pad);
|
||||
|
||||
/* Vfta functions */
|
||||
extern void ixgb_write_vfta(struct ixgb_hw *hw,
|
||||
u32 offset,
|
||||
u32 value);
|
||||
void ixgb_write_vfta(struct ixgb_hw *hw, u32 offset, u32 value);
|
||||
|
||||
/* Access functions to eeprom data */
|
||||
void ixgb_get_ee_mac_addr(struct ixgb_hw *hw, u8 *mac_addr);
|
||||
|
@ -786,93 +786,89 @@ extern const char ixgbe_driver_version[];
|
||||
extern char ixgbe_default_device_descr[];
|
||||
#endif /* IXGBE_FCOE */
|
||||
|
||||
extern void ixgbe_up(struct ixgbe_adapter *adapter);
|
||||
extern void ixgbe_down(struct ixgbe_adapter *adapter);
|
||||
extern void ixgbe_reinit_locked(struct ixgbe_adapter *adapter);
|
||||
extern void ixgbe_reset(struct ixgbe_adapter *adapter);
|
||||
extern void ixgbe_set_ethtool_ops(struct net_device *netdev);
|
||||
extern int ixgbe_setup_rx_resources(struct ixgbe_ring *);
|
||||
extern int ixgbe_setup_tx_resources(struct ixgbe_ring *);
|
||||
extern void ixgbe_free_rx_resources(struct ixgbe_ring *);
|
||||
extern void ixgbe_free_tx_resources(struct ixgbe_ring *);
|
||||
extern void ixgbe_configure_rx_ring(struct ixgbe_adapter *,struct ixgbe_ring *);
|
||||
extern void ixgbe_configure_tx_ring(struct ixgbe_adapter *,struct ixgbe_ring *);
|
||||
extern void ixgbe_disable_rx_queue(struct ixgbe_adapter *adapter,
|
||||
struct ixgbe_ring *);
|
||||
extern void ixgbe_update_stats(struct ixgbe_adapter *adapter);
|
||||
extern int ixgbe_init_interrupt_scheme(struct ixgbe_adapter *adapter);
|
||||
extern int ixgbe_wol_supported(struct ixgbe_adapter *adapter, u16 device_id,
|
||||
void ixgbe_up(struct ixgbe_adapter *adapter);
|
||||
void ixgbe_down(struct ixgbe_adapter *adapter);
|
||||
void ixgbe_reinit_locked(struct ixgbe_adapter *adapter);
|
||||
void ixgbe_reset(struct ixgbe_adapter *adapter);
|
||||
void ixgbe_set_ethtool_ops(struct net_device *netdev);
|
||||
int ixgbe_setup_rx_resources(struct ixgbe_ring *);
|
||||
int ixgbe_setup_tx_resources(struct ixgbe_ring *);
|
||||
void ixgbe_free_rx_resources(struct ixgbe_ring *);
|
||||
void ixgbe_free_tx_resources(struct ixgbe_ring *);
|
||||
void ixgbe_configure_rx_ring(struct ixgbe_adapter *, struct ixgbe_ring *);
|
||||
void ixgbe_configure_tx_ring(struct ixgbe_adapter *, struct ixgbe_ring *);
|
||||
void ixgbe_disable_rx_queue(struct ixgbe_adapter *adapter, struct ixgbe_ring *);
|
||||
void ixgbe_update_stats(struct ixgbe_adapter *adapter);
|
||||
int ixgbe_init_interrupt_scheme(struct ixgbe_adapter *adapter);
|
||||
int ixgbe_wol_supported(struct ixgbe_adapter *adapter, u16 device_id,
|
||||
u16 subdevice_id);
|
||||
extern void ixgbe_clear_interrupt_scheme(struct ixgbe_adapter *adapter);
|
||||
extern netdev_tx_t ixgbe_xmit_frame_ring(struct sk_buff *,
|
||||
struct ixgbe_adapter *,
|
||||
struct ixgbe_ring *);
|
||||
extern void ixgbe_unmap_and_free_tx_resource(struct ixgbe_ring *,
|
||||
struct ixgbe_tx_buffer *);
|
||||
extern void ixgbe_alloc_rx_buffers(struct ixgbe_ring *, u16);
|
||||
extern void ixgbe_write_eitr(struct ixgbe_q_vector *);
|
||||
extern int ixgbe_poll(struct napi_struct *napi, int budget);
|
||||
extern int ethtool_ioctl(struct ifreq *ifr);
|
||||
extern s32 ixgbe_reinit_fdir_tables_82599(struct ixgbe_hw *hw);
|
||||
extern s32 ixgbe_init_fdir_signature_82599(struct ixgbe_hw *hw, u32 fdirctrl);
|
||||
extern s32 ixgbe_init_fdir_perfect_82599(struct ixgbe_hw *hw, u32 fdirctrl);
|
||||
extern s32 ixgbe_fdir_add_signature_filter_82599(struct ixgbe_hw *hw,
|
||||
union ixgbe_atr_hash_dword input,
|
||||
union ixgbe_atr_hash_dword common,
|
||||
u8 queue);
|
||||
extern s32 ixgbe_fdir_set_input_mask_82599(struct ixgbe_hw *hw,
|
||||
union ixgbe_atr_input *input_mask);
|
||||
extern s32 ixgbe_fdir_write_perfect_filter_82599(struct ixgbe_hw *hw,
|
||||
union ixgbe_atr_input *input,
|
||||
u16 soft_id, u8 queue);
|
||||
extern s32 ixgbe_fdir_erase_perfect_filter_82599(struct ixgbe_hw *hw,
|
||||
union ixgbe_atr_input *input,
|
||||
u16 soft_id);
|
||||
extern void ixgbe_atr_compute_perfect_hash_82599(union ixgbe_atr_input *input,
|
||||
union ixgbe_atr_input *mask);
|
||||
extern bool ixgbe_verify_lesm_fw_enabled_82599(struct ixgbe_hw *hw);
|
||||
extern void ixgbe_set_rx_mode(struct net_device *netdev);
|
||||
void ixgbe_clear_interrupt_scheme(struct ixgbe_adapter *adapter);
|
||||
netdev_tx_t ixgbe_xmit_frame_ring(struct sk_buff *, struct ixgbe_adapter *,
|
||||
struct ixgbe_ring *);
|
||||
void ixgbe_unmap_and_free_tx_resource(struct ixgbe_ring *,
|
||||
struct ixgbe_tx_buffer *);
|
||||
void ixgbe_alloc_rx_buffers(struct ixgbe_ring *, u16);
|
||||
void ixgbe_write_eitr(struct ixgbe_q_vector *);
|
||||
int ixgbe_poll(struct napi_struct *napi, int budget);
|
||||
int ethtool_ioctl(struct ifreq *ifr);
|
||||
s32 ixgbe_reinit_fdir_tables_82599(struct ixgbe_hw *hw);
|
||||
s32 ixgbe_init_fdir_signature_82599(struct ixgbe_hw *hw, u32 fdirctrl);
|
||||
s32 ixgbe_init_fdir_perfect_82599(struct ixgbe_hw *hw, u32 fdirctrl);
|
||||
s32 ixgbe_fdir_add_signature_filter_82599(struct ixgbe_hw *hw,
|
||||
union ixgbe_atr_hash_dword input,
|
||||
union ixgbe_atr_hash_dword common,
|
||||
u8 queue);
|
||||
s32 ixgbe_fdir_set_input_mask_82599(struct ixgbe_hw *hw,
|
||||
union ixgbe_atr_input *input_mask);
|
||||
s32 ixgbe_fdir_write_perfect_filter_82599(struct ixgbe_hw *hw,
|
||||
union ixgbe_atr_input *input,
|
||||
u16 soft_id, u8 queue);
|
||||
s32 ixgbe_fdir_erase_perfect_filter_82599(struct ixgbe_hw *hw,
|
||||
union ixgbe_atr_input *input,
|
||||
u16 soft_id);
|
||||
void ixgbe_atr_compute_perfect_hash_82599(union ixgbe_atr_input *input,
|
||||
union ixgbe_atr_input *mask);
|
||||
bool ixgbe_verify_lesm_fw_enabled_82599(struct ixgbe_hw *hw);
|
||||
void ixgbe_set_rx_mode(struct net_device *netdev);
|
||||
#ifdef CONFIG_IXGBE_DCB
|
||||
extern void ixgbe_set_rx_drop_en(struct ixgbe_adapter *adapter);
|
||||
void ixgbe_set_rx_drop_en(struct ixgbe_adapter *adapter);
|
||||
#endif
|
||||
extern int ixgbe_setup_tc(struct net_device *dev, u8 tc);
|
||||
extern void ixgbe_tx_ctxtdesc(struct ixgbe_ring *, u32, u32, u32, u32);
|
||||
extern void ixgbe_do_reset(struct net_device *netdev);
|
||||
int ixgbe_setup_tc(struct net_device *dev, u8 tc);
|
||||
void ixgbe_tx_ctxtdesc(struct ixgbe_ring *, u32, u32, u32, u32);
|
||||
void ixgbe_do_reset(struct net_device *netdev);
|
||||
#ifdef CONFIG_IXGBE_HWMON
|
||||
extern void ixgbe_sysfs_exit(struct ixgbe_adapter *adapter);
|
||||
extern int ixgbe_sysfs_init(struct ixgbe_adapter *adapter);
|
||||
void ixgbe_sysfs_exit(struct ixgbe_adapter *adapter);
|
||||
int ixgbe_sysfs_init(struct ixgbe_adapter *adapter);
|
||||
#endif /* CONFIG_IXGBE_HWMON */
|
||||
#ifdef IXGBE_FCOE
|
||||
extern void ixgbe_configure_fcoe(struct ixgbe_adapter *adapter);
|
||||
extern int ixgbe_fso(struct ixgbe_ring *tx_ring,
|
||||
struct ixgbe_tx_buffer *first,
|
||||
u8 *hdr_len);
|
||||
extern int ixgbe_fcoe_ddp(struct ixgbe_adapter *adapter,
|
||||
union ixgbe_adv_rx_desc *rx_desc,
|
||||
struct sk_buff *skb);
|
||||
extern int ixgbe_fcoe_ddp_get(struct net_device *netdev, u16 xid,
|
||||
struct scatterlist *sgl, unsigned int sgc);
|
||||
extern int ixgbe_fcoe_ddp_target(struct net_device *netdev, u16 xid,
|
||||
struct scatterlist *sgl, unsigned int sgc);
|
||||
extern int ixgbe_fcoe_ddp_put(struct net_device *netdev, u16 xid);
|
||||
extern int ixgbe_setup_fcoe_ddp_resources(struct ixgbe_adapter *adapter);
|
||||
extern void ixgbe_free_fcoe_ddp_resources(struct ixgbe_adapter *adapter);
|
||||
extern int ixgbe_fcoe_enable(struct net_device *netdev);
|
||||
extern int ixgbe_fcoe_disable(struct net_device *netdev);
|
||||
void ixgbe_configure_fcoe(struct ixgbe_adapter *adapter);
|
||||
int ixgbe_fso(struct ixgbe_ring *tx_ring, struct ixgbe_tx_buffer *first,
|
||||
u8 *hdr_len);
|
||||
int ixgbe_fcoe_ddp(struct ixgbe_adapter *adapter,
|
||||
union ixgbe_adv_rx_desc *rx_desc, struct sk_buff *skb);
|
||||
int ixgbe_fcoe_ddp_get(struct net_device *netdev, u16 xid,
|
||||
struct scatterlist *sgl, unsigned int sgc);
|
||||
int ixgbe_fcoe_ddp_target(struct net_device *netdev, u16 xid,
|
||||
struct scatterlist *sgl, unsigned int sgc);
|
||||
int ixgbe_fcoe_ddp_put(struct net_device *netdev, u16 xid);
|
||||
int ixgbe_setup_fcoe_ddp_resources(struct ixgbe_adapter *adapter);
|
||||
void ixgbe_free_fcoe_ddp_resources(struct ixgbe_adapter *adapter);
|
||||
int ixgbe_fcoe_enable(struct net_device *netdev);
|
||||
int ixgbe_fcoe_disable(struct net_device *netdev);
|
||||
#ifdef CONFIG_IXGBE_DCB
|
||||
extern u8 ixgbe_fcoe_getapp(struct ixgbe_adapter *adapter);
|
||||
extern u8 ixgbe_fcoe_setapp(struct ixgbe_adapter *adapter, u8 up);
|
||||
u8 ixgbe_fcoe_getapp(struct ixgbe_adapter *adapter);
|
||||
u8 ixgbe_fcoe_setapp(struct ixgbe_adapter *adapter, u8 up);
|
||||
#endif /* CONFIG_IXGBE_DCB */
|
||||
extern int ixgbe_fcoe_get_wwn(struct net_device *netdev, u64 *wwn, int type);
|
||||
extern int ixgbe_fcoe_get_hbainfo(struct net_device *netdev,
|
||||
struct netdev_fcoe_hbainfo *info);
|
||||
extern u8 ixgbe_fcoe_get_tc(struct ixgbe_adapter *adapter);
|
||||
int ixgbe_fcoe_get_wwn(struct net_device *netdev, u64 *wwn, int type);
|
||||
int ixgbe_fcoe_get_hbainfo(struct net_device *netdev,
|
||||
struct netdev_fcoe_hbainfo *info);
|
||||
u8 ixgbe_fcoe_get_tc(struct ixgbe_adapter *adapter);
|
||||
#endif /* IXGBE_FCOE */
|
||||
#ifdef CONFIG_DEBUG_FS
|
||||
extern void ixgbe_dbg_adapter_init(struct ixgbe_adapter *adapter);
|
||||
extern void ixgbe_dbg_adapter_exit(struct ixgbe_adapter *adapter);
|
||||
extern void ixgbe_dbg_init(void);
|
||||
extern void ixgbe_dbg_exit(void);
|
||||
void ixgbe_dbg_adapter_init(struct ixgbe_adapter *adapter);
|
||||
void ixgbe_dbg_adapter_exit(struct ixgbe_adapter *adapter);
|
||||
void ixgbe_dbg_init(void);
|
||||
void ixgbe_dbg_exit(void);
|
||||
#else
|
||||
static inline void ixgbe_dbg_adapter_init(struct ixgbe_adapter *adapter) {}
|
||||
static inline void ixgbe_dbg_adapter_exit(struct ixgbe_adapter *adapter) {}
|
||||
@ -884,12 +880,12 @@ static inline struct netdev_queue *txring_txq(const struct ixgbe_ring *ring)
|
||||
return netdev_get_tx_queue(ring->netdev, ring->queue_index);
|
||||
}
|
||||
|
||||
extern void ixgbe_ptp_init(struct ixgbe_adapter *adapter);
|
||||
extern void ixgbe_ptp_stop(struct ixgbe_adapter *adapter);
|
||||
extern void ixgbe_ptp_overflow_check(struct ixgbe_adapter *adapter);
|
||||
extern void ixgbe_ptp_rx_hang(struct ixgbe_adapter *adapter);
|
||||
extern void __ixgbe_ptp_rx_hwtstamp(struct ixgbe_q_vector *q_vector,
|
||||
struct sk_buff *skb);
|
||||
void ixgbe_ptp_init(struct ixgbe_adapter *adapter);
|
||||
void ixgbe_ptp_stop(struct ixgbe_adapter *adapter);
|
||||
void ixgbe_ptp_overflow_check(struct ixgbe_adapter *adapter);
|
||||
void ixgbe_ptp_rx_hang(struct ixgbe_adapter *adapter);
|
||||
void __ixgbe_ptp_rx_hwtstamp(struct ixgbe_q_vector *q_vector,
|
||||
struct sk_buff *skb);
|
||||
static inline void ixgbe_ptp_rx_hwtstamp(struct ixgbe_ring *rx_ring,
|
||||
union ixgbe_adv_rx_desc *rx_desc,
|
||||
struct sk_buff *skb)
|
||||
@ -906,11 +902,11 @@ static inline void ixgbe_ptp_rx_hwtstamp(struct ixgbe_ring *rx_ring,
|
||||
rx_ring->last_rx_timestamp = jiffies;
|
||||
}
|
||||
|
||||
extern int ixgbe_ptp_hwtstamp_ioctl(struct ixgbe_adapter *adapter,
|
||||
struct ifreq *ifr, int cmd);
|
||||
extern void ixgbe_ptp_start_cyclecounter(struct ixgbe_adapter *adapter);
|
||||
extern void ixgbe_ptp_reset(struct ixgbe_adapter *adapter);
|
||||
extern void ixgbe_ptp_check_pps_event(struct ixgbe_adapter *adapter, u32 eicr);
|
||||
int ixgbe_ptp_hwtstamp_ioctl(struct ixgbe_adapter *adapter, struct ifreq *ifr,
|
||||
int cmd);
|
||||
void ixgbe_ptp_start_cyclecounter(struct ixgbe_adapter *adapter);
|
||||
void ixgbe_ptp_reset(struct ixgbe_adapter *adapter);
|
||||
void ixgbe_ptp_check_pps_event(struct ixgbe_adapter *adapter, u32 eicr);
|
||||
#ifdef CONFIG_PCI_IOV
|
||||
void ixgbe_sriov_reinit(struct ixgbe_adapter *adapter);
|
||||
#endif
|
||||
|
@ -281,27 +281,23 @@ extern const struct ixgbe_mbx_operations ixgbevf_mbx_ops;
|
||||
extern const char ixgbevf_driver_name[];
|
||||
extern const char ixgbevf_driver_version[];
|
||||
|
||||
extern void ixgbevf_up(struct ixgbevf_adapter *adapter);
|
||||
extern void ixgbevf_down(struct ixgbevf_adapter *adapter);
|
||||
extern void ixgbevf_reinit_locked(struct ixgbevf_adapter *adapter);
|
||||
extern void ixgbevf_reset(struct ixgbevf_adapter *adapter);
|
||||
extern void ixgbevf_set_ethtool_ops(struct net_device *netdev);
|
||||
extern int ixgbevf_setup_rx_resources(struct ixgbevf_adapter *,
|
||||
struct ixgbevf_ring *);
|
||||
extern int ixgbevf_setup_tx_resources(struct ixgbevf_adapter *,
|
||||
struct ixgbevf_ring *);
|
||||
extern void ixgbevf_free_rx_resources(struct ixgbevf_adapter *,
|
||||
struct ixgbevf_ring *);
|
||||
extern void ixgbevf_free_tx_resources(struct ixgbevf_adapter *,
|
||||
struct ixgbevf_ring *);
|
||||
extern void ixgbevf_update_stats(struct ixgbevf_adapter *adapter);
|
||||
extern int ethtool_ioctl(struct ifreq *ifr);
|
||||
void ixgbevf_up(struct ixgbevf_adapter *adapter);
|
||||
void ixgbevf_down(struct ixgbevf_adapter *adapter);
|
||||
void ixgbevf_reinit_locked(struct ixgbevf_adapter *adapter);
|
||||
void ixgbevf_reset(struct ixgbevf_adapter *adapter);
|
||||
void ixgbevf_set_ethtool_ops(struct net_device *netdev);
|
||||
int ixgbevf_setup_rx_resources(struct ixgbevf_adapter *, struct ixgbevf_ring *);
|
||||
int ixgbevf_setup_tx_resources(struct ixgbevf_adapter *, struct ixgbevf_ring *);
|
||||
void ixgbevf_free_rx_resources(struct ixgbevf_adapter *, struct ixgbevf_ring *);
|
||||
void ixgbevf_free_tx_resources(struct ixgbevf_adapter *, struct ixgbevf_ring *);
|
||||
void ixgbevf_update_stats(struct ixgbevf_adapter *adapter);
|
||||
int ethtool_ioctl(struct ifreq *ifr);
|
||||
|
||||
extern void ixgbe_napi_add_all(struct ixgbevf_adapter *adapter);
|
||||
extern void ixgbe_napi_del_all(struct ixgbevf_adapter *adapter);
|
||||
void ixgbe_napi_add_all(struct ixgbevf_adapter *adapter);
|
||||
void ixgbe_napi_del_all(struct ixgbevf_adapter *adapter);
|
||||
|
||||
#ifdef DEBUG
|
||||
extern char *ixgbevf_get_hw_dev_name(struct ixgbe_hw *hw);
|
||||
char *ixgbevf_get_hw_dev_name(struct ixgbe_hw *hw);
|
||||
#define hw_dbg(hw, format, arg...) \
|
||||
printk(KERN_DEBUG "%s: " format, ixgbevf_get_hw_dev_name(hw), ##arg)
|
||||
#else
|
||||
|
@ -653,38 +653,38 @@ struct pch_gbe_adapter {
|
||||
extern const char pch_driver_version[];
|
||||
|
||||
/* pch_gbe_main.c */
|
||||
extern int pch_gbe_up(struct pch_gbe_adapter *adapter);
|
||||
extern void pch_gbe_down(struct pch_gbe_adapter *adapter);
|
||||
extern void pch_gbe_reinit_locked(struct pch_gbe_adapter *adapter);
|
||||
extern void pch_gbe_reset(struct pch_gbe_adapter *adapter);
|
||||
extern int pch_gbe_setup_tx_resources(struct pch_gbe_adapter *adapter,
|
||||
struct pch_gbe_tx_ring *txdr);
|
||||
extern int pch_gbe_setup_rx_resources(struct pch_gbe_adapter *adapter,
|
||||
struct pch_gbe_rx_ring *rxdr);
|
||||
extern void pch_gbe_free_tx_resources(struct pch_gbe_adapter *adapter,
|
||||
struct pch_gbe_tx_ring *tx_ring);
|
||||
extern void pch_gbe_free_rx_resources(struct pch_gbe_adapter *adapter,
|
||||
struct pch_gbe_rx_ring *rx_ring);
|
||||
extern void pch_gbe_update_stats(struct pch_gbe_adapter *adapter);
|
||||
extern u32 pch_ch_control_read(struct pci_dev *pdev);
|
||||
extern void pch_ch_control_write(struct pci_dev *pdev, u32 val);
|
||||
extern u32 pch_ch_event_read(struct pci_dev *pdev);
|
||||
extern void pch_ch_event_write(struct pci_dev *pdev, u32 val);
|
||||
extern u32 pch_src_uuid_lo_read(struct pci_dev *pdev);
|
||||
extern u32 pch_src_uuid_hi_read(struct pci_dev *pdev);
|
||||
extern u64 pch_rx_snap_read(struct pci_dev *pdev);
|
||||
extern u64 pch_tx_snap_read(struct pci_dev *pdev);
|
||||
extern int pch_set_station_address(u8 *addr, struct pci_dev *pdev);
|
||||
int pch_gbe_up(struct pch_gbe_adapter *adapter);
|
||||
void pch_gbe_down(struct pch_gbe_adapter *adapter);
|
||||
void pch_gbe_reinit_locked(struct pch_gbe_adapter *adapter);
|
||||
void pch_gbe_reset(struct pch_gbe_adapter *adapter);
|
||||
int pch_gbe_setup_tx_resources(struct pch_gbe_adapter *adapter,
|
||||
struct pch_gbe_tx_ring *txdr);
|
||||
int pch_gbe_setup_rx_resources(struct pch_gbe_adapter *adapter,
|
||||
struct pch_gbe_rx_ring *rxdr);
|
||||
void pch_gbe_free_tx_resources(struct pch_gbe_adapter *adapter,
|
||||
struct pch_gbe_tx_ring *tx_ring);
|
||||
void pch_gbe_free_rx_resources(struct pch_gbe_adapter *adapter,
|
||||
struct pch_gbe_rx_ring *rx_ring);
|
||||
void pch_gbe_update_stats(struct pch_gbe_adapter *adapter);
|
||||
u32 pch_ch_control_read(struct pci_dev *pdev);
|
||||
void pch_ch_control_write(struct pci_dev *pdev, u32 val);
|
||||
u32 pch_ch_event_read(struct pci_dev *pdev);
|
||||
void pch_ch_event_write(struct pci_dev *pdev, u32 val);
|
||||
u32 pch_src_uuid_lo_read(struct pci_dev *pdev);
|
||||
u32 pch_src_uuid_hi_read(struct pci_dev *pdev);
|
||||
u64 pch_rx_snap_read(struct pci_dev *pdev);
|
||||
u64 pch_tx_snap_read(struct pci_dev *pdev);
|
||||
int pch_set_station_address(u8 *addr, struct pci_dev *pdev);
|
||||
|
||||
/* pch_gbe_param.c */
|
||||
extern void pch_gbe_check_options(struct pch_gbe_adapter *adapter);
|
||||
void pch_gbe_check_options(struct pch_gbe_adapter *adapter);
|
||||
|
||||
/* pch_gbe_ethtool.c */
|
||||
extern void pch_gbe_set_ethtool_ops(struct net_device *netdev);
|
||||
void pch_gbe_set_ethtool_ops(struct net_device *netdev);
|
||||
|
||||
/* pch_gbe_mac.c */
|
||||
extern s32 pch_gbe_mac_force_mac_fc(struct pch_gbe_hw *hw);
|
||||
extern s32 pch_gbe_mac_read_mac_addr(struct pch_gbe_hw *hw);
|
||||
extern u16 pch_gbe_mac_ctrl_miim(struct pch_gbe_hw *hw,
|
||||
u32 addr, u32 dir, u32 reg, u16 data);
|
||||
s32 pch_gbe_mac_force_mac_fc(struct pch_gbe_hw *hw);
|
||||
s32 pch_gbe_mac_read_mac_addr(struct pch_gbe_hw *hw);
|
||||
u16 pch_gbe_mac_ctrl_miim(struct pch_gbe_hw *hw, u32 addr, u32 dir, u32 reg,
|
||||
u16 data);
|
||||
#endif /* _PCH_GBE_H_ */
|
||||
|
@ -1883,9 +1883,8 @@ static inline u32 netxen_tx_avail(struct nx_host_tx_ring *tx_ring)
|
||||
|
||||
int netxen_get_flash_mac_addr(struct netxen_adapter *adapter, u64 *mac);
|
||||
int netxen_p3_get_mac_addr(struct netxen_adapter *adapter, u64 *mac);
|
||||
extern void netxen_change_ringparam(struct netxen_adapter *adapter);
|
||||
extern int netxen_rom_fast_read(struct netxen_adapter *adapter, int addr,
|
||||
int *valp);
|
||||
void netxen_change_ringparam(struct netxen_adapter *adapter);
|
||||
int netxen_rom_fast_read(struct netxen_adapter *adapter, int addr, int *valp);
|
||||
|
||||
extern const struct ethtool_ops netxen_nic_ethtool_ops;
|
||||
|
||||
|
@ -2206,14 +2206,14 @@ extern char qlge_driver_name[];
|
||||
extern const char qlge_driver_version[];
|
||||
extern const struct ethtool_ops qlge_ethtool_ops;
|
||||
|
||||
extern int ql_sem_spinlock(struct ql_adapter *qdev, u32 sem_mask);
|
||||
extern void ql_sem_unlock(struct ql_adapter *qdev, u32 sem_mask);
|
||||
extern int ql_read_xgmac_reg(struct ql_adapter *qdev, u32 reg, u32 *data);
|
||||
extern int ql_get_mac_addr_reg(struct ql_adapter *qdev, u32 type, u16 index,
|
||||
u32 *value);
|
||||
extern int ql_get_routing_reg(struct ql_adapter *qdev, u32 index, u32 *value);
|
||||
extern int ql_write_cfg(struct ql_adapter *qdev, void *ptr, int size, u32 bit,
|
||||
u16 q_id);
|
||||
int ql_sem_spinlock(struct ql_adapter *qdev, u32 sem_mask);
|
||||
void ql_sem_unlock(struct ql_adapter *qdev, u32 sem_mask);
|
||||
int ql_read_xgmac_reg(struct ql_adapter *qdev, u32 reg, u32 *data);
|
||||
int ql_get_mac_addr_reg(struct ql_adapter *qdev, u32 type, u16 index,
|
||||
u32 *value);
|
||||
int ql_get_routing_reg(struct ql_adapter *qdev, u32 index, u32 *value);
|
||||
int ql_write_cfg(struct ql_adapter *qdev, void *ptr, int size, u32 bit,
|
||||
u16 q_id);
|
||||
void ql_queue_fw_error(struct ql_adapter *qdev);
|
||||
void ql_mpi_work(struct work_struct *work);
|
||||
void ql_mpi_reset_work(struct work_struct *work);
|
||||
@ -2233,10 +2233,9 @@ int ql_unpause_mpi_risc(struct ql_adapter *qdev);
|
||||
int ql_pause_mpi_risc(struct ql_adapter *qdev);
|
||||
int ql_hard_reset_mpi_risc(struct ql_adapter *qdev);
|
||||
int ql_soft_reset_mpi_risc(struct ql_adapter *qdev);
|
||||
int ql_dump_risc_ram_area(struct ql_adapter *qdev, void *buf,
|
||||
u32 ram_addr, int word_count);
|
||||
int ql_core_dump(struct ql_adapter *qdev,
|
||||
struct ql_mpi_coredump *mpi_coredump);
|
||||
int ql_dump_risc_ram_area(struct ql_adapter *qdev, void *buf, u32 ram_addr,
|
||||
int word_count);
|
||||
int ql_core_dump(struct ql_adapter *qdev, struct ql_mpi_coredump *mpi_coredump);
|
||||
int ql_mb_about_fw(struct ql_adapter *qdev);
|
||||
int ql_mb_wol_set_magic(struct ql_adapter *qdev, u32 enable_wol);
|
||||
int ql_mb_wol_mode(struct ql_adapter *qdev, u32 wol);
|
||||
@ -2249,8 +2248,7 @@ int ql_mb_get_port_cfg(struct ql_adapter *qdev);
|
||||
int ql_mb_set_port_cfg(struct ql_adapter *qdev);
|
||||
int ql_wait_fifo_empty(struct ql_adapter *qdev);
|
||||
void ql_get_dump(struct ql_adapter *qdev, void *buff);
|
||||
void ql_gen_reg_dump(struct ql_adapter *qdev,
|
||||
struct ql_reg_dump *mpi_coredump);
|
||||
void ql_gen_reg_dump(struct ql_adapter *qdev, struct ql_reg_dump *mpi_coredump);
|
||||
netdev_tx_t ql_lb_send(struct sk_buff *skb, struct net_device *ndev);
|
||||
void ql_check_lb_frame(struct ql_adapter *, struct sk_buff *);
|
||||
int ql_own_firmware(struct ql_adapter *qdev);
|
||||
@ -2264,9 +2262,9 @@ int ql_clean_lb_rx_ring(struct rx_ring *rx_ring, int budget);
|
||||
/* #define QL_OB_DUMP */
|
||||
|
||||
#ifdef QL_REG_DUMP
|
||||
extern void ql_dump_xgmac_control_regs(struct ql_adapter *qdev);
|
||||
extern void ql_dump_routing_entries(struct ql_adapter *qdev);
|
||||
extern void ql_dump_regs(struct ql_adapter *qdev);
|
||||
void ql_dump_xgmac_control_regs(struct ql_adapter *qdev);
|
||||
void ql_dump_routing_entries(struct ql_adapter *qdev);
|
||||
void ql_dump_regs(struct ql_adapter *qdev);
|
||||
#define QL_DUMP_REGS(qdev) ql_dump_regs(qdev)
|
||||
#define QL_DUMP_ROUTE(qdev) ql_dump_routing_entries(qdev)
|
||||
#define QL_DUMP_XGMAC_CONTROL_REGS(qdev) ql_dump_xgmac_control_regs(qdev)
|
||||
@ -2277,26 +2275,26 @@ extern void ql_dump_regs(struct ql_adapter *qdev);
|
||||
#endif
|
||||
|
||||
#ifdef QL_STAT_DUMP
|
||||
extern void ql_dump_stat(struct ql_adapter *qdev);
|
||||
void ql_dump_stat(struct ql_adapter *qdev);
|
||||
#define QL_DUMP_STAT(qdev) ql_dump_stat(qdev)
|
||||
#else
|
||||
#define QL_DUMP_STAT(qdev)
|
||||
#endif
|
||||
|
||||
#ifdef QL_DEV_DUMP
|
||||
extern void ql_dump_qdev(struct ql_adapter *qdev);
|
||||
void ql_dump_qdev(struct ql_adapter *qdev);
|
||||
#define QL_DUMP_QDEV(qdev) ql_dump_qdev(qdev)
|
||||
#else
|
||||
#define QL_DUMP_QDEV(qdev)
|
||||
#endif
|
||||
|
||||
#ifdef QL_CB_DUMP
|
||||
extern void ql_dump_wqicb(struct wqicb *wqicb);
|
||||
extern void ql_dump_tx_ring(struct tx_ring *tx_ring);
|
||||
extern void ql_dump_ricb(struct ricb *ricb);
|
||||
extern void ql_dump_cqicb(struct cqicb *cqicb);
|
||||
extern void ql_dump_rx_ring(struct rx_ring *rx_ring);
|
||||
extern void ql_dump_hw_cb(struct ql_adapter *qdev, int size, u32 bit, u16 q_id);
|
||||
void ql_dump_wqicb(struct wqicb *wqicb);
|
||||
void ql_dump_tx_ring(struct tx_ring *tx_ring);
|
||||
void ql_dump_ricb(struct ricb *ricb);
|
||||
void ql_dump_cqicb(struct cqicb *cqicb);
|
||||
void ql_dump_rx_ring(struct rx_ring *rx_ring);
|
||||
void ql_dump_hw_cb(struct ql_adapter *qdev, int size, u32 bit, u16 q_id);
|
||||
#define QL_DUMP_RICB(ricb) ql_dump_ricb(ricb)
|
||||
#define QL_DUMP_WQICB(wqicb) ql_dump_wqicb(wqicb)
|
||||
#define QL_DUMP_TX_RING(tx_ring) ql_dump_tx_ring(tx_ring)
|
||||
@ -2314,9 +2312,9 @@ extern void ql_dump_hw_cb(struct ql_adapter *qdev, int size, u32 bit, u16 q_id);
|
||||
#endif
|
||||
|
||||
#ifdef QL_OB_DUMP
|
||||
extern void ql_dump_tx_desc(struct tx_buf_desc *tbd);
|
||||
extern void ql_dump_ob_mac_iocb(struct ob_mac_iocb_req *ob_mac_iocb);
|
||||
extern void ql_dump_ob_mac_rsp(struct ob_mac_iocb_rsp *ob_mac_rsp);
|
||||
void ql_dump_tx_desc(struct tx_buf_desc *tbd);
|
||||
void ql_dump_ob_mac_iocb(struct ob_mac_iocb_req *ob_mac_iocb);
|
||||
void ql_dump_ob_mac_rsp(struct ob_mac_iocb_rsp *ob_mac_rsp);
|
||||
#define QL_DUMP_OB_MAC_IOCB(ob_mac_iocb) ql_dump_ob_mac_iocb(ob_mac_iocb)
|
||||
#define QL_DUMP_OB_MAC_RSP(ob_mac_rsp) ql_dump_ob_mac_rsp(ob_mac_rsp)
|
||||
#else
|
||||
@ -2325,14 +2323,14 @@ extern void ql_dump_ob_mac_rsp(struct ob_mac_iocb_rsp *ob_mac_rsp);
|
||||
#endif
|
||||
|
||||
#ifdef QL_IB_DUMP
|
||||
extern void ql_dump_ib_mac_rsp(struct ib_mac_iocb_rsp *ib_mac_rsp);
|
||||
void ql_dump_ib_mac_rsp(struct ib_mac_iocb_rsp *ib_mac_rsp);
|
||||
#define QL_DUMP_IB_MAC_RSP(ib_mac_rsp) ql_dump_ib_mac_rsp(ib_mac_rsp)
|
||||
#else
|
||||
#define QL_DUMP_IB_MAC_RSP(ib_mac_rsp)
|
||||
#endif
|
||||
|
||||
#ifdef QL_ALL_DUMP
|
||||
extern void ql_dump_all(struct ql_adapter *qdev);
|
||||
void ql_dump_all(struct ql_adapter *qdev);
|
||||
#define QL_DUMP_ALL(qdev) ql_dump_all(qdev)
|
||||
#else
|
||||
#define QL_DUMP_ALL(qdev)
|
||||
|
@ -18,38 +18,36 @@
|
||||
#define EFX_MEM_BAR 2
|
||||
|
||||
/* TX */
|
||||
extern int efx_probe_tx_queue(struct efx_tx_queue *tx_queue);
|
||||
extern void efx_remove_tx_queue(struct efx_tx_queue *tx_queue);
|
||||
extern void efx_init_tx_queue(struct efx_tx_queue *tx_queue);
|
||||
extern void efx_init_tx_queue_core_txq(struct efx_tx_queue *tx_queue);
|
||||
extern void efx_fini_tx_queue(struct efx_tx_queue *tx_queue);
|
||||
extern netdev_tx_t
|
||||
efx_hard_start_xmit(struct sk_buff *skb, struct net_device *net_dev);
|
||||
extern netdev_tx_t
|
||||
efx_enqueue_skb(struct efx_tx_queue *tx_queue, struct sk_buff *skb);
|
||||
extern void efx_xmit_done(struct efx_tx_queue *tx_queue, unsigned int index);
|
||||
extern int efx_setup_tc(struct net_device *net_dev, u8 num_tc);
|
||||
extern unsigned int efx_tx_max_skb_descs(struct efx_nic *efx);
|
||||
int efx_probe_tx_queue(struct efx_tx_queue *tx_queue);
|
||||
void efx_remove_tx_queue(struct efx_tx_queue *tx_queue);
|
||||
void efx_init_tx_queue(struct efx_tx_queue *tx_queue);
|
||||
void efx_init_tx_queue_core_txq(struct efx_tx_queue *tx_queue);
|
||||
void efx_fini_tx_queue(struct efx_tx_queue *tx_queue);
|
||||
netdev_tx_t efx_hard_start_xmit(struct sk_buff *skb,
|
||||
struct net_device *net_dev);
|
||||
netdev_tx_t efx_enqueue_skb(struct efx_tx_queue *tx_queue, struct sk_buff *skb);
|
||||
void efx_xmit_done(struct efx_tx_queue *tx_queue, unsigned int index);
|
||||
int efx_setup_tc(struct net_device *net_dev, u8 num_tc);
|
||||
unsigned int efx_tx_max_skb_descs(struct efx_nic *efx);
|
||||
extern unsigned int efx_piobuf_size;
|
||||
|
||||
/* RX */
|
||||
extern void efx_rx_config_page_split(struct efx_nic *efx);
|
||||
extern int efx_probe_rx_queue(struct efx_rx_queue *rx_queue);
|
||||
extern void efx_remove_rx_queue(struct efx_rx_queue *rx_queue);
|
||||
extern void efx_init_rx_queue(struct efx_rx_queue *rx_queue);
|
||||
extern void efx_fini_rx_queue(struct efx_rx_queue *rx_queue);
|
||||
extern void efx_fast_push_rx_descriptors(struct efx_rx_queue *rx_queue);
|
||||
extern void efx_rx_slow_fill(unsigned long context);
|
||||
extern void __efx_rx_packet(struct efx_channel *channel);
|
||||
extern void efx_rx_packet(struct efx_rx_queue *rx_queue,
|
||||
unsigned int index, unsigned int n_frags,
|
||||
unsigned int len, u16 flags);
|
||||
void efx_rx_config_page_split(struct efx_nic *efx);
|
||||
int efx_probe_rx_queue(struct efx_rx_queue *rx_queue);
|
||||
void efx_remove_rx_queue(struct efx_rx_queue *rx_queue);
|
||||
void efx_init_rx_queue(struct efx_rx_queue *rx_queue);
|
||||
void efx_fini_rx_queue(struct efx_rx_queue *rx_queue);
|
||||
void efx_fast_push_rx_descriptors(struct efx_rx_queue *rx_queue);
|
||||
void efx_rx_slow_fill(unsigned long context);
|
||||
void __efx_rx_packet(struct efx_channel *channel);
|
||||
void efx_rx_packet(struct efx_rx_queue *rx_queue, unsigned int index,
|
||||
unsigned int n_frags, unsigned int len, u16 flags);
|
||||
static inline void efx_rx_flush_packet(struct efx_channel *channel)
|
||||
{
|
||||
if (channel->rx_pkt_n_frags)
|
||||
__efx_rx_packet(channel);
|
||||
}
|
||||
extern void efx_schedule_slow_fill(struct efx_rx_queue *rx_queue);
|
||||
void efx_schedule_slow_fill(struct efx_rx_queue *rx_queue);
|
||||
|
||||
#define EFX_MAX_DMAQ_SIZE 4096UL
|
||||
#define EFX_DEFAULT_DMAQ_SIZE 1024UL
|
||||
@ -163,9 +161,9 @@ static inline s32 efx_filter_get_rx_ids(struct efx_nic *efx,
|
||||
return efx->type->filter_get_rx_ids(efx, priority, buf, size);
|
||||
}
|
||||
#ifdef CONFIG_RFS_ACCEL
|
||||
extern int efx_filter_rfs(struct net_device *net_dev, const struct sk_buff *skb,
|
||||
u16 rxq_index, u32 flow_id);
|
||||
extern bool __efx_filter_rfs_expire(struct efx_nic *efx, unsigned quota);
|
||||
int efx_filter_rfs(struct net_device *net_dev, const struct sk_buff *skb,
|
||||
u16 rxq_index, u32 flow_id);
|
||||
bool __efx_filter_rfs_expire(struct efx_nic *efx, unsigned quota);
|
||||
static inline void efx_filter_rfs_expire(struct efx_channel *channel)
|
||||
{
|
||||
if (channel->rfs_filters_added >= 60 &&
|
||||
@ -177,50 +175,48 @@ static inline void efx_filter_rfs_expire(struct efx_channel *channel)
|
||||
static inline void efx_filter_rfs_expire(struct efx_channel *channel) {}
|
||||
#define efx_filter_rfs_enabled() 0
|
||||
#endif
|
||||
extern bool efx_filter_is_mc_recipient(const struct efx_filter_spec *spec);
|
||||
bool efx_filter_is_mc_recipient(const struct efx_filter_spec *spec);
|
||||
|
||||
/* Channels */
|
||||
extern int efx_channel_dummy_op_int(struct efx_channel *channel);
|
||||
extern void efx_channel_dummy_op_void(struct efx_channel *channel);
|
||||
extern int
|
||||
efx_realloc_channels(struct efx_nic *efx, u32 rxq_entries, u32 txq_entries);
|
||||
int efx_channel_dummy_op_int(struct efx_channel *channel);
|
||||
void efx_channel_dummy_op_void(struct efx_channel *channel);
|
||||
int efx_realloc_channels(struct efx_nic *efx, u32 rxq_entries, u32 txq_entries);
|
||||
|
||||
/* Ports */
|
||||
extern int efx_reconfigure_port(struct efx_nic *efx);
|
||||
extern int __efx_reconfigure_port(struct efx_nic *efx);
|
||||
int efx_reconfigure_port(struct efx_nic *efx);
|
||||
int __efx_reconfigure_port(struct efx_nic *efx);
|
||||
|
||||
/* Ethtool support */
|
||||
extern const struct ethtool_ops efx_ethtool_ops;
|
||||
|
||||
/* Reset handling */
|
||||
extern int efx_reset(struct efx_nic *efx, enum reset_type method);
|
||||
extern void efx_reset_down(struct efx_nic *efx, enum reset_type method);
|
||||
extern int efx_reset_up(struct efx_nic *efx, enum reset_type method, bool ok);
|
||||
extern int efx_try_recovery(struct efx_nic *efx);
|
||||
int efx_reset(struct efx_nic *efx, enum reset_type method);
|
||||
void efx_reset_down(struct efx_nic *efx, enum reset_type method);
|
||||
int efx_reset_up(struct efx_nic *efx, enum reset_type method, bool ok);
|
||||
int efx_try_recovery(struct efx_nic *efx);
|
||||
|
||||
/* Global */
|
||||
extern void efx_schedule_reset(struct efx_nic *efx, enum reset_type type);
|
||||
extern int efx_init_irq_moderation(struct efx_nic *efx, unsigned int tx_usecs,
|
||||
unsigned int rx_usecs, bool rx_adaptive,
|
||||
bool rx_may_override_tx);
|
||||
extern void efx_get_irq_moderation(struct efx_nic *efx, unsigned int *tx_usecs,
|
||||
unsigned int *rx_usecs, bool *rx_adaptive);
|
||||
void efx_schedule_reset(struct efx_nic *efx, enum reset_type type);
|
||||
int efx_init_irq_moderation(struct efx_nic *efx, unsigned int tx_usecs,
|
||||
unsigned int rx_usecs, bool rx_adaptive,
|
||||
bool rx_may_override_tx);
|
||||
void efx_get_irq_moderation(struct efx_nic *efx, unsigned int *tx_usecs,
|
||||
unsigned int *rx_usecs, bool *rx_adaptive);
|
||||
|
||||
/* Dummy PHY ops for PHY drivers */
|
||||
extern int efx_port_dummy_op_int(struct efx_nic *efx);
|
||||
extern void efx_port_dummy_op_void(struct efx_nic *efx);
|
||||
|
||||
int efx_port_dummy_op_int(struct efx_nic *efx);
|
||||
void efx_port_dummy_op_void(struct efx_nic *efx);
|
||||
|
||||
/* MTD */
|
||||
#ifdef CONFIG_SFC_MTD
|
||||
extern int efx_mtd_add(struct efx_nic *efx, struct efx_mtd_partition *parts,
|
||||
size_t n_parts, size_t sizeof_part);
|
||||
int efx_mtd_add(struct efx_nic *efx, struct efx_mtd_partition *parts,
|
||||
size_t n_parts, size_t sizeof_part);
|
||||
static inline int efx_mtd_probe(struct efx_nic *efx)
|
||||
{
|
||||
return efx->type->mtd_probe(efx);
|
||||
}
|
||||
extern void efx_mtd_rename(struct efx_nic *efx);
|
||||
extern void efx_mtd_remove(struct efx_nic *efx);
|
||||
void efx_mtd_rename(struct efx_nic *efx);
|
||||
void efx_mtd_remove(struct efx_nic *efx);
|
||||
#else
|
||||
static inline int efx_mtd_probe(struct efx_nic *efx) { return 0; }
|
||||
static inline void efx_mtd_rename(struct efx_nic *efx) {}
|
||||
@ -242,9 +238,9 @@ static inline void efx_schedule_channel_irq(struct efx_channel *channel)
|
||||
efx_schedule_channel(channel);
|
||||
}
|
||||
|
||||
extern void efx_link_status_changed(struct efx_nic *efx);
|
||||
extern void efx_link_set_advertising(struct efx_nic *efx, u32);
|
||||
extern void efx_link_set_wanted_fc(struct efx_nic *efx, u8);
|
||||
void efx_link_status_changed(struct efx_nic *efx);
|
||||
void efx_link_set_advertising(struct efx_nic *efx, u32);
|
||||
void efx_link_set_wanted_fc(struct efx_nic *efx, u8);
|
||||
|
||||
static inline void efx_device_detach_sync(struct efx_nic *efx)
|
||||
{
|
||||
|
@ -108,38 +108,35 @@ static inline struct efx_mcdi_mon *efx_mcdi_mon(struct efx_nic *efx)
|
||||
}
|
||||
#endif
|
||||
|
||||
extern int efx_mcdi_init(struct efx_nic *efx);
|
||||
extern void efx_mcdi_fini(struct efx_nic *efx);
|
||||
int efx_mcdi_init(struct efx_nic *efx);
|
||||
void efx_mcdi_fini(struct efx_nic *efx);
|
||||
|
||||
extern int efx_mcdi_rpc(struct efx_nic *efx, unsigned cmd,
|
||||
const efx_dword_t *inbuf, size_t inlen,
|
||||
int efx_mcdi_rpc(struct efx_nic *efx, unsigned cmd, const efx_dword_t *inbuf,
|
||||
size_t inlen, efx_dword_t *outbuf, size_t outlen,
|
||||
size_t *outlen_actual);
|
||||
|
||||
int efx_mcdi_rpc_start(struct efx_nic *efx, unsigned cmd,
|
||||
const efx_dword_t *inbuf, size_t inlen);
|
||||
int efx_mcdi_rpc_finish(struct efx_nic *efx, unsigned cmd, size_t inlen,
|
||||
efx_dword_t *outbuf, size_t outlen,
|
||||
size_t *outlen_actual);
|
||||
|
||||
extern int efx_mcdi_rpc_start(struct efx_nic *efx, unsigned cmd,
|
||||
const efx_dword_t *inbuf, size_t inlen);
|
||||
extern int efx_mcdi_rpc_finish(struct efx_nic *efx, unsigned cmd, size_t inlen,
|
||||
efx_dword_t *outbuf, size_t outlen,
|
||||
size_t *outlen_actual);
|
||||
|
||||
typedef void efx_mcdi_async_completer(struct efx_nic *efx,
|
||||
unsigned long cookie, int rc,
|
||||
efx_dword_t *outbuf,
|
||||
size_t outlen_actual);
|
||||
extern int efx_mcdi_rpc_async(struct efx_nic *efx, unsigned int cmd,
|
||||
const efx_dword_t *inbuf, size_t inlen,
|
||||
size_t outlen,
|
||||
efx_mcdi_async_completer *complete,
|
||||
unsigned long cookie);
|
||||
int efx_mcdi_rpc_async(struct efx_nic *efx, unsigned int cmd,
|
||||
const efx_dword_t *inbuf, size_t inlen, size_t outlen,
|
||||
efx_mcdi_async_completer *complete,
|
||||
unsigned long cookie);
|
||||
|
||||
extern int efx_mcdi_poll_reboot(struct efx_nic *efx);
|
||||
extern void efx_mcdi_mode_poll(struct efx_nic *efx);
|
||||
extern void efx_mcdi_mode_event(struct efx_nic *efx);
|
||||
extern void efx_mcdi_flush_async(struct efx_nic *efx);
|
||||
int efx_mcdi_poll_reboot(struct efx_nic *efx);
|
||||
void efx_mcdi_mode_poll(struct efx_nic *efx);
|
||||
void efx_mcdi_mode_event(struct efx_nic *efx);
|
||||
void efx_mcdi_flush_async(struct efx_nic *efx);
|
||||
|
||||
extern void efx_mcdi_process_event(struct efx_channel *channel,
|
||||
efx_qword_t *event);
|
||||
extern void efx_mcdi_sensor_event(struct efx_nic *efx, efx_qword_t *ev);
|
||||
void efx_mcdi_process_event(struct efx_channel *channel, efx_qword_t *event);
|
||||
void efx_mcdi_sensor_event(struct efx_nic *efx, efx_qword_t *ev);
|
||||
|
||||
/* We expect that 16- and 32-bit fields in MCDI requests and responses
|
||||
* are appropriately aligned, but 64-bit fields are only
|
||||
@ -275,55 +272,54 @@ extern void efx_mcdi_sensor_event(struct efx_nic *efx, efx_qword_t *ev);
|
||||
#define MCDI_EVENT_FIELD(_ev, _field) \
|
||||
EFX_QWORD_FIELD(_ev, MCDI_EVENT_ ## _field)
|
||||
|
||||
extern void efx_mcdi_print_fwver(struct efx_nic *efx, char *buf, size_t len);
|
||||
extern int efx_mcdi_get_board_cfg(struct efx_nic *efx, u8 *mac_address,
|
||||
u16 *fw_subtype_list, u32 *capabilities);
|
||||
extern int efx_mcdi_log_ctrl(struct efx_nic *efx, bool evq, bool uart,
|
||||
u32 dest_evq);
|
||||
extern int efx_mcdi_nvram_types(struct efx_nic *efx, u32 *nvram_types_out);
|
||||
extern int efx_mcdi_nvram_info(struct efx_nic *efx, unsigned int type,
|
||||
size_t *size_out, size_t *erase_size_out,
|
||||
bool *protected_out);
|
||||
extern int efx_mcdi_nvram_test_all(struct efx_nic *efx);
|
||||
extern int efx_mcdi_handle_assertion(struct efx_nic *efx);
|
||||
extern void efx_mcdi_set_id_led(struct efx_nic *efx, enum efx_led_mode mode);
|
||||
extern int efx_mcdi_wol_filter_set_magic(struct efx_nic *efx,
|
||||
const u8 *mac, int *id_out);
|
||||
extern int efx_mcdi_wol_filter_get_magic(struct efx_nic *efx, int *id_out);
|
||||
extern int efx_mcdi_wol_filter_remove(struct efx_nic *efx, int id);
|
||||
extern int efx_mcdi_wol_filter_reset(struct efx_nic *efx);
|
||||
extern int efx_mcdi_flush_rxqs(struct efx_nic *efx);
|
||||
extern int efx_mcdi_port_probe(struct efx_nic *efx);
|
||||
extern void efx_mcdi_port_remove(struct efx_nic *efx);
|
||||
extern int efx_mcdi_port_reconfigure(struct efx_nic *efx);
|
||||
extern int efx_mcdi_port_get_number(struct efx_nic *efx);
|
||||
extern u32 efx_mcdi_phy_get_caps(struct efx_nic *efx);
|
||||
extern void efx_mcdi_process_link_change(struct efx_nic *efx, efx_qword_t *ev);
|
||||
extern int efx_mcdi_set_mac(struct efx_nic *efx);
|
||||
void efx_mcdi_print_fwver(struct efx_nic *efx, char *buf, size_t len);
|
||||
int efx_mcdi_get_board_cfg(struct efx_nic *efx, u8 *mac_address,
|
||||
u16 *fw_subtype_list, u32 *capabilities);
|
||||
int efx_mcdi_log_ctrl(struct efx_nic *efx, bool evq, bool uart, u32 dest_evq);
|
||||
int efx_mcdi_nvram_types(struct efx_nic *efx, u32 *nvram_types_out);
|
||||
int efx_mcdi_nvram_info(struct efx_nic *efx, unsigned int type,
|
||||
size_t *size_out, size_t *erase_size_out,
|
||||
bool *protected_out);
|
||||
int efx_mcdi_nvram_test_all(struct efx_nic *efx);
|
||||
int efx_mcdi_handle_assertion(struct efx_nic *efx);
|
||||
void efx_mcdi_set_id_led(struct efx_nic *efx, enum efx_led_mode mode);
|
||||
int efx_mcdi_wol_filter_set_magic(struct efx_nic *efx, const u8 *mac,
|
||||
int *id_out);
|
||||
int efx_mcdi_wol_filter_get_magic(struct efx_nic *efx, int *id_out);
|
||||
int efx_mcdi_wol_filter_remove(struct efx_nic *efx, int id);
|
||||
int efx_mcdi_wol_filter_reset(struct efx_nic *efx);
|
||||
int efx_mcdi_flush_rxqs(struct efx_nic *efx);
|
||||
int efx_mcdi_port_probe(struct efx_nic *efx);
|
||||
void efx_mcdi_port_remove(struct efx_nic *efx);
|
||||
int efx_mcdi_port_reconfigure(struct efx_nic *efx);
|
||||
int efx_mcdi_port_get_number(struct efx_nic *efx);
|
||||
u32 efx_mcdi_phy_get_caps(struct efx_nic *efx);
|
||||
void efx_mcdi_process_link_change(struct efx_nic *efx, efx_qword_t *ev);
|
||||
int efx_mcdi_set_mac(struct efx_nic *efx);
|
||||
#define EFX_MC_STATS_GENERATION_INVALID ((__force __le64)(-1))
|
||||
extern void efx_mcdi_mac_start_stats(struct efx_nic *efx);
|
||||
extern void efx_mcdi_mac_stop_stats(struct efx_nic *efx);
|
||||
extern bool efx_mcdi_mac_check_fault(struct efx_nic *efx);
|
||||
extern enum reset_type efx_mcdi_map_reset_reason(enum reset_type reason);
|
||||
extern int efx_mcdi_reset(struct efx_nic *efx, enum reset_type method);
|
||||
extern int efx_mcdi_set_workaround(struct efx_nic *efx, u32 type, bool enabled);
|
||||
void efx_mcdi_mac_start_stats(struct efx_nic *efx);
|
||||
void efx_mcdi_mac_stop_stats(struct efx_nic *efx);
|
||||
bool efx_mcdi_mac_check_fault(struct efx_nic *efx);
|
||||
enum reset_type efx_mcdi_map_reset_reason(enum reset_type reason);
|
||||
int efx_mcdi_reset(struct efx_nic *efx, enum reset_type method);
|
||||
int efx_mcdi_set_workaround(struct efx_nic *efx, u32 type, bool enabled);
|
||||
|
||||
#ifdef CONFIG_SFC_MCDI_MON
|
||||
extern int efx_mcdi_mon_probe(struct efx_nic *efx);
|
||||
extern void efx_mcdi_mon_remove(struct efx_nic *efx);
|
||||
int efx_mcdi_mon_probe(struct efx_nic *efx);
|
||||
void efx_mcdi_mon_remove(struct efx_nic *efx);
|
||||
#else
|
||||
static inline int efx_mcdi_mon_probe(struct efx_nic *efx) { return 0; }
|
||||
static inline void efx_mcdi_mon_remove(struct efx_nic *efx) {}
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_SFC_MTD
|
||||
extern int efx_mcdi_mtd_read(struct mtd_info *mtd, loff_t start,
|
||||
size_t len, size_t *retlen, u8 *buffer);
|
||||
extern int efx_mcdi_mtd_erase(struct mtd_info *mtd, loff_t start, size_t len);
|
||||
extern int efx_mcdi_mtd_write(struct mtd_info *mtd, loff_t start,
|
||||
size_t len, size_t *retlen, const u8 *buffer);
|
||||
extern int efx_mcdi_mtd_sync(struct mtd_info *mtd);
|
||||
extern void efx_mcdi_mtd_rename(struct efx_mtd_partition *part);
|
||||
int efx_mcdi_mtd_read(struct mtd_info *mtd, loff_t start, size_t len,
|
||||
size_t *retlen, u8 *buffer);
|
||||
int efx_mcdi_mtd_erase(struct mtd_info *mtd, loff_t start, size_t len);
|
||||
int efx_mcdi_mtd_write(struct mtd_info *mtd, loff_t start, size_t len,
|
||||
size_t *retlen, const u8 *buffer);
|
||||
int efx_mcdi_mtd_sync(struct mtd_info *mtd);
|
||||
void efx_mcdi_mtd_rename(struct efx_mtd_partition *part);
|
||||
#endif
|
||||
|
||||
#endif /* EFX_MCDI_H */
|
||||
|
@ -20,7 +20,7 @@
|
||||
|
||||
static inline unsigned efx_mdio_id_rev(u32 id) { return id & 0xf; }
|
||||
static inline unsigned efx_mdio_id_model(u32 id) { return (id >> 4) & 0x3f; }
|
||||
extern unsigned efx_mdio_id_oui(u32 id);
|
||||
unsigned efx_mdio_id_oui(u32 id);
|
||||
|
||||
static inline int efx_mdio_read(struct efx_nic *efx, int devad, int addr)
|
||||
{
|
||||
@ -56,7 +56,7 @@ static inline bool efx_mdio_phyxgxs_lane_sync(struct efx_nic *efx)
|
||||
return sync;
|
||||
}
|
||||
|
||||
extern const char *efx_mdio_mmd_name(int mmd);
|
||||
const char *efx_mdio_mmd_name(int mmd);
|
||||
|
||||
/*
|
||||
* Reset a specific MMD and wait for reset to clear.
|
||||
@ -64,30 +64,29 @@ extern const char *efx_mdio_mmd_name(int mmd);
|
||||
*
|
||||
* This function will sleep
|
||||
*/
|
||||
extern int efx_mdio_reset_mmd(struct efx_nic *efx, int mmd,
|
||||
int spins, int spintime);
|
||||
int efx_mdio_reset_mmd(struct efx_nic *efx, int mmd, int spins, int spintime);
|
||||
|
||||
/* As efx_mdio_check_mmd but for multiple MMDs */
|
||||
int efx_mdio_check_mmds(struct efx_nic *efx, unsigned int mmd_mask);
|
||||
|
||||
/* Check the link status of specified mmds in bit mask */
|
||||
extern bool efx_mdio_links_ok(struct efx_nic *efx, unsigned int mmd_mask);
|
||||
bool efx_mdio_links_ok(struct efx_nic *efx, unsigned int mmd_mask);
|
||||
|
||||
/* Generic transmit disable support though PMAPMD */
|
||||
extern void efx_mdio_transmit_disable(struct efx_nic *efx);
|
||||
void efx_mdio_transmit_disable(struct efx_nic *efx);
|
||||
|
||||
/* Generic part of reconfigure: set/clear loopback bits */
|
||||
extern void efx_mdio_phy_reconfigure(struct efx_nic *efx);
|
||||
void efx_mdio_phy_reconfigure(struct efx_nic *efx);
|
||||
|
||||
/* Set the power state of the specified MMDs */
|
||||
extern void efx_mdio_set_mmds_lpower(struct efx_nic *efx,
|
||||
int low_power, unsigned int mmd_mask);
|
||||
void efx_mdio_set_mmds_lpower(struct efx_nic *efx, int low_power,
|
||||
unsigned int mmd_mask);
|
||||
|
||||
/* Set (some of) the PHY settings over MDIO */
|
||||
extern int efx_mdio_set_settings(struct efx_nic *efx, struct ethtool_cmd *ecmd);
|
||||
int efx_mdio_set_settings(struct efx_nic *efx, struct ethtool_cmd *ecmd);
|
||||
|
||||
/* Push advertising flags and restart autonegotiation */
|
||||
extern void efx_mdio_an_reconfigure(struct efx_nic *efx);
|
||||
void efx_mdio_an_reconfigure(struct efx_nic *efx);
|
||||
|
||||
/* Get pause parameters from AN if available (otherwise return
|
||||
* requested pause parameters)
|
||||
@ -95,8 +94,7 @@ extern void efx_mdio_an_reconfigure(struct efx_nic *efx);
|
||||
u8 efx_mdio_get_pause(struct efx_nic *efx);
|
||||
|
||||
/* Wait for specified MMDs to exit reset within a timeout */
|
||||
extern int efx_mdio_wait_reset_mmds(struct efx_nic *efx,
|
||||
unsigned int mmd_mask);
|
||||
int efx_mdio_wait_reset_mmds(struct efx_nic *efx, unsigned int mmd_mask);
|
||||
|
||||
/* Set or clear flag, debouncing */
|
||||
static inline void
|
||||
@ -107,6 +105,6 @@ efx_mdio_set_flag(struct efx_nic *efx, int devad, int addr,
|
||||
}
|
||||
|
||||
/* Liveness self-test for MDIO PHYs */
|
||||
extern int efx_mdio_test_alive(struct efx_nic *efx);
|
||||
int efx_mdio_test_alive(struct efx_nic *efx);
|
||||
|
||||
#endif /* EFX_MDIO_10G_H */
|
||||
|
@ -30,7 +30,7 @@ static inline int efx_nic_rev(struct efx_nic *efx)
|
||||
return efx->type->revision;
|
||||
}
|
||||
|
||||
extern u32 efx_farch_fpga_ver(struct efx_nic *efx);
|
||||
u32 efx_farch_fpga_ver(struct efx_nic *efx);
|
||||
|
||||
/* NIC has two interlinked PCI functions for the same port. */
|
||||
static inline bool efx_nic_is_dual_func(struct efx_nic *efx)
|
||||
@ -497,18 +497,18 @@ static inline unsigned int efx_vf_size(struct efx_nic *efx)
|
||||
return 1 << efx->vi_scale;
|
||||
}
|
||||
|
||||
extern int efx_init_sriov(void);
|
||||
extern void efx_sriov_probe(struct efx_nic *efx);
|
||||
extern int efx_sriov_init(struct efx_nic *efx);
|
||||
extern void efx_sriov_mac_address_changed(struct efx_nic *efx);
|
||||
extern void efx_sriov_tx_flush_done(struct efx_nic *efx, efx_qword_t *event);
|
||||
extern void efx_sriov_rx_flush_done(struct efx_nic *efx, efx_qword_t *event);
|
||||
extern void efx_sriov_event(struct efx_channel *channel, efx_qword_t *event);
|
||||
extern void efx_sriov_desc_fetch_err(struct efx_nic *efx, unsigned dmaq);
|
||||
extern void efx_sriov_flr(struct efx_nic *efx, unsigned flr);
|
||||
extern void efx_sriov_reset(struct efx_nic *efx);
|
||||
extern void efx_sriov_fini(struct efx_nic *efx);
|
||||
extern void efx_fini_sriov(void);
|
||||
int efx_init_sriov(void);
|
||||
void efx_sriov_probe(struct efx_nic *efx);
|
||||
int efx_sriov_init(struct efx_nic *efx);
|
||||
void efx_sriov_mac_address_changed(struct efx_nic *efx);
|
||||
void efx_sriov_tx_flush_done(struct efx_nic *efx, efx_qword_t *event);
|
||||
void efx_sriov_rx_flush_done(struct efx_nic *efx, efx_qword_t *event);
|
||||
void efx_sriov_event(struct efx_channel *channel, efx_qword_t *event);
|
||||
void efx_sriov_desc_fetch_err(struct efx_nic *efx, unsigned dmaq);
|
||||
void efx_sriov_flr(struct efx_nic *efx, unsigned flr);
|
||||
void efx_sriov_reset(struct efx_nic *efx);
|
||||
void efx_sriov_fini(struct efx_nic *efx);
|
||||
void efx_fini_sriov(void);
|
||||
|
||||
#else
|
||||
|
||||
@ -534,22 +534,20 @@ static inline void efx_fini_sriov(void) {}
|
||||
|
||||
#endif
|
||||
|
||||
extern int efx_sriov_set_vf_mac(struct net_device *dev, int vf, u8 *mac);
|
||||
extern int efx_sriov_set_vf_vlan(struct net_device *dev, int vf,
|
||||
u16 vlan, u8 qos);
|
||||
extern int efx_sriov_get_vf_config(struct net_device *dev, int vf,
|
||||
struct ifla_vf_info *ivf);
|
||||
extern int efx_sriov_set_vf_spoofchk(struct net_device *net_dev, int vf,
|
||||
bool spoofchk);
|
||||
int efx_sriov_set_vf_mac(struct net_device *dev, int vf, u8 *mac);
|
||||
int efx_sriov_set_vf_vlan(struct net_device *dev, int vf, u16 vlan, u8 qos);
|
||||
int efx_sriov_get_vf_config(struct net_device *dev, int vf,
|
||||
struct ifla_vf_info *ivf);
|
||||
int efx_sriov_set_vf_spoofchk(struct net_device *net_dev, int vf,
|
||||
bool spoofchk);
|
||||
|
||||
struct ethtool_ts_info;
|
||||
extern void efx_ptp_probe(struct efx_nic *efx);
|
||||
extern int efx_ptp_ioctl(struct efx_nic *efx, struct ifreq *ifr, int cmd);
|
||||
extern void efx_ptp_get_ts_info(struct efx_nic *efx,
|
||||
struct ethtool_ts_info *ts_info);
|
||||
extern bool efx_ptp_is_ptp_tx(struct efx_nic *efx, struct sk_buff *skb);
|
||||
extern int efx_ptp_tx(struct efx_nic *efx, struct sk_buff *skb);
|
||||
extern void efx_ptp_event(struct efx_nic *efx, efx_qword_t *ev);
|
||||
void efx_ptp_probe(struct efx_nic *efx);
|
||||
int efx_ptp_ioctl(struct efx_nic *efx, struct ifreq *ifr, int cmd);
|
||||
void efx_ptp_get_ts_info(struct efx_nic *efx, struct ethtool_ts_info *ts_info);
|
||||
bool efx_ptp_is_ptp_tx(struct efx_nic *efx, struct sk_buff *skb);
|
||||
int efx_ptp_tx(struct efx_nic *efx, struct sk_buff *skb);
|
||||
void efx_ptp_event(struct efx_nic *efx, efx_qword_t *ev);
|
||||
|
||||
extern const struct efx_nic_type falcon_a1_nic_type;
|
||||
extern const struct efx_nic_type falcon_b0_nic_type;
|
||||
@ -563,7 +561,7 @@ extern const struct efx_nic_type efx_hunt_a0_nic_type;
|
||||
**************************************************************************
|
||||
*/
|
||||
|
||||
extern int falcon_probe_board(struct efx_nic *efx, u16 revision_info);
|
||||
int falcon_probe_board(struct efx_nic *efx, u16 revision_info);
|
||||
|
||||
/* TX data path */
|
||||
static inline int efx_nic_probe_tx(struct efx_tx_queue *tx_queue)
|
||||
@ -631,58 +629,58 @@ static inline void efx_nic_eventq_read_ack(struct efx_channel *channel)
|
||||
{
|
||||
channel->efx->type->ev_read_ack(channel);
|
||||
}
|
||||
extern void efx_nic_event_test_start(struct efx_channel *channel);
|
||||
void efx_nic_event_test_start(struct efx_channel *channel);
|
||||
|
||||
/* Falcon/Siena queue operations */
|
||||
extern int efx_farch_tx_probe(struct efx_tx_queue *tx_queue);
|
||||
extern void efx_farch_tx_init(struct efx_tx_queue *tx_queue);
|
||||
extern void efx_farch_tx_fini(struct efx_tx_queue *tx_queue);
|
||||
extern void efx_farch_tx_remove(struct efx_tx_queue *tx_queue);
|
||||
extern void efx_farch_tx_write(struct efx_tx_queue *tx_queue);
|
||||
extern int efx_farch_rx_probe(struct efx_rx_queue *rx_queue);
|
||||
extern void efx_farch_rx_init(struct efx_rx_queue *rx_queue);
|
||||
extern void efx_farch_rx_fini(struct efx_rx_queue *rx_queue);
|
||||
extern void efx_farch_rx_remove(struct efx_rx_queue *rx_queue);
|
||||
extern void efx_farch_rx_write(struct efx_rx_queue *rx_queue);
|
||||
extern void efx_farch_rx_defer_refill(struct efx_rx_queue *rx_queue);
|
||||
extern int efx_farch_ev_probe(struct efx_channel *channel);
|
||||
extern int efx_farch_ev_init(struct efx_channel *channel);
|
||||
extern void efx_farch_ev_fini(struct efx_channel *channel);
|
||||
extern void efx_farch_ev_remove(struct efx_channel *channel);
|
||||
extern int efx_farch_ev_process(struct efx_channel *channel, int quota);
|
||||
extern void efx_farch_ev_read_ack(struct efx_channel *channel);
|
||||
extern void efx_farch_ev_test_generate(struct efx_channel *channel);
|
||||
int efx_farch_tx_probe(struct efx_tx_queue *tx_queue);
|
||||
void efx_farch_tx_init(struct efx_tx_queue *tx_queue);
|
||||
void efx_farch_tx_fini(struct efx_tx_queue *tx_queue);
|
||||
void efx_farch_tx_remove(struct efx_tx_queue *tx_queue);
|
||||
void efx_farch_tx_write(struct efx_tx_queue *tx_queue);
|
||||
int efx_farch_rx_probe(struct efx_rx_queue *rx_queue);
|
||||
void efx_farch_rx_init(struct efx_rx_queue *rx_queue);
|
||||
void efx_farch_rx_fini(struct efx_rx_queue *rx_queue);
|
||||
void efx_farch_rx_remove(struct efx_rx_queue *rx_queue);
|
||||
void efx_farch_rx_write(struct efx_rx_queue *rx_queue);
|
||||
void efx_farch_rx_defer_refill(struct efx_rx_queue *rx_queue);
|
||||
int efx_farch_ev_probe(struct efx_channel *channel);
|
||||
int efx_farch_ev_init(struct efx_channel *channel);
|
||||
void efx_farch_ev_fini(struct efx_channel *channel);
|
||||
void efx_farch_ev_remove(struct efx_channel *channel);
|
||||
int efx_farch_ev_process(struct efx_channel *channel, int quota);
|
||||
void efx_farch_ev_read_ack(struct efx_channel *channel);
|
||||
void efx_farch_ev_test_generate(struct efx_channel *channel);
|
||||
|
||||
/* Falcon/Siena filter operations */
|
||||
extern int efx_farch_filter_table_probe(struct efx_nic *efx);
|
||||
extern void efx_farch_filter_table_restore(struct efx_nic *efx);
|
||||
extern void efx_farch_filter_table_remove(struct efx_nic *efx);
|
||||
extern void efx_farch_filter_update_rx_scatter(struct efx_nic *efx);
|
||||
extern s32 efx_farch_filter_insert(struct efx_nic *efx,
|
||||
struct efx_filter_spec *spec, bool replace);
|
||||
extern int efx_farch_filter_remove_safe(struct efx_nic *efx,
|
||||
enum efx_filter_priority priority,
|
||||
u32 filter_id);
|
||||
extern int efx_farch_filter_get_safe(struct efx_nic *efx,
|
||||
enum efx_filter_priority priority,
|
||||
u32 filter_id, struct efx_filter_spec *);
|
||||
extern void efx_farch_filter_clear_rx(struct efx_nic *efx,
|
||||
enum efx_filter_priority priority);
|
||||
extern u32 efx_farch_filter_count_rx_used(struct efx_nic *efx,
|
||||
enum efx_filter_priority priority);
|
||||
extern u32 efx_farch_filter_get_rx_id_limit(struct efx_nic *efx);
|
||||
extern s32 efx_farch_filter_get_rx_ids(struct efx_nic *efx,
|
||||
enum efx_filter_priority priority,
|
||||
u32 *buf, u32 size);
|
||||
int efx_farch_filter_table_probe(struct efx_nic *efx);
|
||||
void efx_farch_filter_table_restore(struct efx_nic *efx);
|
||||
void efx_farch_filter_table_remove(struct efx_nic *efx);
|
||||
void efx_farch_filter_update_rx_scatter(struct efx_nic *efx);
|
||||
s32 efx_farch_filter_insert(struct efx_nic *efx, struct efx_filter_spec *spec,
|
||||
bool replace);
|
||||
int efx_farch_filter_remove_safe(struct efx_nic *efx,
|
||||
enum efx_filter_priority priority,
|
||||
u32 filter_id);
|
||||
int efx_farch_filter_get_safe(struct efx_nic *efx,
|
||||
enum efx_filter_priority priority, u32 filter_id,
|
||||
struct efx_filter_spec *);
|
||||
void efx_farch_filter_clear_rx(struct efx_nic *efx,
|
||||
enum efx_filter_priority priority);
|
||||
u32 efx_farch_filter_count_rx_used(struct efx_nic *efx,
|
||||
enum efx_filter_priority priority);
|
||||
u32 efx_farch_filter_get_rx_id_limit(struct efx_nic *efx);
|
||||
s32 efx_farch_filter_get_rx_ids(struct efx_nic *efx,
|
||||
enum efx_filter_priority priority, u32 *buf,
|
||||
u32 size);
|
||||
#ifdef CONFIG_RFS_ACCEL
|
||||
extern s32 efx_farch_filter_rfs_insert(struct efx_nic *efx,
|
||||
struct efx_filter_spec *spec);
|
||||
extern bool efx_farch_filter_rfs_expire_one(struct efx_nic *efx, u32 flow_id,
|
||||
unsigned int index);
|
||||
s32 efx_farch_filter_rfs_insert(struct efx_nic *efx,
|
||||
struct efx_filter_spec *spec);
|
||||
bool efx_farch_filter_rfs_expire_one(struct efx_nic *efx, u32 flow_id,
|
||||
unsigned int index);
|
||||
#endif
|
||||
extern void efx_farch_filter_sync_rx_mode(struct efx_nic *efx);
|
||||
void efx_farch_filter_sync_rx_mode(struct efx_nic *efx);
|
||||
|
||||
extern bool efx_nic_event_present(struct efx_channel *channel);
|
||||
bool efx_nic_event_present(struct efx_channel *channel);
|
||||
|
||||
/* Some statistics are computed as A - B where A and B each increase
|
||||
* linearly with some hardware counter(s) and the counters are read
|
||||
@ -703,17 +701,17 @@ static inline void efx_update_diff_stat(u64 *stat, u64 diff)
|
||||
}
|
||||
|
||||
/* Interrupts */
|
||||
extern int efx_nic_init_interrupt(struct efx_nic *efx);
|
||||
extern void efx_nic_irq_test_start(struct efx_nic *efx);
|
||||
extern void efx_nic_fini_interrupt(struct efx_nic *efx);
|
||||
int efx_nic_init_interrupt(struct efx_nic *efx);
|
||||
void efx_nic_irq_test_start(struct efx_nic *efx);
|
||||
void efx_nic_fini_interrupt(struct efx_nic *efx);
|
||||
|
||||
/* Falcon/Siena interrupts */
|
||||
extern void efx_farch_irq_enable_master(struct efx_nic *efx);
|
||||
extern void efx_farch_irq_test_generate(struct efx_nic *efx);
|
||||
extern void efx_farch_irq_disable_master(struct efx_nic *efx);
|
||||
extern irqreturn_t efx_farch_msi_interrupt(int irq, void *dev_id);
|
||||
extern irqreturn_t efx_farch_legacy_interrupt(int irq, void *dev_id);
|
||||
extern irqreturn_t efx_farch_fatal_interrupt(struct efx_nic *efx);
|
||||
void efx_farch_irq_enable_master(struct efx_nic *efx);
|
||||
void efx_farch_irq_test_generate(struct efx_nic *efx);
|
||||
void efx_farch_irq_disable_master(struct efx_nic *efx);
|
||||
irqreturn_t efx_farch_msi_interrupt(int irq, void *dev_id);
|
||||
irqreturn_t efx_farch_legacy_interrupt(int irq, void *dev_id);
|
||||
irqreturn_t efx_farch_fatal_interrupt(struct efx_nic *efx);
|
||||
|
||||
static inline int efx_nic_event_test_irq_cpu(struct efx_channel *channel)
|
||||
{
|
||||
@ -725,21 +723,21 @@ static inline int efx_nic_irq_test_irq_cpu(struct efx_nic *efx)
|
||||
}
|
||||
|
||||
/* Global Resources */
|
||||
extern int efx_nic_flush_queues(struct efx_nic *efx);
|
||||
extern void siena_prepare_flush(struct efx_nic *efx);
|
||||
extern int efx_farch_fini_dmaq(struct efx_nic *efx);
|
||||
extern void siena_finish_flush(struct efx_nic *efx);
|
||||
extern void falcon_start_nic_stats(struct efx_nic *efx);
|
||||
extern void falcon_stop_nic_stats(struct efx_nic *efx);
|
||||
extern int falcon_reset_xaui(struct efx_nic *efx);
|
||||
extern void efx_farch_dimension_resources(struct efx_nic *efx, unsigned sram_lim_qw);
|
||||
extern void efx_farch_init_common(struct efx_nic *efx);
|
||||
extern void efx_ef10_handle_drain_event(struct efx_nic *efx);
|
||||
int efx_nic_flush_queues(struct efx_nic *efx);
|
||||
void siena_prepare_flush(struct efx_nic *efx);
|
||||
int efx_farch_fini_dmaq(struct efx_nic *efx);
|
||||
void siena_finish_flush(struct efx_nic *efx);
|
||||
void falcon_start_nic_stats(struct efx_nic *efx);
|
||||
void falcon_stop_nic_stats(struct efx_nic *efx);
|
||||
int falcon_reset_xaui(struct efx_nic *efx);
|
||||
void efx_farch_dimension_resources(struct efx_nic *efx, unsigned sram_lim_qw);
|
||||
void efx_farch_init_common(struct efx_nic *efx);
|
||||
void efx_ef10_handle_drain_event(struct efx_nic *efx);
|
||||
static inline void efx_nic_push_rx_indir_table(struct efx_nic *efx)
|
||||
{
|
||||
efx->type->rx_push_indir_table(efx);
|
||||
}
|
||||
extern void efx_farch_rx_push_indir_table(struct efx_nic *efx);
|
||||
void efx_farch_rx_push_indir_table(struct efx_nic *efx);
|
||||
|
||||
int efx_nic_alloc_buffer(struct efx_nic *efx, struct efx_buffer *buffer,
|
||||
unsigned int len, gfp_t gfp_flags);
|
||||
@ -750,24 +748,22 @@ struct efx_farch_register_test {
|
||||
unsigned address;
|
||||
efx_oword_t mask;
|
||||
};
|
||||
extern int efx_farch_test_registers(struct efx_nic *efx,
|
||||
const struct efx_farch_register_test *regs,
|
||||
size_t n_regs);
|
||||
int efx_farch_test_registers(struct efx_nic *efx,
|
||||
const struct efx_farch_register_test *regs,
|
||||
size_t n_regs);
|
||||
|
||||
extern size_t efx_nic_get_regs_len(struct efx_nic *efx);
|
||||
extern void efx_nic_get_regs(struct efx_nic *efx, void *buf);
|
||||
size_t efx_nic_get_regs_len(struct efx_nic *efx);
|
||||
void efx_nic_get_regs(struct efx_nic *efx, void *buf);
|
||||
|
||||
extern size_t
|
||||
efx_nic_describe_stats(const struct efx_hw_stat_desc *desc, size_t count,
|
||||
const unsigned long *mask, u8 *names);
|
||||
extern void
|
||||
efx_nic_update_stats(const struct efx_hw_stat_desc *desc, size_t count,
|
||||
const unsigned long *mask,
|
||||
u64 *stats, const void *dma_buf, bool accumulate);
|
||||
size_t efx_nic_describe_stats(const struct efx_hw_stat_desc *desc, size_t count,
|
||||
const unsigned long *mask, u8 *names);
|
||||
void efx_nic_update_stats(const struct efx_hw_stat_desc *desc, size_t count,
|
||||
const unsigned long *mask, u64 *stats,
|
||||
const void *dma_buf, bool accumulate);
|
||||
|
||||
#define EFX_MAX_FLUSH_TIME 5000
|
||||
|
||||
extern void efx_farch_generate_event(struct efx_nic *efx, unsigned int evq,
|
||||
efx_qword_t *event);
|
||||
void efx_farch_generate_event(struct efx_nic *efx, unsigned int evq,
|
||||
efx_qword_t *event);
|
||||
|
||||
#endif /* EFX_NIC_H */
|
||||
|
@ -15,7 +15,7 @@
|
||||
*/
|
||||
extern const struct efx_phy_operations falcon_sfx7101_phy_ops;
|
||||
|
||||
extern void tenxpress_set_id_led(struct efx_nic *efx, enum efx_led_mode mode);
|
||||
void tenxpress_set_id_led(struct efx_nic *efx, enum efx_led_mode mode);
|
||||
|
||||
/****************************************************************************
|
||||
* AMCC/Quake QT202x PHYs
|
||||
@ -34,7 +34,7 @@ extern const struct efx_phy_operations falcon_qt202x_phy_ops;
|
||||
#define QUAKE_LED_TXLINK (0)
|
||||
#define QUAKE_LED_RXLINK (8)
|
||||
|
||||
extern void falcon_qt202x_set_led(struct efx_nic *p, int led, int state);
|
||||
void falcon_qt202x_set_led(struct efx_nic *p, int led, int state);
|
||||
|
||||
/****************************************************************************
|
||||
* Transwitch CX4 retimer
|
||||
@ -44,7 +44,7 @@ extern const struct efx_phy_operations falcon_txc_phy_ops;
|
||||
#define TXC_GPIO_DIR_INPUT 0
|
||||
#define TXC_GPIO_DIR_OUTPUT 1
|
||||
|
||||
extern void falcon_txc_set_gpio_dir(struct efx_nic *efx, int pin, int dir);
|
||||
extern void falcon_txc_set_gpio_val(struct efx_nic *efx, int pin, int val);
|
||||
void falcon_txc_set_gpio_dir(struct efx_nic *efx, int pin, int dir);
|
||||
void falcon_txc_set_gpio_val(struct efx_nic *efx, int pin, int val);
|
||||
|
||||
#endif
|
||||
|
@ -43,13 +43,12 @@ struct efx_self_tests {
|
||||
struct efx_loopback_self_tests loopback[LOOPBACK_TEST_MAX + 1];
|
||||
};
|
||||
|
||||
extern void efx_loopback_rx_packet(struct efx_nic *efx,
|
||||
const char *buf_ptr, int pkt_len);
|
||||
extern int efx_selftest(struct efx_nic *efx,
|
||||
struct efx_self_tests *tests,
|
||||
unsigned flags);
|
||||
extern void efx_selftest_async_start(struct efx_nic *efx);
|
||||
extern void efx_selftest_async_cancel(struct efx_nic *efx);
|
||||
extern void efx_selftest_async_work(struct work_struct *data);
|
||||
void efx_loopback_rx_packet(struct efx_nic *efx, const char *buf_ptr,
|
||||
int pkt_len);
|
||||
int efx_selftest(struct efx_nic *efx, struct efx_self_tests *tests,
|
||||
unsigned flags);
|
||||
void efx_selftest_async_start(struct efx_nic *efx);
|
||||
void efx_selftest_async_cancel(struct efx_nic *efx);
|
||||
void efx_selftest_async_work(struct work_struct *data);
|
||||
|
||||
#endif /* EFX_SELFTEST_H */
|
||||
|
@ -451,14 +451,14 @@ struct mac_device_info {
|
||||
struct mac_device_info *dwmac1000_setup(void __iomem *ioaddr);
|
||||
struct mac_device_info *dwmac100_setup(void __iomem *ioaddr);
|
||||
|
||||
extern void stmmac_set_mac_addr(void __iomem *ioaddr, u8 addr[6],
|
||||
unsigned int high, unsigned int low);
|
||||
extern void stmmac_get_mac_addr(void __iomem *ioaddr, unsigned char *addr,
|
||||
unsigned int high, unsigned int low);
|
||||
void stmmac_set_mac_addr(void __iomem *ioaddr, u8 addr[6],
|
||||
unsigned int high, unsigned int low);
|
||||
void stmmac_get_mac_addr(void __iomem *ioaddr, unsigned char *addr,
|
||||
unsigned int high, unsigned int low);
|
||||
|
||||
extern void stmmac_set_mac(void __iomem *ioaddr, bool enable);
|
||||
void stmmac_set_mac(void __iomem *ioaddr, bool enable);
|
||||
|
||||
extern void dwmac_dma_flush_tx_fifo(void __iomem *ioaddr);
|
||||
void dwmac_dma_flush_tx_fifo(void __iomem *ioaddr);
|
||||
extern const struct stmmac_ring_mode_ops ring_mode_ops;
|
||||
extern const struct stmmac_chain_mode_ops chain_mode_ops;
|
||||
|
||||
|
@ -104,14 +104,13 @@
|
||||
#define DMA_STATUS_TI 0x00000001 /* Transmit Interrupt */
|
||||
#define DMA_CONTROL_FTF 0x00100000 /* Flush transmit FIFO */
|
||||
|
||||
extern void dwmac_enable_dma_transmission(void __iomem *ioaddr);
|
||||
extern void dwmac_enable_dma_irq(void __iomem *ioaddr);
|
||||
extern void dwmac_disable_dma_irq(void __iomem *ioaddr);
|
||||
extern void dwmac_dma_start_tx(void __iomem *ioaddr);
|
||||
extern void dwmac_dma_stop_tx(void __iomem *ioaddr);
|
||||
extern void dwmac_dma_start_rx(void __iomem *ioaddr);
|
||||
extern void dwmac_dma_stop_rx(void __iomem *ioaddr);
|
||||
extern int dwmac_dma_interrupt(void __iomem *ioaddr,
|
||||
struct stmmac_extra_stats *x);
|
||||
void dwmac_enable_dma_transmission(void __iomem *ioaddr);
|
||||
void dwmac_enable_dma_irq(void __iomem *ioaddr);
|
||||
void dwmac_disable_dma_irq(void __iomem *ioaddr);
|
||||
void dwmac_dma_start_tx(void __iomem *ioaddr);
|
||||
void dwmac_dma_stop_tx(void __iomem *ioaddr);
|
||||
void dwmac_dma_start_rx(void __iomem *ioaddr);
|
||||
void dwmac_dma_stop_rx(void __iomem *ioaddr);
|
||||
int dwmac_dma_interrupt(void __iomem *ioaddr, struct stmmac_extra_stats *x);
|
||||
|
||||
#endif /* __DWMAC_DMA_H__ */
|
||||
|
@ -128,8 +128,8 @@ struct stmmac_counters {
|
||||
unsigned int mmc_rx_icmp_err_octets;
|
||||
};
|
||||
|
||||
extern void dwmac_mmc_ctrl(void __iomem *ioaddr, unsigned int mode);
|
||||
extern void dwmac_mmc_intr_all_mask(void __iomem *ioaddr);
|
||||
extern void dwmac_mmc_read(void __iomem *ioaddr, struct stmmac_counters *mmc);
|
||||
void dwmac_mmc_ctrl(void __iomem *ioaddr, unsigned int mode);
|
||||
void dwmac_mmc_intr_all_mask(void __iomem *ioaddr);
|
||||
void dwmac_mmc_read(void __iomem *ioaddr, struct stmmac_counters *mmc);
|
||||
|
||||
#endif /* __MMC_H__ */
|
||||
|
@ -110,14 +110,14 @@ struct stmmac_priv {
|
||||
|
||||
extern int phyaddr;
|
||||
|
||||
extern int stmmac_mdio_unregister(struct net_device *ndev);
|
||||
extern int stmmac_mdio_register(struct net_device *ndev);
|
||||
extern void stmmac_set_ethtool_ops(struct net_device *netdev);
|
||||
int stmmac_mdio_unregister(struct net_device *ndev);
|
||||
int stmmac_mdio_register(struct net_device *ndev);
|
||||
void stmmac_set_ethtool_ops(struct net_device *netdev);
|
||||
extern const struct stmmac_desc_ops enh_desc_ops;
|
||||
extern const struct stmmac_desc_ops ndesc_ops;
|
||||
extern const struct stmmac_hwtimestamp stmmac_ptp;
|
||||
extern int stmmac_ptp_register(struct stmmac_priv *priv);
|
||||
extern void stmmac_ptp_unregister(struct stmmac_priv *priv);
|
||||
int stmmac_ptp_register(struct stmmac_priv *priv);
|
||||
void stmmac_ptp_unregister(struct stmmac_priv *priv);
|
||||
int stmmac_freeze(struct net_device *ndev);
|
||||
int stmmac_restore(struct net_device *ndev);
|
||||
int stmmac_resume(struct net_device *ndev);
|
||||
|
@ -127,8 +127,8 @@ struct cpts {
|
||||
};
|
||||
|
||||
#ifdef CONFIG_TI_CPTS
|
||||
extern void cpts_rx_timestamp(struct cpts *cpts, struct sk_buff *skb);
|
||||
extern void cpts_tx_timestamp(struct cpts *cpts, struct sk_buff *skb);
|
||||
void cpts_rx_timestamp(struct cpts *cpts, struct sk_buff *skb);
|
||||
void cpts_tx_timestamp(struct cpts *cpts, struct sk_buff *skb);
|
||||
#else
|
||||
static inline void cpts_rx_timestamp(struct cpts *cpts, struct sk_buff *skb)
|
||||
{
|
||||
@ -138,8 +138,7 @@ static inline void cpts_tx_timestamp(struct cpts *cpts, struct sk_buff *skb)
|
||||
}
|
||||
#endif
|
||||
|
||||
extern int cpts_register(struct device *dev, struct cpts *cpts,
|
||||
u32 mult, u32 shift);
|
||||
extern void cpts_unregister(struct cpts *cpts);
|
||||
int cpts_register(struct device *dev, struct cpts *cpts, u32 mult, u32 shift);
|
||||
void cpts_unregister(struct cpts *cpts);
|
||||
|
||||
#endif
|
||||
|
@ -359,27 +359,26 @@ static inline void *port_priv(struct gelic_port *port)
|
||||
}
|
||||
|
||||
#ifdef CONFIG_PPC_EARLY_DEBUG_PS3GELIC
|
||||
extern void udbg_shutdown_ps3gelic(void);
|
||||
void udbg_shutdown_ps3gelic(void);
|
||||
#else
|
||||
static inline void udbg_shutdown_ps3gelic(void) {}
|
||||
#endif
|
||||
|
||||
extern int gelic_card_set_irq_mask(struct gelic_card *card, u64 mask);
|
||||
int gelic_card_set_irq_mask(struct gelic_card *card, u64 mask);
|
||||
/* shared netdev ops */
|
||||
extern void gelic_card_up(struct gelic_card *card);
|
||||
extern void gelic_card_down(struct gelic_card *card);
|
||||
extern int gelic_net_open(struct net_device *netdev);
|
||||
extern int gelic_net_stop(struct net_device *netdev);
|
||||
extern int gelic_net_xmit(struct sk_buff *skb, struct net_device *netdev);
|
||||
extern void gelic_net_set_multi(struct net_device *netdev);
|
||||
extern void gelic_net_tx_timeout(struct net_device *netdev);
|
||||
extern int gelic_net_change_mtu(struct net_device *netdev, int new_mtu);
|
||||
extern int gelic_net_setup_netdev(struct net_device *netdev,
|
||||
struct gelic_card *card);
|
||||
void gelic_card_up(struct gelic_card *card);
|
||||
void gelic_card_down(struct gelic_card *card);
|
||||
int gelic_net_open(struct net_device *netdev);
|
||||
int gelic_net_stop(struct net_device *netdev);
|
||||
int gelic_net_xmit(struct sk_buff *skb, struct net_device *netdev);
|
||||
void gelic_net_set_multi(struct net_device *netdev);
|
||||
void gelic_net_tx_timeout(struct net_device *netdev);
|
||||
int gelic_net_change_mtu(struct net_device *netdev, int new_mtu);
|
||||
int gelic_net_setup_netdev(struct net_device *netdev, struct gelic_card *card);
|
||||
|
||||
/* shared ethtool ops */
|
||||
extern void gelic_net_get_drvinfo(struct net_device *netdev,
|
||||
struct ethtool_drvinfo *info);
|
||||
extern void gelic_net_poll_controller(struct net_device *netdev);
|
||||
void gelic_net_get_drvinfo(struct net_device *netdev,
|
||||
struct ethtool_drvinfo *info);
|
||||
void gelic_net_poll_controller(struct net_device *netdev);
|
||||
|
||||
#endif /* _GELIC_NET_H */
|
||||
|
@ -320,7 +320,7 @@ struct gelic_eurus_cmd {
|
||||
#define GELIC_WL_PRIV_SET_PSK (SIOCIWFIRSTPRIV + 0)
|
||||
#define GELIC_WL_PRIV_GET_PSK (SIOCIWFIRSTPRIV + 1)
|
||||
|
||||
extern int gelic_wl_driver_probe(struct gelic_card *card);
|
||||
extern int gelic_wl_driver_remove(struct gelic_card *card);
|
||||
extern void gelic_wl_interrupt(struct net_device *netdev, u64 status);
|
||||
int gelic_wl_driver_probe(struct gelic_card *card);
|
||||
int gelic_wl_driver_remove(struct gelic_card *card);
|
||||
void gelic_wl_interrupt(struct net_device *netdev, u64 status);
|
||||
#endif /* _GELIC_WIRELESS_H */
|
||||
|
@ -29,8 +29,8 @@
|
||||
|
||||
#include <linux/sungem_phy.h>
|
||||
|
||||
extern int spider_net_stop(struct net_device *netdev);
|
||||
extern int spider_net_open(struct net_device *netdev);
|
||||
int spider_net_stop(struct net_device *netdev);
|
||||
int spider_net_open(struct net_device *netdev);
|
||||
|
||||
extern const struct ethtool_ops spider_net_ethtool_ops;
|
||||
|
||||
|
@ -469,20 +469,20 @@ struct s_smc {
|
||||
|
||||
extern const struct fddi_addr fddi_broadcast;
|
||||
|
||||
extern void all_selection_criteria(struct s_smc *smc);
|
||||
extern void card_stop(struct s_smc *smc);
|
||||
extern void init_board(struct s_smc *smc, u_char *mac_addr);
|
||||
extern int init_fplus(struct s_smc *smc);
|
||||
extern void init_plc(struct s_smc *smc);
|
||||
extern int init_smt(struct s_smc *smc, u_char * mac_addr);
|
||||
extern void mac1_irq(struct s_smc *smc, u_short stu, u_short stl);
|
||||
extern void mac2_irq(struct s_smc *smc, u_short code_s2u, u_short code_s2l);
|
||||
extern void mac3_irq(struct s_smc *smc, u_short code_s3u, u_short code_s3l);
|
||||
extern int pcm_status_twisted(struct s_smc *smc);
|
||||
extern void plc1_irq(struct s_smc *smc);
|
||||
extern void plc2_irq(struct s_smc *smc);
|
||||
extern void read_address(struct s_smc *smc, u_char * mac_addr);
|
||||
extern void timer_irq(struct s_smc *smc);
|
||||
void all_selection_criteria(struct s_smc *smc);
|
||||
void card_stop(struct s_smc *smc);
|
||||
void init_board(struct s_smc *smc, u_char *mac_addr);
|
||||
int init_fplus(struct s_smc *smc);
|
||||
void init_plc(struct s_smc *smc);
|
||||
int init_smt(struct s_smc *smc, u_char *mac_addr);
|
||||
void mac1_irq(struct s_smc *smc, u_short stu, u_short stl);
|
||||
void mac2_irq(struct s_smc *smc, u_short code_s2u, u_short code_s2l);
|
||||
void mac3_irq(struct s_smc *smc, u_short code_s3u, u_short code_s3l);
|
||||
int pcm_status_twisted(struct s_smc *smc);
|
||||
void plc1_irq(struct s_smc *smc);
|
||||
void plc2_irq(struct s_smc *smc);
|
||||
void read_address(struct s_smc *smc, u_char *mac_addr);
|
||||
void timer_irq(struct s_smc *smc);
|
||||
|
||||
#endif /* _SCMECM_ */
|
||||
|
||||
|
@ -102,28 +102,29 @@ struct sir_driver {
|
||||
|
||||
/* exported */
|
||||
|
||||
extern int irda_register_dongle(struct dongle_driver *new);
|
||||
extern int irda_unregister_dongle(struct dongle_driver *drv);
|
||||
int irda_register_dongle(struct dongle_driver *new);
|
||||
int irda_unregister_dongle(struct dongle_driver *drv);
|
||||
|
||||
extern struct sir_dev * sirdev_get_instance(const struct sir_driver *drv, const char *name);
|
||||
extern int sirdev_put_instance(struct sir_dev *self);
|
||||
struct sir_dev *sirdev_get_instance(const struct sir_driver *drv,
|
||||
const char *name);
|
||||
int sirdev_put_instance(struct sir_dev *self);
|
||||
|
||||
extern int sirdev_set_dongle(struct sir_dev *dev, IRDA_DONGLE type);
|
||||
extern void sirdev_write_complete(struct sir_dev *dev);
|
||||
extern int sirdev_receive(struct sir_dev *dev, const unsigned char *cp, size_t count);
|
||||
int sirdev_set_dongle(struct sir_dev *dev, IRDA_DONGLE type);
|
||||
void sirdev_write_complete(struct sir_dev *dev);
|
||||
int sirdev_receive(struct sir_dev *dev, const unsigned char *cp, size_t count);
|
||||
|
||||
/* low level helpers for SIR device/dongle setup */
|
||||
extern int sirdev_raw_write(struct sir_dev *dev, const char *buf, int len);
|
||||
extern int sirdev_raw_read(struct sir_dev *dev, char *buf, int len);
|
||||
extern int sirdev_set_dtr_rts(struct sir_dev *dev, int dtr, int rts);
|
||||
int sirdev_raw_write(struct sir_dev *dev, const char *buf, int len);
|
||||
int sirdev_raw_read(struct sir_dev *dev, char *buf, int len);
|
||||
int sirdev_set_dtr_rts(struct sir_dev *dev, int dtr, int rts);
|
||||
|
||||
/* not exported */
|
||||
|
||||
extern int sirdev_get_dongle(struct sir_dev *self, IRDA_DONGLE type);
|
||||
extern int sirdev_put_dongle(struct sir_dev *self);
|
||||
int sirdev_get_dongle(struct sir_dev *self, IRDA_DONGLE type);
|
||||
int sirdev_put_dongle(struct sir_dev *self);
|
||||
|
||||
extern void sirdev_enable_rx(struct sir_dev *dev);
|
||||
extern int sirdev_schedule_request(struct sir_dev *dev, int state, unsigned param);
|
||||
void sirdev_enable_rx(struct sir_dev *dev);
|
||||
int sirdev_schedule_request(struct sir_dev *dev, int state, unsigned param);
|
||||
|
||||
/* inline helpers */
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user