]> www.infradead.org Git - users/jedix/linux-maple.git/commit
vmxnet3: introduce generalized command interface to configure the device
authorShrikrishna Khare <skhare@vmware.com>
Thu, 16 Jun 2016 17:51:54 +0000 (10:51 -0700)
committerChuck Anderson <chuck.anderson@oracle.com>
Mon, 6 Mar 2017 21:30:06 +0000 (13:30 -0800)
commit7349e8be093c613a0ead4adb6512404485b02e25
tree651dd537eb4c08eb1b579f5b29f8f1d41ba16bb9
parent3047450e737a7058fec95fa42764d11668afbff1
vmxnet3: introduce generalized command interface to configure the device

Orabug: 25639933

Shared memory is used to exchange information between the vmxnet3 driver
and the emulation. In order to request emulation to perform a task, the
driver first populates specific fields in this shared memory and then
issues corresponding command by writing to the command register(CMD). The
layout of the shared memory was defined by vmxnet3 version 1 and cannot
be extended for every new command without breaking backward compatibility.

To address this problem, in vmxnet3 version 3, the emulation repurposed
a reserved field in the shared memory to represent command information
instead. For new commands, the driver first populates the command
information field in the shared memory and then issues the command. The
emulation interprets the data written to the command information depending
on the type of the command. This patch exposes this capability to the driver.

Signed-off-by: Guolin Yang <gyang@vmware.com>
Signed-off-by: Shrikrishna Khare <skhare@vmware.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit f35c7480f81b70f9c3030d96a3807e8faba34cf7)
Signed-off-by: Brian Maly <brian.maly@oracle.com>
drivers/net/vmxnet3/vmxnet3_defs.h