diff options
author | Anirban Chakraborty <anirban.chakraborty@qlogic.com> | 2011-09-13 08:06:18 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-09-23 14:23:59 -0400 |
commit | 7777de9af54a1402c79bf7663b38ff5ba308dd45 (patch) | |
tree | 5374023bb976a2d8bd6d0d98ae5e940c7fec095a /drivers/net/ethernet/qlogic/qlcnic/qlcnic.h | |
parent | 853d4bcaeb31905b85ba9f65f46cfaf9c41d1915 (diff) | |
download | lwn-7777de9af54a1402c79bf7663b38ff5ba308dd45.tar.gz lwn-7777de9af54a1402c79bf7663b38ff5ba308dd45.zip |
qlcnic: Change CDRP function
Argument list to CDRP function has become unmanageably long. Fix it by properly
declaring a struct that encompasses all the input and output parameters.
Signed-off-by: Anirban Chakraborty <anirban.chakraborty@qlogic.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/qlogic/qlcnic/qlcnic.h')
-rw-r--r-- | drivers/net/ethernet/qlogic/qlcnic/qlcnic.h | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/drivers/net/ethernet/qlogic/qlcnic/qlcnic.h b/drivers/net/ethernet/qlogic/qlcnic/qlcnic.h index 04c70153833f..2fd1ba8fee4a 100644 --- a/drivers/net/ethernet/qlogic/qlcnic/qlcnic.h +++ b/drivers/net/ethernet/qlogic/qlcnic/qlcnic.h @@ -36,8 +36,8 @@ #define _QLCNIC_LINUX_MAJOR 5 #define _QLCNIC_LINUX_MINOR 0 -#define _QLCNIC_LINUX_SUBVERSION 23 -#define QLCNIC_LINUX_VERSIONID "5.0.23" +#define _QLCNIC_LINUX_SUBVERSION 24 +#define QLCNIC_LINUX_VERSIONID "5.0.24" #define QLCNIC_DRV_IDC_VER 0x01 #define QLCNIC_DRIVER_VERSION ((_QLCNIC_LINUX_MAJOR << 16) |\ (_QLCNIC_LINUX_MINOR << 8) | (_QLCNIC_LINUX_SUBVERSION)) @@ -583,6 +583,7 @@ struct qlcnic_recv_context { #define QLCNIC_CDRP_CMD_DESTROY_RX_CTX 0x00000008 #define QLCNIC_CDRP_CMD_CREATE_TX_CTX 0x00000009 #define QLCNIC_CDRP_CMD_DESTROY_TX_CTX 0x0000000a +#define QLCNIC_CDRP_CMD_INTRPT_TEST 0x00000011 #define QLCNIC_CDRP_CMD_SET_MTU 0x00000012 #define QLCNIC_CDRP_CMD_READ_PHY 0x00000013 #define QLCNIC_CDRP_CMD_WRITE_PHY 0x00000014 @@ -1358,6 +1359,18 @@ struct qlcnic_dump_operations { struct qlcnic_dump_entry *, u32 *); }; +struct _cdrp_cmd { + u32 cmd; + u32 arg1; + u32 arg2; + u32 arg3; +}; + +struct qlcnic_cmd_args { + struct _cdrp_cmd req; + struct _cdrp_cmd rsp; +}; + int qlcnic_fw_cmd_get_minidump_temp(struct qlcnic_adapter *adapter); int qlcnic_fw_cmd_set_port(struct qlcnic_adapter *adapter, u32 config); @@ -1470,9 +1483,7 @@ int qlcnic_check_loopback_buff(unsigned char *data, u8 mac[]); /* Functions from qlcnic_main.c */ int qlcnic_reset_context(struct qlcnic_adapter *); -u32 qlcnic_issue_cmd(struct qlcnic_adapter *adapter, - u32 pci_fn, u32 version, u32 arg1, u32 arg2, u32 arg3, u32 cmd, - u32 *rd_args[3]); +void qlcnic_issue_cmd(struct qlcnic_adapter *adapter, struct qlcnic_cmd_args *); void qlcnic_diag_free_res(struct net_device *netdev, int max_sds_rings); int qlcnic_diag_alloc_res(struct net_device *netdev, int test); netdev_tx_t qlcnic_xmit_frame(struct sk_buff *skb, struct net_device *netdev); |