<feed xmlns='http://www.w3.org/2005/Atom'>
<title>wireguard-linux/drivers/net/ethernet/pensando/ionic/ionic_dev.c, branch jd/unified-crypt-queue</title>
<subtitle>WireGuard for the Linux kernel</subtitle>
<id>https://git.zx2c4.com/wireguard-linux/atom/drivers/net/ethernet/pensando/ionic/ionic_dev.c?h=jd%2Funified-crypt-queue</id>
<link rel='self' href='https://git.zx2c4.com/wireguard-linux/atom/drivers/net/ethernet/pensando/ionic/ionic_dev.c?h=jd%2Funified-crypt-queue'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/'/>
<updated>2020-03-30T18:40:50Z</updated>
<entry>
<title>ionic: remove lifs on fw reset</title>
<updated>2020-03-30T18:40:50Z</updated>
<author>
<name>Shannon Nelson</name>
<email>snelson@pensando.io</email>
</author>
<published>2020-03-28T03:14:48Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=c672412f6172d66e34f2c6583cd65d2383a75b4e'/>
<id>urn:sha1:c672412f6172d66e34f2c6583cd65d2383a75b4e</id>
<content type='text'>
When the FW RESET event comes to the driver from the firmware,
or the fw_status goes to 0 (stopped) or to 0xff (no PCI
connection), then shut down the driver activity.  This event
signals a FW upgrade where we need to quiesce all operations and
wait for the FW to restart.  The FW will continue the update
process once it sees all the LIFs are reset.  When the update
process is done it will set the fw_status back to RUNNING.
Meanwhile, the heartbeat check continues and when the fw_status
is seen as set to running we can restart the driver operations.

Signed-off-by: Shannon Nelson &lt;snelson@pensando.io&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ionic: check for linkup in watchdog</title>
<updated>2020-03-30T18:40:50Z</updated>
<author>
<name>Shannon Nelson</name>
<email>snelson@pensando.io</email>
</author>
<published>2020-03-28T03:14:42Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=987c0871e8ae8991f7f0f08489d883fa19e13f82'/>
<id>urn:sha1:987c0871e8ae8991f7f0f08489d883fa19e13f82</id>
<content type='text'>
Add a link_status_check to the heartbeat watchdog.

Signed-off-by: Shannon Nelson &lt;snelson@pensando.io&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ionic: fix fw_status read</title>
<updated>2020-02-20T23:48:04Z</updated>
<author>
<name>Shannon Nelson</name>
<email>snelson@pensando.io</email>
</author>
<published>2020-02-19T22:59:42Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=68b759a75d6257759d1e37ff13f2d0659baf1112'/>
<id>urn:sha1:68b759a75d6257759d1e37ff13f2d0659baf1112</id>
<content type='text'>
The fw_status field is only 8 bits, so fix the read.  Also,
we only want to look at the one status bit, to allow for future
use of the other bits, and watch for a bad PCI read.

Fixes: 97ca486592c0 ("ionic: add heartbeat check")
Signed-off-by: Shannon Nelson &lt;snelson@pensando.io&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ionic: support sr-iov operations</title>
<updated>2020-01-05T22:51:02Z</updated>
<author>
<name>Shannon Nelson</name>
<email>snelson@pensando.io</email>
</author>
<published>2020-01-03T17:55:08Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=fbb39807e9ae0f60e2f6a0a628aadab73554fbbe'/>
<id>urn:sha1:fbb39807e9ae0f60e2f6a0a628aadab73554fbbe</id>
<content type='text'>
Add the netdev ops for managing VFs.  Since most of the
management work happens in the NIC firmware, the driver becomes
mostly a pass-through for the network stack commands that want
to control and configure the VFs.

We also tweak ionic_station_set() a little to allow for
the VFs that start off with a zero'd mac address.

Signed-off-by: Shannon Nelson &lt;snelson@pensando.io&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ionic: add a watchdog timer to monitor heartbeat</title>
<updated>2019-10-26T03:52:36Z</updated>
<author>
<name>Shannon Nelson</name>
<email>snelson@pensando.io</email>
</author>
<published>2019-10-24T00:48:58Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=089406bc5ad639e4fcc9419f70f4d3d91d7370cb'/>
<id>urn:sha1:089406bc5ad639e4fcc9419f70f4d3d91d7370cb</id>
<content type='text'>
Add a watchdog to periodically monitor the NIC heartbeat.

Signed-off-by: Shannon Nelson &lt;snelson@pensando.io&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ionic: add heartbeat check</title>
<updated>2019-10-26T03:52:36Z</updated>
<author>
<name>Shannon Nelson</name>
<email>snelson@pensando.io</email>
</author>
<published>2019-10-24T00:48:57Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=97ca486592c0e940a85a06b3ca37dcb6962b2a04'/>
<id>urn:sha1:97ca486592c0e940a85a06b3ca37dcb6962b2a04</id>
<content type='text'>
Most of our firmware has a heartbeat feature that the driver
can watch for to see if the FW is still alive and likely to
answer a dev_cmd or AdminQ request.

Signed-off-by: Shannon Nelson &lt;snelson@pensando.io&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ionic: Add basic adminq support</title>
<updated>2019-09-05T07:24:43Z</updated>
<author>
<name>Shannon Nelson</name>
<email>snelson@pensando.io</email>
</author>
<published>2019-09-03T22:28:09Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=1d062b7b6f6408fd43f447f90338cfade4168170'/>
<id>urn:sha1:1d062b7b6f6408fd43f447f90338cfade4168170</id>
<content type='text'>
Most of the NIC configuration happens through the AdminQ message
queue.  NAPI is used for basic interrupt handling and message
queue management.  These routines are set up to be shared among
different types of queues when used in slow-path handling.

Signed-off-by: Shannon Nelson &lt;snelson@pensando.io&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ionic: Add interrupts and doorbells</title>
<updated>2019-09-05T07:24:43Z</updated>
<author>
<name>Shannon Nelson</name>
<email>snelson@pensando.io</email>
</author>
<published>2019-09-03T22:28:08Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=6461b446f2a0f40c038f1d09c69d1e5565a84a43'/>
<id>urn:sha1:6461b446f2a0f40c038f1d09c69d1e5565a84a43</id>
<content type='text'>
The ionic interrupt model is based on interrupt control blocks
accessed through the PCI BAR.  Doorbell registers are used by
the driver to signal to the NIC that requests are waiting on
the message queues.  Interrupts are used by the NIC to signal
to the driver that answers are waiting on the completion queues.

Signed-off-by: Shannon Nelson &lt;snelson@pensando.io&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ionic: Add basic lif support</title>
<updated>2019-09-05T07:24:43Z</updated>
<author>
<name>Shannon Nelson</name>
<email>snelson@pensando.io</email>
</author>
<published>2019-09-03T22:28:07Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=1a58e196467f842a40ff3ecfe818ebf7604e04a6'/>
<id>urn:sha1:1a58e196467f842a40ff3ecfe818ebf7604e04a6</id>
<content type='text'>
The LIF is the Logical Interface, which represents the external
connections.  The NIC can multiplex many LIFs to a single port,
but in most setups, LIF0 is the primary control for the port.

Signed-off-by: Shannon Nelson &lt;snelson@pensando.io&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ionic: Add port management commands</title>
<updated>2019-09-05T07:24:43Z</updated>
<author>
<name>Shannon Nelson</name>
<email>snelson@pensando.io</email>
</author>
<published>2019-09-03T22:28:06Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=04436595c435060a1735759645b1417513124c1f'/>
<id>urn:sha1:04436595c435060a1735759645b1417513124c1f</id>
<content type='text'>
The port management commands apply to the physical port
associated with the PCI device, which might be shared among
several logical interfaces.

Signed-off-by: Shannon Nelson &lt;snelson@pensando.io&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
