mirror of
https://github.com/torvalds/linux.git
synced 2024-11-27 14:41:39 +00:00
Driver for IBM System i/p VNIC protocol
This is a new device driver for a high performance SR-IOV assisted virtual network for IBM System p and IBM System i systems. The SR-IOV VF will be attached to the VIOS partition and mapped to the Linux client via the hypervisor's VNIC protocol that this driver implements. This driver is able to perform basic tx and rx, new features and improvements will be added as they are being developed and tested. Signed-off-by: Thomas Falcon <tlfalcon@linux.vnet.ibm.com> Signed-off-by: John Allen <jallen@linux.vnet.ibm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
7b752fd3d0
commit
032c5e8284
@ -5292,6 +5292,13 @@ L: netdev@vger.kernel.org
|
||||
S: Supported
|
||||
F: drivers/net/ethernet/ibm/ibmveth.*
|
||||
|
||||
IBM Power SRIOV Virtual NIC Device Driver
|
||||
M: Thomas Falcon <tlfalcon@linux.vnet.ibm.com>
|
||||
M: John Allen <jallen@linux.vnet.ibm.com>
|
||||
L: netdev@vger.kernel.org
|
||||
S: Supported
|
||||
F: drivers/net/ethernet/ibm/ibmvnic.*
|
||||
|
||||
IBM Power Virtual SCSI Device Drivers
|
||||
M: Tyrel Datwyler <tyreld@linux.vnet.ibm.com>
|
||||
L: linux-scsi@vger.kernel.org
|
||||
|
@ -258,11 +258,16 @@
|
||||
#define H_DEL_CONN 0x288
|
||||
#define H_JOIN 0x298
|
||||
#define H_VASI_STATE 0x2A4
|
||||
#define H_VIOCTL 0x2A8
|
||||
#define H_ENABLE_CRQ 0x2B0
|
||||
#define H_GET_EM_PARMS 0x2B8
|
||||
#define H_SET_MPP 0x2D0
|
||||
#define H_GET_MPP 0x2D4
|
||||
#define H_REG_SUB_CRQ 0x2DC
|
||||
#define H_HOME_NODE_ASSOCIATIVITY 0x2EC
|
||||
#define H_FREE_SUB_CRQ 0x2E0
|
||||
#define H_SEND_SUB_CRQ 0x2E4
|
||||
#define H_SEND_SUB_CRQ_INDIRECT 0x2E8
|
||||
#define H_BEST_ENERGY 0x2F4
|
||||
#define H_XIRR_X 0x2FC
|
||||
#define H_RANDOM 0x300
|
||||
@ -271,6 +276,21 @@
|
||||
#define H_SET_MODE 0x31C
|
||||
#define MAX_HCALL_OPCODE H_SET_MODE
|
||||
|
||||
/* H_VIOCTL functions */
|
||||
#define H_GET_VIOA_DUMP_SIZE 0x01
|
||||
#define H_GET_VIOA_DUMP 0x02
|
||||
#define H_GET_ILLAN_NUM_VLAN_IDS 0x03
|
||||
#define H_GET_ILLAN_VLAN_ID_LIST 0x04
|
||||
#define H_GET_ILLAN_SWITCH_ID 0x05
|
||||
#define H_DISABLE_MIGRATION 0x06
|
||||
#define H_ENABLE_MIGRATION 0x07
|
||||
#define H_GET_PARTNER_INFO 0x08
|
||||
#define H_GET_PARTNER_WWPN_LIST 0x09
|
||||
#define H_DISABLE_ALL_VIO_INTS 0x0A
|
||||
#define H_DISABLE_VIO_INTERRUPT 0x0B
|
||||
#define H_ENABLE_VIO_INTERRUPT 0x0C
|
||||
|
||||
|
||||
/* Platform specific hcalls, used by KVM */
|
||||
#define H_RTAS 0xf000
|
||||
|
||||
|
@ -37,4 +37,14 @@ config EHEA
|
||||
To compile the driver as a module, choose M here. The module
|
||||
will be called ehea.
|
||||
|
||||
config IBMVNIC
|
||||
tristate "IBM Virtual NIC support"
|
||||
depends on PPC_PSERIES
|
||||
---help---
|
||||
This driver supports Virtual NIC adapters on IBM i and IBM System p
|
||||
systems.
|
||||
|
||||
To compile this driver as a module, choose M here. The module will
|
||||
be called ibmvnic.
|
||||
|
||||
endif # NET_VENDOR_IBM
|
||||
|
@ -3,5 +3,6 @@
|
||||
#
|
||||
|
||||
obj-$(CONFIG_IBMVETH) += ibmveth.o
|
||||
obj-$(CONFIG_IBMVNIC) += ibmvnic.o
|
||||
obj-$(CONFIG_IBM_EMAC) += emac/
|
||||
obj-$(CONFIG_EHEA) += ehea/
|
||||
|
3585
drivers/net/ethernet/ibm/ibmvnic.c
Normal file
3585
drivers/net/ethernet/ibm/ibmvnic.c
Normal file
File diff suppressed because it is too large
Load Diff
1046
drivers/net/ethernet/ibm/ibmvnic.h
Normal file
1046
drivers/net/ethernet/ibm/ibmvnic.h
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user