to
Hardware drivers. This seems more accurate, besides people
sometimes refer to out-of-tree drivers as vendor drivers.
Signed-off-by: Jakub Kicinski
Acked-by: Shannon Nelson
for the Pensando/ionic changes.
Thanks, Jakub.
Let the network stack know the real number of queues that
we are using.
v2: added error checking
Fixes: 49d3b493673a ("ionic: disable the queues on link down")
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic_lif.c | 8
1 file changed, 8 insertion
On 6/25/20 3:57 PM, Jakub Kicinski wrote:
On Thu, 25 Jun 2020 13:12:15 -0700 Shannon Nelson wrote:
Let the network stack know the real number of queues that
we are using.
Fixes: 49d3b493673a ("ionic: disable the queues on link down")
Signed-off-by: Shannon Nelson
---
drivers/ne
Let the network stack know the real number of queues that
we are using.
Fixes: 49d3b493673a ("ionic: disable the queues on link down")
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic_lif.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/ne
On 6/22/20 3:18 PM, Jeff Kirsher wrote:
From: Jesse Brandeburg
Remove all the unused defines as they are just dead weight.
Signed-off-by: Jesse Brandeburg
Tested-by: Andrew Bowers
Signed-off-by: Jeff Kirsher
---
drivers/net/ethernet/intel/i40e/i40e.h| 20 -
.../net/ethernet/int
. Using
netif_device_detach() allows us to signal to the watchdog to
ignore us for the moment.
Fixes: beead698b173 ("ionic: Add the basic NDO callbacks for netdev support")
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic_lif.c | 15 ---
1 file
On 6/17/20 12:41 PM, Jonathan Toppins wrote:
On 6/15/20 9:14 PM, Shannon Nelson wrote:
If the driver is busy resetting queues after a change in
MTU or queue parameters, don't bother checking the link,
wait until the next watchdog cycle.
Fixes: 987c0871e8ae ("ionic: check for linkup i
Set up vlan_features for use by any vlans above us.
Fixes: beead698b173 ("ionic: Add the basic NDO callbacks for netdev support")
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic_lif.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/net/etherne
If the driver is busy resetting queues after a change in
MTU or queue parameters, don't bother checking the link,
wait until the next watchdog cycle.
Fixes: 987c0871e8ae ("ionic: check for linkup in watchdog")
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/
CC: jdma...@kudzu.us
CC: snel...@pensando.io
I'm fine with the Pensando ionic changes.
Thanks,
sln
Acked-by: Shannon Nelson
CC: gr-linux-nic-...@marvell.com
CC: stuyo...@gmail.com
CC: jeffrey.t.kirs...@intel.com
CC: sgout...@marvell.com
CC: luob...@huawei.com
CC: csu...@google.c
Print the PCIe link information for our device.
Fixes: 77f972a7077d ("ionic: remove support for mgmt device")
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/net/ethernet/pens
On 6/11/20 1:33 PM, Michal Schmidt wrote:
Dne 11. 06. 20 v 6:07 Shannon Nelson napsal(a):
We no longer support the mgmt device in the ionic driver,
so remove the device id and related code.
...> @@ -252,8 +248,6 @@ static int ionic_probe(struct pci_dev *pdev,
const struct pci_device_id *
We no longer support the mgmt device in the ionic driver,
so remove the device id and related code.
Fixes: b3f064e9746d ("ionic: add support for device id 0x1004")
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic.h | 2 --
drivers/net/ethernet/pens
On 6/9/20 1:06 PM, David Miller wrote:
From: Shannon Nelson
Date: Tue, 9 Jun 2020 12:51:17 -0700
On 6/9/20 12:47 PM, David Miller wrote:
From: Shannon Nelson
Date: Mon, 8 Jun 2020 20:41:43 -0700
The netif_running() test looks at __LINK_STATE_START which
gets set before ndo_open() is
On 6/9/20 12:47 PM, David Miller wrote:
From: Shannon Nelson
Date: Mon, 8 Jun 2020 20:41:43 -0700
The netif_running() test looks at __LINK_STATE_START which
gets set before ndo_open() is called, there is a window of
time between that and when the queues are actually ready to
be run. If
cleared before
calling ndo_stop(), and IFF_UP is cleared after. Both of
these need to be true in order to safely stop the queues
from ionic_check_link_status().
Fixes: 49d3b493673a ("ionic: disable the queues on link down")
Signed-off-by: Shannon Nelson
---
drivers/net/ether
, 0, NULL, 0);
+ 0, false, 0, 0, NULL, 0);
err = devlink_port_register(dl, &ionic->dl_port, 0);
if (err)
dev_err(ionic->dev, "devlink_port_register failed: %d\n", err);
for ionic
Acked-by: Shannon Nelson
[...]
diff
On 5/12/20 10:13 AM, Jakub Kicinski wrote:
On Mon, 11 May 2020 17:59:26 -0700 Shannon Nelson wrote:
This set of patches is a bunch of code cleanup, a little
documentation, longer tx sg lists, more ethtool stats,
and a couple more transceiver types.
I wish patch 3 was handled by the core, but
ned-off-by: Shannon Nelson
---
.../net/ethernet/pensando/ionic/ionic_lif.c | 26 ++-
1 file changed, 25 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/pensando/ionic/ionic_lif.c
b/drivers/net/ethernet/pensando/ionic/ionic_lif.c
index 0049f537ee40..5f63c611d1fd 10
Shorten our msleep time while polling for the dev command
request to finish. Yes, checkpatch.pl complains that the
msleep might actually go longer - that won't hurt, but we'll
take the shorter time if we can get it.
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pens
the driver's version. The negotiated version number
is later used in the Q_INIT commands.
Signed-off-by: Shannon Nelson
---
.../net/ethernet/pensando/ionic/ionic_dev.c | 14 +++
.../net/ethernet/pensando/ionic/ionic_dev.h | 7 +-
.../ethernet/pensando/ionic/ionic_ethtool.c
Once we're talking to the device, tell it to reset to
be sure we've got a fresh, clean environment.
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic_main.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/net/ethernet/pensando/ionic/ionic_main.c
Update the basic doc file with some configuration hints and a
little bit of stats information.
Signed-off-by: Shannon Nelson
---
.../device_drivers/pensando/ionic.rst | 231 +-
1 file changed, 230 insertions(+), 1 deletion(-)
diff --git a/Documentation/networking
Change the ionic_intr_free parameter from struct ionic_lif to
struct ionic since that's what it actually cares about.
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic_lif.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/driver
Add a couple more SFP and QSFP transceiver types to our
ethtool get link ksettings.
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic_ethtool.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/net/ethernet/pensando/ionic/ionic_ethtool.c
b/drivers/net
Fix up a few more local names that need an "ionic" prefix.
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic_dev.h | 10 +-
drivers/net/ethernet/pensando/ionic/ionic_ethtool.c | 13 +++--
drivers/net/ethernet/pensando/ionic/ionic_lif.
Add hardware port stats and a few more driver collected
statistics to the ethtool stats output.
Signed-off-by: Shannon Nelson
---
.../net/ethernet/pensando/ionic/ionic_lif.c | 4 +-
.../net/ethernet/pensando/ionic/ionic_lif.h | 15 +-
.../net/ethernet/pensando/ionic/ionic_stats.c | 136
Lots of comment cleanup for better documentation, a few new
fields added, and a few minor mistakes fixed up.
Signed-off-by: Shannon Nelson
---
.../net/ethernet/pensando/ionic/ionic_if.h| 979 +++---
1 file changed, 576 insertions(+), 403 deletions(-)
diff --git a/drivers/net
This set of patches is a bunch of code cleanup, a little
documentation, longer tx sg lists, more ethtool stats,
and a couple more transceiver types.
Shannon Nelson (10):
ionic: support longer tx sg lists
ionic: updates to ionic FW api description
ionic: protect vf calls from fw reset
r
needs to leave the netdev mac filter alone when rebuilding
after the fw-upgrade.
Fixes: c672412f6172 ("ionic: remove lifs on fw reset")
Signed-off-by: Shannon Nelson
---
.../net/ethernet/pensando/ionic/ionic_lif.c| 18 +++---
1 file changed, 11 insertions(+), 7 deleti
t")
Signed-off-by: Shannon Nelson
---
.../net/ethernet/pensando/ionic/ionic_lif.c| 1 +
.../net/ethernet/pensando/ionic/ionic_main.c | 18 +-
2 files changed, 10 insertions(+), 9 deletions(-)
diff --git a/drivers/net/ethernet/pensando/ionic/ionic_lif.c
b/drivers/net/et
These are a couple more fixes after more fw-upgrade testing.
Shannon Nelson (2):
ionic: leave netdev mac alone after fw-upgrade
ionic: call ionic_port_init after fw-upgrade
.../net/ethernet/pensando/ionic/ionic_lif.c | 19 ---
.../net/ethernet/pensando/ionic/ionic_main.c
On 5/9/20 6:58 PM, Andrew Lunn wrote:
On Sat, May 09, 2020 at 06:01:51PM -0700, Shannon Nelson wrote:
On 5/8/20 9:35 PM, Luis Chamberlain wrote:
Device driver firmware can crash, and sometimes, this can leave your
system in a state which makes the device or subsystem completely
useless
On 5/8/20 9:35 PM, Luis Chamberlain wrote:
Device driver firmware can crash, and sometimes, this can leave your
system in a state which makes the device or subsystem completely
useless. Detecting this by inspecting /proc/sys/kernel/tainted instead
of scraping some magical words from the kernel lo
Doing a device reset addresses an obscure FW timing issue in
the FW upgrade process.
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic_lif.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/net/ethernet/pensando/ionic/ionic_lif.c
b/drivers/net/ethernet
These patches address issues found in additional internal
fw-upgrade testing.
Shannon Nelson (3):
ionic: no link check until after probe
ionic: refresh devinfo after fw-upgrade
ionic: add device reset to fw upgrade down
v2:
- replaced extra state flag with postponing first link check
Make sure we can report the new FW version after a
fw-upgrade has finished by re-reading the device's
fw version information.
Fixes: c672412f6172 ("ionic: remove lifs on fw reset")
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic_lif.c | 1 +
1
t")
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic_lif.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/drivers/net/ethernet/pensando/ionic/ionic_lif.c
b/drivers/net/ethernet/pensando/ionic/ionic_lif.c
index 5acf4f46c268..bbc6c79e0f04 100644
--- a/drive
On 4/29/20 12:38 PM, David Miller wrote:
From: Shannon Nelson
Date: Wed, 29 Apr 2020 11:37:38 -0700
Add a bit of state to the lif to signify when the queues are
ready to be used. This closes an ionic_probe()/ionic_open()
race condition where the driver has registered the netdev
and signaled
Make sure we can report the new FW version after a
fw-upgrade has finished by re-reading the device's
fw version information.
Fixes: c672412f6172 ("ionic: remove lifs on fw reset")
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic_lif.c | 1 +
1
These patches address a couple of issues found in additional
fw-upgrade testing.
Shannon Nelson (2):
ionic: add LIF_READY state to close probe-open race
ionic: refresh devinfo after fw-upgrade
drivers/net/ethernet/pensando/ionic/ionic_lif.c | 7 +++
drivers/net/ethernet/pensando/ionic
ic_probe() thread
trying to start the queues before the queues have completed
their initialization.
Adding a LIF_QREADY flag allows us to prevent this condition by
signaling whether the Tx/Rx queues are initialized and ready.
Fixes: c672412f6172 ("ionic: remove lifs on fw reset")
Signed-off-
On 10/22/19 6:22 PM, Andrew Lunn wrote:
On Tue, Oct 22, 2019 at 01:31:09PM -0700, Shannon Nelson wrote:
Fix the initial interrupt coalesce usec-to-hw setting
to actually be usec-to-hw.
Fixes: 780eded34ccc ("ionic: report users coalesce request")
Signed-off-by: Shannon Nelson
Hi Sh
On 10/22/19 4:37 PM, Jakub Kicinski wrote:
On Tue, 22 Oct 2019 13:31:12 -0700, Shannon Nelson wrote:
diff --git a/drivers/net/ethernet/pensando/ionic/ionic_txrx.c
b/drivers/net/ethernet/pensando/ionic/ionic_txrx.c
index ab6663d94f42..8c96f5fe43a2 100644
--- a/drivers/net/ethernet/pensando
These are a few of the driver updates we've been working on internally.
These clean up a few mismatched struct comments, add checking for dead
firmware, fix an initialization bug, and change the Rx buffer management.
These are based on net-next v5.4-rc3-709-g985fd98ab5cc.
Shannon Nels
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
---
.../net/ethernet/pensando/ionic/ionic_dev.c | 43 +++
.../net/ethernet/pensando/ionic
Fix up struct names in the ionic_if.h comments
Signed-off-by: Shannon Nelson
---
.../net/ethernet/pensando/ionic/ionic_if.h| 196 +-
1 file changed, 98 insertions(+), 98 deletions(-)
diff --git a/drivers/net/ethernet/pensando/ionic/ionic_if.h
b/drivers/net/ethernet
kzalloc'd
buffer. An skb is wrapped around the pages while processing
the received packets, and pages are recycled as needed, or
left alone if they weren't used in the Rx.
Signed-off-by: Shannon Nelson
---
.../net/ethernet/pensando/ionic/ionic_dev.h | 7 +
.../net/ethernet/pens
Fix the initial interrupt coalesce usec-to-hw setting
to actually be usec-to-hw.
Fixes: 780eded34ccc ("ionic: report users coalesce request")
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic_lif.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
di
Add a watchdog to periodically monitor the NIC heartbeat.
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic.h | 2 ++
.../net/ethernet/pensando/ionic/ionic_dev.c | 19 +--
.../net/ethernet/pensando/ionic/ionic_dev.h | 1 +
3 files changed, 20
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/pensando/ionic/ionic.h
b/drivers/net/ethernet/pensando/ionic/ionic.h
index 5b013250f8c3..98e102af7756 100644
--- a/drivers/net
indentation.
Fixes: df69ba43217d ("ionic: Add basic framework for IONIC Network device
driver")
Signed-off-by: Randy Dunlap
Cc: Shannon Nelson
Acked-by: Shannon Nelson
---
Documentation/networking/device_drivers/pensando/ionic.rst |4 +++-
1 file changed, 3 insertions(+),
When the netdev is down, the queues and their debug stats
do not exist, so don't try using a pointer to them when
when printing the ethtool stats.
Fixes: e470355bd96a ("ionic: Add driver stats")
Signed-off-by: Shannon Nelson
---
.../net/ethernet/pensando/ionic/ionic_lif.h |
Even though we've already turned off the queue activity with
the ionic_qcq_disable(), we need to wait for any device queues
that are processing packets to drain down before we try to
flush our packets and tear down the queues.
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pen
Wire up the --set-fec and --show-fec features in the ethtool
callbacks and pull the related code out of set_link_ksettings.
Signed-off-by: Shannon Nelson
---
.../ethernet/pensando/ionic/ionic_ethtool.c | 94 +--
1 file changed, 67 insertions(+), 27 deletions(-)
diff --git a
e
now tracks both the user request and what was put into the
hardware so we can report back to the user what they
requested.
Signed-off-by: Shannon Nelson
---
.../ethernet/pensando/ionic/ionic_ethtool.c | 22 +--
.../net/ethernet/pensando/ionic/ionic_lif.c | 11 +-
..
Replace the open-coded ionic_wait_for_bit() with the
kernel's wait_on_bit_lock().
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic_ethtool.c | 12
drivers/net/ethernet/pensando/ionic/ionic_lif.c | 5 +++--
drivers/net/ethernet/pensando/
d add Fixes: tags
Shannon Nelson (5):
ionic: simplify returns in devlink info
ionic: use wait_on_bit_lock() rather than open code
ionic: report users coalesce request
ionic: implement ethtool set-fec
ionic: add lif_quiesce to wait for queue activity to stop
.../ethernet/pensando/
There is no need for a goto in this bit of code.
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic_devlink.c | 9 -
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/drivers/net/ethernet/pensando/ionic/ionic_devlink.c
b/drivers/net/ethernet
On 9/30/19 4:48 PM, David Miller wrote:
From: Shannon Nelson
Date: Mon, 30 Sep 2019 14:49:15 -0700
These patches are a few updates to clean up some code
issues and add an ethtool feature.
v2: add cover letter
edit a couple of patch descriptions for clarity and add Fixes tags
I agree
Replace the open-coded ionic_wait_for_bit() with the
kernel's wait_on_bit_lock().
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic_ethtool.c | 12
drivers/net/ethernet/pensando/ionic/ionic_lif.c | 5 +++--
drivers/net/ethernet/pensando/
Wire up the --set-fec and --show-fec features in the ethtool
callbacks and pull the related code out of set_link_ksettings.
Signed-off-by: Shannon Nelson
---
.../ethernet/pensando/ionic/ionic_ethtool.c | 94 +--
1 file changed, 67 insertions(+), 27 deletions(-)
diff --git a
These patches are a few updates to clean up some code
issues and add an ethtool feature.
v2: add cover letter
edit a couple of patch descriptions for clarity and add Fixes tags
Shannon Nelson (5):
ionic: simplify returns in devlink info
ionic: use wait_on_bit_lock() rather than open code
There is no need for a goto in this bit of code.
Fixes: fbfb8031533c9 ("ionic: Add hardware init and device commands")
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic_devlink.c | 9 -
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/d
e
now tracks both the user request and what was put into the
hardware so we can report back to the user what they
requested.
Fixes: 8c15440bce31 ("ionic: Add coalesce and other features")
Signed-off-by: Shannon Nelson
---
.../ethernet/pensando/ionic/ionic_ethtool.c | 22 +
Replace the open-coded ionic_wait_for_bit() with the
kernel's wait_on_bit_lock().
Fixes: beead698b1736 ("ionic: Add the basic NDO callbacks for netdev support")
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic_ethtool.c | 12
drivers/net/et
Even though we've already turned off the queue activity with
the ionic_qcq_disable(), we need to wait for any device queues
that are processing packets to drain down before we try to
flush our packets and tear down the queues.
Signed-off-by: Shannon Nelson
---
.../net/ethernet/pensando/
The user's request for an interrupt coalescing value gets
translated into a hardware value to be used with the NIC,
but we should still report back to the user what they
requested.
Signed-off-by: Shannon Nelson
---
.../ethernet/pensando/ionic/ionic_ethtool.c | 22 +--
..
There is no need for a goto in this bit of code.
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic_devlink.c | 9 -
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/drivers/net/ethernet/pensando/ionic/ionic_devlink.c
b/drivers/net/ethernet
Even though we've already turned off the queue activity with
the ionic_qcq_disable(), we need to wait for any device queues
that are processing packets to drain down before we try to
flush our packets and tear down the queues.
Signed-off-by: Shannon Nelson
---
.../net/ethernet/pensando/
Wire up --set-fec in the ethtool callbacks and pull the
related code out of set_link_ksettings.
Signed-off-by: Shannon Nelson
---
.../ethernet/pensando/ionic/ionic_ethtool.c | 94 +--
1 file changed, 67 insertions(+), 27 deletions(-)
diff --git a/drivers/net/ethernet/pensando
On 9/30/19 1:33 PM, David Miller wrote:
You must always submit a patch series with a proper "[PATCH net-next
0/5]" header posting, explaining what the series is doing at a high
level, how it is doing it, and why it is doing it this way.
Please resubmit this series properly.
Thank you.
Yep, so
table,
aborting\n");
goto err_out_free_qcqs;
}
Thanks, Dan.
Acked-by: Shannon Nelson
with a "bad sa_idx" error. Fix this by using
the xfrm_offload() function to test for Tx offload.
CC: Shannon Nelson
Fixes: 7f68d4306701 ("ixgbevf: enable VF IPsec offload operations")
Reported-by: Jonathan Tooker
Signed-off-by: Jeff Kirsher
---
drivers/net/ethernet/intel/ix
On 9/12/19 5:33 PM, Jonathan Tooker wrote:
On 9/12/2019 6:01 AM, Steffen Klassert wrote:
The ixgbe driver currently does IPsec TX offloading
based on an existing secpath. However, the secpath
can also come from the RX side, in this case it is
misinterpreted for TX offload and the packets are
dro
ix this by using
the xfrm_offload() function to test for TX offload.
Acked-by: Shannon Nelson
Fixes: 592594704761 ("ixgbe: process the Tx ipsec offload")
Reported-by: Michael Marley
Signed-off-by: Steffen Klassert
---
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 3 ++-
On 9/10/19 11:15 PM, Steffen Klassert wrote:
On Tue, Sep 10, 2019 at 06:53:30PM -0400, Michael Marley wrote:
StrongSwan has hardware offload disabled by default, and I didn't enable
it explicitly. I also already tried turning off all those switches with
ethtool and it has no effect. This doesn
On 9/9/19 11:45 AM, Michael Marley wrote:
On 2019-09-09 14:21, Shannon Nelson wrote:
On 9/6/19 11:13 AM, Michael Marley wrote:
(This is also reported at
https://bugzilla.kernel.org/show_bug.cgi?id=204551, but it was
recommended that I send it to this list as well.)
I have a put together a
On 9/6/19 11:13 AM, Michael Marley wrote:
(This is also reported at
https://bugzilla.kernel.org/show_bug.cgi?id=204551, but it was
recommended that I send it to this list as well.)
I have a put together a router that routes traffic from several local
subnets from a switch attached to an i8259
Acked-by: Shannon Nelson
Set up the initial NDO structure and callbacks for netdev
to use, and register the netdev. This will allow us to do
a few basic operations on the device, but no traffic yet.
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic.h | 2 +
.../ethernet/pensando/ionic
Interrupt coalescing, tunable copybreak value, and
tx timeout.
Signed-off-by: Shannon Nelson
---
.../net/ethernet/pensando/ionic/ionic_dev.h | 1 +
.../ethernet/pensando/ionic/ionic_ethtool.c | 108 ++
.../net/ethernet/pensando/ionic/ionic_lif.c | 28 -
.../net
Add in the basic ethtool callbacks for device information
and control.
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/Makefile | 2 +-
.../net/ethernet/pensando/ionic/ionic_dev.h | 7 +
.../ethernet/pensando/ionic/ionic_ethtool.c | 497
The AdminQ is fine for sending messages and requests to the NIC,
but we also need to have events published from the NIC to the
driver. The NotifyQ handles this for us, using the same interrupt
as AdminQ.
Signed-off-by: Shannon Nelson
---
.../ethernet/pensando/ionic/ionic_debugfs.c | 15
Add the Rx filtering and rx_mode NDO callbacks. Also add
the deferred work thread handling needed to manage the filter
requests outside of the netif_addr_lock spinlock.
Signed-off-by: Shannon Nelson
---
.../net/ethernet/pensando/ionic/ionic_lif.c | 400 +-
.../net/ethernet
Add both the Tx and Rx queue setup and handling. The related
stats display comes later. Instead of using the generic napi
routines used by the slow-path commands, the Tx and Rx paths
are simplified and inlined in one file in order to get better
compiler optimizations.
Signed-off-by: Shannon
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
---
drivers/net
When the netdev gets a new name from userland, pass that name
down to the NIC for internal tracking.
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic.h | 2 +
.../net/ethernet/pensando/ionic/ionic_lif.c | 62 +++
2 files changed, 64 insertions
completion queues.
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic.h | 3 ++
.../net/ethernet/pensando/ionic/ionic_bus.h | 2 +
.../ethernet/pensando/ionic/ionic_bus_pci.c | 12 ++
.../net/ethernet/pensando/ionic/ionic_dev.c | 6 +++
.../net/ethernet
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
---
drivers/net/ethernet/pensando/ionic/Makefile | 2 +-
drivers/net
The ionic device has a small set of PCI registers, including a
device control and data space, and a large set of message
commands.
Also adds new DEVLINK_INFO_VERSION_GENERIC tags for
ASIC_ID, ASIC_REV, and FW.
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/Makefile
Add in the detailed statistics for ethtool -S that the driver
keeps as it processes packets. Display of the additional
debug statistics can be enabled through the ethtool priv-flags
feature.
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/Makefile | 2 +-
.../ethernet
Add code to handle the link status event, and wire up the
basic netdev hardware stats.
Signed-off-by: Shannon Nelson
---
.../net/ethernet/pensando/ionic/ionic_lif.c | 116 +-
.../net/ethernet/pensando/ionic/ionic_lif.h | 1 +
2 files changed, 111 insertions(+), 6 deletions
Add code to manipulate through ethtool the RSS configuration
used by the NIC.
Signed-off-by: Shannon Nelson
---
.../ethernet/pensando/ionic/ionic_ethtool.c | 73
.../net/ethernet/pensando/ionic/ionic_lif.c | 84 +++
.../net/ethernet/pensando/ionic
Set up the infrastructure for managing Rx filters. We can't ask the
hardware for what filters it has, so we keep a local list of filters
that we've pushed into the HW.
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/Makefile | 2 +-
.../net/ethernet/pens
Add AdminQ specific message requests and completion handling.
Signed-off-by: Shannon Nelson
---
drivers/net/ethernet/pensando/ionic/ionic.h | 7 ++
.../net/ethernet/pensando/ionic/ionic_main.c | 111 ++
2 files changed, 118 insertions(+)
diff --git a/drivers/net/ethernet
This patch adds a basic driver framework for the Pensando IONIC
network device. There is no functionality right now other than
the ability to load and unload.
Signed-off-by: Shannon Nelson
---
.../networking/device_drivers/index.rst | 1 +
.../device_drivers/pensando/ionic.rst
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
---
drivers/net/ethernet/pensando/ionic/ionic.h | 4 +
.../ethernet/pensando/ionic/ionic_bus_pci.c | 16
n 64BIT
- cut down on some unnecessary log messaging
- cleaned up ionic_get_link_ksettings
- cleaned up other little code bits here and there
Shannon Nelson (19):
devlink: Add new info version tags for ASIC and FW
ionic: Add basic framework for IONIC Network device driver
ionic: Add har
The current tag set is still rather small and needs a couple
more tags to help with ASIC identification and to have a
more generic FW version.
Cc: Jiri Pirko
Acked-by: Jakub Kicinski
Signed-off-by: Shannon Nelson
---
.../networking/devlink-info-versions.rst | 16
301 - 400 of 921 matches
Mail list logo