Add code to driver probe function to check if the device is WoL capable
and if Magic packet WoL filter is currently set.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 43 +++
drivers/net/ethernet/broadco
Main changes are to add WoL and selftest features, optimize XDP_TX by
using short BDs, and to cap the usage of MSIX.
Michael Chan (12):
bnxt_en: Update firmware interface spec to 1.7.6.2.
bnxt_en: Add basic WoL infrastructure.
bnxt_en: Add pci shutdown method.
bnxt_en: Add ethtool get_wol
Add the basic infrastructure and only firmware tests initially.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 2 +
drivers/net/ethernet/broadcom/bnxt/bnxt.h | 13 ++-
drivers/net/ethernet/broadcom/bnxt/bnxt_eth
Add suspend/resume callbacks using the newer dev_pm_ops method.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 57 +++
1 file changed, 57 insertions(+)
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnx
Add pci shutdown method to put device in the proper WoL and power state.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 31 +++
1 file changed, 31 insertions(+)
diff --git a/drivers/net/ethernet/broadco
In bnxt_free_rx_skbs(), which is called to free up all RX buffers during
shutdown, we need to unmap the page if we are running in XDP mode.
Fixes: c61fb99cae51 ("bnxt_en: Add RX page mode support.")
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethern
From: Sankar Patchineelam <sankar.patchinee...@broadcom.com>
Signed-off-by: Sankar Patchineelam <sankar.patchinee...@broadcom.com>
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 2 +-
1 file changed, 1 insertion(+), 1
ore
bnxt_init_chip() is invoked.
Signed-off-by: Sankar Patchineelam <sankar.patchinee...@broadcom.com>
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 13 +
1 file changed, 13 insertions(+)
diff --git a/drivers/net/et
Fix a NULL pointer crash in open failure path, wrong arguments when
printing error messages, and a DMA unmap bug in XDP shutdown path.
Michael Chan (1):
bnxt_en: Fix DMA unmapping of the RX buffers in XDP mode during
shutdown.
Sankar Patchineelam (2):
bnxt_en: Fix NULL pointer
On Tue, Mar 28, 2017 at 11:32 AM, Salam Noureddine
wrote:
> Hi,
>
> We've seen a very rare kernel panic in tg3_poll_work on hardware
> running linux-3.4.
> I haven't seen any upstream patches that seem to fix this issue in the
> tg3 driver.
> The disassembly shows that the
Set DCB_CAP_DCBX_HOST capability flag only if the firmware LLDP agent
is not running.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 4
drivers/net/ethernet/broadcom/bnxt/bnxt.h | 1 +
drivers/net/ethernet/broadco
If we call bnxt_reset_task() due to tx timeout, we should call
bnxt_ulp_stop() to inform the RDMA driver about the error and the
impending reset.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 8 +++-
1 file changed, 7 insertions
the updated settings from firmware at that time.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
b/drivers/net/ethernet/br
The firmware call to do function reset is done too late. It is causing
the rings that have been reserved to be freed. In NPAR mode, this bug
is causing us to run out of rings.
Fixes: 391be5c27364 ("bnxt_en: Implement new scheme to reserve tx rings.")
Signed-off-by: Michael Chan
Fixes include moving the initial function reset, notifying the RDMA driver
during tx timeout, setting dcbx_cap properly depending on whether the
firmware agent is running or not, and an autoneg related improvement.
Michael Chan (4):
bnxt_en: Perform function reset earlier during probe
Fix 3 issues related to bnxt_init_one() and bnxt_open(). Don't probe
bridge devices and fixup some error code paths.
Michael Chan (1):
bnxt_en: Fix NULL pointer dereference in a failure path during open.
Ray Jui (1):
bnxt_en: Reject driver probe against all bridge devices
Sathya Perla (1
ed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 76 ---
1 file changed, 39 insertions(+), 37 deletions(-)
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
i
adcom.com>
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
index 71f9a18..f4dec1b 10
been initialized before writing to the completion
ring doorbell.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
b/drive
If skb_flow_dissect_flow_keys() returns with the encapsulation flag
set, pass the information to the firmware to setup the NTUPLE filter
accordingly.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 17 ++---
1 file chang
-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
index f3d829f..afd1190 100644
--- a/drivers/net/ethernet/br
entralize logic to reserve rings.")
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c
b/drivers/net/ethernet/br
Print FEC (Forward Error Correction) autoneg and encoding settings during
link up.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 13 -
drivers/net/ethernet/broadcom/bnxt/bnxt.h | 4
2 files changed, 16 insertions
The new spec has NVRAM defragmentation support which will be used in
the next patch to improve ethtool flash operation.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 9 +-
drivers/net/ethernet/broadcom/bnxt/bnxt.h
mutex until
we finish reading the response.
Signed-off-by: Kshitij Soni <kshitij.s...@broadcom.com>
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c | 32 ++-
1 file changed, 26 insertions(+), 6 deleti
From: Deepak Khungar <deepak.khun...@broadcom.com>
Signed-off-by: Deepak Khungar <deepak.khun...@broadcom.com>
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 6 ++
1 file changed, 6 insertions(+)
diff --git a/dr
Commit ae10ae740ad2 ("bnxt_en: Add new hardware RFS mode.") has added
code to allow NTUPLE to be enabled on VFs. So we now remove the
BNXT_VF() check in rfs_capable() to allow NTUPLE on VFs.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broa
Add proper puctuation to make the message more clear.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
b/drivers/net/et
Kshitij Soni (1):
bnxt_en: Retry failed NVM_INSTALL_UPDATE with defragmentation flag.
Michael Chan (7):
bnxt_en: Update to firmware interface spec 1.7.0.
bnxt_en: Fix ethtool -l pre-set max combined channel.
bnxt_en: Allow NETIF_F_NTUPLE to be enabled on VFs.
bnxt_en: Add hardware NTUPLE
To support XDP_TX, we need the RX buffer's DMA address to transmit the
packet. Convert the DMA address field to a permanent field in
bnxt_sw_rx_bd.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 21 +
drive
Convert the global constants BNXT_RX_OFFSET and BNXT_RX_DMA_OFFSET to
device parameters. This will make it easier to support XDP with
headroom support which requires different RX buffer offsets.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadco
trace_xdp_exception().
Add dma_sync.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
Tested-by: Andy Gospodarek <go...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 36 ++--
drivers/net/ethernet/broadcom/bnxt/bnxt.h | 19 +-
drivers/net/ethernet/b
This mode is to support XDP. In this mode, each rx ring is configured
with page sized buffers for linear placement of each packet. MTU will be
restricted to what the page sized buffers can support.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadco
XDP_TX requires a different function to handle completion. Add a
function pointer to handle tx completion logic. Regular TX rings
will be assigned the current bnxt_tx_int() for the ->tx_int()
function pointer.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net
can retrieve the netdev txq when handling TX completions.
In this patch, before we introduce XDP_TX, the mapping is 1:1.
v2: Fixed a bug in bnxt_tx_int().
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 15 ---
drivers/net
bp->tx_nr_rings_xdp.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 21 +
drivers/net/ethernet/broadcom/bnxt/bnxt.h | 3 ++-
drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c | 16
3 files
-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 30 +++---
drivers/net/ethernet/broadcom/bnxt/bnxt.h | 3 +++
2 files changed, 18 insertions(+), 15 deletions(-)
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
b/drive
ring checking logic in bnxt_setup_msix() can be removed.
The rings have been reserved before hand.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 68 ++-
drivers/net/ethernet/broadcom/bnxt/bnxt.h
.
Added XDP headroom support.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
Tested-by: Andy Gospodarek <go...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/Makefile | 2 +-
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 36 +-
drivers/net/ethernet/broadcom
.
- Added XDP headroom support.
- Added tracing in exception path.
- Clarified a parameter change.
Michael Chan (12):
bnxt_en: Refactor rx SKB function.
bnxt_en: Don't use DEFINE_DMA_UNMAP_ADDR to store DMA address in RX
path.
bnxt_en: Add bp->rx_dir field for
hanged the name of the last parameter to offset_and_len to make the
code more clear.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 49 ++-
drivers/net/ethernet/broadcom/bnxt/bnxt.h | 11 +--
2 files
When driver is running in XDP mode, rx buffers are DMA mapped as
DMA_BIDIRECTIONAL. Add a field so the code will map/unmap rx buffers
according to this field.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.
On Fri, Feb 3, 2017 at 4:33 PM, Jakub Kicinski wrote:
> On Fri, 03 Feb 2017 16:50:54 -0500 (EST), David Miller wrote:
>> We don't set precedence by one driver saying "hey it's better to do
>> things this way, forget what all the other drivers are doing." Rather
>> we have a
On Fri, Feb 3, 2017 at 12:49 PM, David Miller wrote:
>
> Please _DO NOT_ guard XDP support with an ifdef the user
> can modify.
>
> Treat it like any other common netdev feature a driver might
> support such as checksum offloading or GRO.
>
David, I want to make sure I
On Thu, Feb 2, 2017 at 4:22 PM, Jakub Kicinski <kubak...@wp.pl> wrote:
> On Thu, 2 Feb 2017 15:40:19 -0800, Michael Chan wrote:
>> On Thu, Feb 2, 2017 at 2:56 PM, Jakub Kicinski <kubak...@wp.pl> wrote:
>> > (b) why
>> > do you encode the two parame
On Thu, Feb 2, 2017 at 2:56 PM, Jakub Kicinski <kubak...@wp.pl> wrote:
> On Thu, 2 Feb 2017 11:55:29 -0500, Michael Chan wrote:
>> @@ -755,8 +757,8 @@ static void bnxt_reuse_rx_agg_bufs(struct bnxt_napi
>> *bnapi, u16 cp_cons,
>>
>> static struct sk_
On Thu, Feb 2, 2017 at 9:18 AM, Mintz, Yuval wrote:
>> +config BNXT_XDP
>> + bool "Xpress Data Path (XDP) driver support"
>> + default n
>> + depends on BNXT && BPF
>> + ---help---
>> + Say Y here if you want to enable XDP in the driver to support
>>
bit.
The offset is needed to support the rx page mode and is not used in
this existing function.
v2: Changed the name of the last parameter to offset_and_len to make the
code more clear.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bn
and uncovering some bugs.
v2: Addressed review comments from Alexei Starovoitov, Jakub Kicinski,
and David Miller:
- Added missing dma syncs.
- Added XDP headroom support.
- Added tracing in exception path.
- Clarified a parameter change.
Michael Chan (12):
bnxt_en: Refactor
To support XDP_TX, we need the RX buffer's DMA address to transmit the
packet. Convert the DMA address field to a permanent field in
bnxt_sw_rx_bd.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 21 +
drive
uct bnxt_sw_tx_bd. XDP TX rings will use the struct page
pointer.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 5 -
drivers/net/ethernet/broadcom/bnxt/bnxt.h | 10 +-
2 files changed, 13 insertions(+), 2 deletions(-)
d
-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 28 +---
drivers/net/ethernet/broadcom/bnxt/bnxt.h | 3 +++
2 files changed, 16 insertions(+), 15 deletions(-)
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
b/drive
Convert the global constants BNXT_RX_OFFSET and BNXT_RX_DMA_OFFSET to
device parameters. This will make it easier to support XDP with
headroom support which requires different RX buffer offsets.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadco
can retrieve the netdev txq when handling TX completions.
In this patch, before we introduce XDP_TX, the mapping is 1:1.
v2: Fixed a bug in bnxt_tx_int().
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 15 ---
drivers/net
-by: Michael Chan <michael.c...@broadcom.com>
Tested-by: Andy Gospodarek <go...@broadcom.com>
---
drivers/net/ethernet/broadcom/Kconfig | 8 ++
drivers/net/ethernet/broadcom/bnxt/Makefile | 2 +-
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 33 +-
drivers/net/ether
This mode is to support XDP. In this mode, each rx ring is configured
with page sized buffers for linear placement of each packet. MTU will be
restricted to what the page sized buffers can support.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadco
Add dedicated transmit function and transmit completion handler for
XDP which are a lot simpler than the original functions for SKB.
v2: Add trace_xdp_exception().
Add dma_sync.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
Tested-by: Andy Gospodarek <go...@bro
ring checking logic in bnxt_setup_msix() can be removed.
The rings have been reserved before hand.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 68 ++-
drivers/net/ethernet/broadcom/bnxt/bnxt.h
bp->tx_nr_rings_xdp.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 21 +
drivers/net/ethernet/broadcom/bnxt/bnxt.h | 3 ++-
drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c | 16
3 files
When driver is running in XDP mode, rx buffers are DMA mapped as
DMA_BIDIRECTIONAL. Add a field so the code will map/unmap rx buffers
according to this field.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.
On Mon, Jan 30, 2017 at 9:13 PM, Jakub Kicinski <kubak...@wp.pl> wrote:
> On Mon, 30 Jan 2017 20:47:47 -0800, Alexei Starovoitov wrote:
>> On Mon, Jan 30, 2017 at 08:49:25PM -0500, Michael Chan wrote:
>> > The first 8 patches refactor the code (rx/tx code paths and
On Mon, Jan 30, 2017 at 9:04 PM, Jakub Kicinski wrote:
>
>
>> + if (netif_running(dev))
>> + bnxt_close_nic(bp, true, false);
>> +
>> + old = xchg(>xdp_prog, prog);
>> + if (old)
>> + bpf_prog_put(old);
>> +
>> + if (prog) {
>> +
On Mon, Jan 30, 2017 at 9:27 PM, Jakub Kicinski <kubak...@wp.pl> wrote:
> On Mon, 30 Jan 2017 20:49:35 -0500, Michael Chan wrote:
>> +static int bnxt_xmit_xdp(struct bnxt *bp, struct bnxt_napi *bnapi,
>> + struct page *page, dma_addr_
uct bnxt_sw_tx_bd. XDP TX rings will use the struct page
pointer.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 5 -
drivers/net/ethernet/broadcom/bnxt/bnxt.h | 10 +-
2 files changed, 13 insertions(+), 2 deletions(-)
d
bp->tx_nr_rings_xdp.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 17 ++---
drivers/net/ethernet/broadcom/bnxt/bnxt.h | 3 ++-
drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c | 16
3 files
ket data in the
bnxt_sw_rx_bd structure. The original data field is changed to void
pointer so that it can either hold the kmalloc'ed data or a page
pointer.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bn
-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 28 +---
drivers/net/ethernet/broadcom/bnxt/bnxt.h | 3 +++
2 files changed, 16 insertions(+), 15 deletions(-)
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
b/drive
Add dedicated transmit function and transmit completion handler for
XDP which are a lot simpler than the original functions for SKB.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
Tested-by: Andy Gospodarek <go...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnx
This mode is to support XDP. In this mode, each rx ring is configured with
page sized buffers for linear placement of each packet. MTU will be
restricted to what the page sized buffers can support.
Signed-off-by: Michael Chan <michael.c...@broadocm.com>
---
drivers/net/ethernet/broadco
off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 11 ++-
drivers/net/ethernet/broadcom/bnxt/bnxt.h | 1 +
2 files changed, 11 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
b/drivers/net/ethernet/broa
Add basic ndo_xdp support to setup and query program, configure the NIC
to run in rx page mode, and support XDP_PASS, XDP_DROP, XDP_ABORTED
actions only. Use Kconfig option to enable XDP support.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
Tested-by: Andy Gospodar
ring checking logic in bnxt_setup_msix() can be removed.
The rings have been reserved before hand.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 68 ++-
drivers/net/ethernet/broadcom/bnxt/bnxt.h
The first 8 patches refactor the code (rx/tx code paths and ring logic)
and add the basic infrastructure to support XDP. The 9th patch adds
basic ndo_xdp to support XDP_DROP and XDP_PASS only. The 10th patch
completes the series with XDP_TX.
Michael Chan (10):
bnxt_en: Refactor rx SKB
When driver is running in XDP mode, rx buffers are DMA mapped as
DMA_BIDIRECTIONAL. Add a field so the code will map/unmap rx buffers
according to this field.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.
BNXT_STATE_IN_SP_TASK must be the
last functions to be called in bnxt_sp_task(). The common scheme will
handle the condition properly.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 38 ---
1 file changed, 25 inse
is bnxt_sp_task() which does not automatically
take RTNL, we add a common scheme for bnxt_sp_task() to call these
functions properly under RTNL.
Michael Chan (3):
bnxt_en: Fix bnxt_reset() in the slow path task.
bnxt_en: Fix RTNL lock usage on bnxt_update_link().
bnxt_en: Fix RTNL lock usage
bnxt_get_port_module_status() calls bnxt_update_link() which expects
RTNL to be held. In bnxt_sp_task() that does not hold RTNL, we need to
call it with a prior call to bnxt_rtnl_lock_sp() and the call needs to
be moved to the end of bnxt_sp_task().
Signed-off-by: Michael Chan <michae
the caller to always hold RTNL.
In bnxt_sp_task(), call bnxt_rtnl_lock_sp() before calling
bnxt_update_link(). We also need to move the call to the end of
bnxt_sp_task() since it will be clearing the BNXT_STATE_IN_SP_TASK bit.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drive
Gospodarek <andrew.gospoda...@broadocm.com>
Acked-by: Andy Gospodarek <andrew.gospoda...@broadocm.com>
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net
Add LED blinking code to support ethtool -p on the PF.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 40 +
drivers/net/ethernet/broadcom/bnxt/bnxt.h | 17 +
drivers/net/ethernet/broadco
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt_hsi.h | 261 +++---
1 file changed, 237 insertions(+), 24 deletions(-)
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt_hsi.h
b/drivers/net/ethernet/broadco
Miscellaneous updates including firmware spec update, ethtool -p blinking
LED support, RDMA SRIOV config callback, and minor fixes.
v2: Dropped the DCBX RoCE app TLV patch until the ETH_P_IBOE RDMA patch
is merged.
Michael Chan (5):
bnxt_en: Fix compiler warnings when CONFIG_RFS_ACCEL
Commit bdbd1eb59c56 ("bnxt_en: Handle no aggregation ring gracefully.")
introduced the BNXT_FLAG_NO_AGG_RINGS flag. For consistency,
bnxt_set_tpa_flags() should also clear TPA flags when there are no
aggregation rings.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
/ethernet/broadcom/bnxt/bnxt.o
drivers/net/ethernet/broadcom/bnxt/bnxt.c:4956:21: warning:
‘bnxt_get_max_func_vnics’ defined but not used [-Wunused-function]
static unsigned int bnxt_get_max_func_vnics(struct bnxt *bp)
^
Signed-off-by: Michael Chan <michael.c...@broadcom.
Add the ulp_sriov_cfg callbacks when the number of VFs is changing. This
allows the RDMA driver to provision RDMA resources for the VFs.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c | 5 +
1 file changed, 5 insertions(+)
On Wed, Jan 11, 2017 at 10:34 AM, Doug Ledford <dledf...@redhat.com> wrote:
> On Wed, 2017-01-11 at 09:17 -0800, Michael Chan wrote:
>> On Wed, Jan 11, 2017 at 7:46 AM, David Miller <da...@davemloft.net>
>> wrote:
>> >
>> > From: Michael Chan <michae
On Wed, Jan 11, 2017 at 7:46 AM, David Miller <da...@davemloft.net> wrote:
> From: Michael Chan <michael.c...@broadcom.com>
> Date: Tue, 10 Jan 2017 20:12:38 -0500
>
>> diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt_dcb.h
>> b/drivers/net/ethernet/broadcom
Commit bdbd1eb59c56 ("bnxt_en: Handle no aggregation ring gracefully.")
introduced the BNXT_FLAG_NO_AGG_RINGS flag. For consistency,
bnxt_set_tpa_flags() should also clear TPA flags when there are no
aggregation rings.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
Add LED blinking code to support ethtool -p on the PF.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 40 +
drivers/net/ethernet/broadcom/bnxt/bnxt.h | 17 +
drivers/net/ethernet/broadco
Add the ulp_sriov_cfg callbacks when the number of VFs is changing. This
allows the RDMA driver to provision RDMA resources for the VFs.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c | 5 +
1 file changed, 5 insertions(+)
/ethernet/broadcom/bnxt/bnxt.o
drivers/net/ethernet/broadcom/bnxt/bnxt.c:4956:21: warning:
‘bnxt_get_max_func_vnics’ defined but not used [-Wunused-function]
static unsigned int bnxt_get_max_func_vnics(struct bnxt *bp)
^
Signed-off-by: Michael Chan <michael.c...@broadcom.
When the driver gets the RoCE app priority set/delete call through DCBNL,
the driver will send the information to the firmware.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt_dcb.c | 106 +-
drivers/net/et
Miscellaneous updates including firmware spec update, ethtool -p blinking
LED support, RDMA SRIOV and app TLV support, and minor fixes.
Michael Chan (6):
bnxt_en: Fix compiler warnings when CONFIG_RFS_ACCEL is not defined.
bnxt_en: Clear TPA flags when BNXT_FLAG_NO_AGG_RINGS is set.
bnxt_en
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/bnxt/bnxt_hsi.h | 261 +++---
1 file changed, 237 insertions(+), 24 deletions(-)
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt_hsi.h
b/drivers/net/ethernet/broadco
ing tp->lock.
Reported-by: Wang Yufen <wangyu...@huawei.com>
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/ethernet/broadcom/tg3.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/net/ethernet/broadcom/tg3.c
b/drivers/net/ethernet/broadcom/tg3.c
i
On Fri, Jan 6, 2017 at 10:01 AM, David Miller wrote:
> From: Eric Dumazet
> Date: Fri, 06 Jan 2017 09:32:56 -0800
>
>> This makes no sense to me.
>>
>> RTNL is absolutely not needed to get device stats.
>>
>> We try to not add RTNL, especially when
dev_get_stats() as __dev_get_stats() and add a new
dev_get_stats() that takes rtnl_lock() before calling __dev_get_stats().
Modify all callers that already take rtnl_lock() to call __dev_get_stats().
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/bonding/bond_
On Thu, Jan 5, 2017 at 12:17 PM, David Miller <da...@davemloft.net> wrote:
> From: Michael Chan <michael.c...@broadcom.com>
> Date: Thu, 5 Jan 2017 12:04:13 -0800
>
>> But it looks like ndo_get_stats() can be called without rtnl lock from
>> net-procfs.c. So
On Thu, Jan 5, 2017 at 9:33 AM, David Miller wrote:
> From: Wang Yufen
> Date: Thu, 5 Jan 2017 22:13:21 +0800
>
>> From: Yufen Wang
>>
>> A possible NULL pointer dereference in tg3_get_stats64 while doing
>> tg3_free_consistent.
>
.
To handle it, we need to properly set up only 1 ring without aggregation.
Set a new flag BNXT_FLAG_NO_AGG_RINGS for this condition and add logic to
set up the chip to place RX data linearly into a single buffer per packet.
Signed-off-by: Michael Chan <michael.c...@broadcom.com>
---
drivers/net/et
401 - 500 of 1356 matches
Mail list logo