Thread (3 messages) 3 messages, 2 authors, 2013-01-30

Re: [PATCH] net-bnx2x: Force link UP when the interface is in LOOPBACK mode

From: Eilon Greenstein <hidden>
Date: 2013-01-30 10:25:57

On Tue, 2013-01-29 at 17:51 -0800, Mahesh Bandewar wrote:
When the interface does not have carrier but when it's put into
loopback mode (for tests), it does not make sense to not have
the carrier. So force it!
Mahesh,

What is the motivation for this change? During the test, the device is
not really functional and cannot receive traffic to the loopback, so why
would you like to indicate internally that the link is up?
quoted hunk ↗ jump to hunk
Signed-off-by: Mahesh Bandewar <redacted>
---
 drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.c | 5 +++++
 1 file changed, 5 insertions(+)
diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.c
index 859df751345e..91af55586bbc 100644
--- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.c
+++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.c
@@ -4748,6 +4748,11 @@ void bnx2x_link_status_update(struct link_params *params,
 	vars->link_status = REG_RD(bp, params->shmem_base +
 				   offsetof(struct shmem_region,
 					    port_mb[port].link_status));
+
+	/* Force link UP in loopback mode */
+	if (bp->link_params.loopback_mode != LOOPBACK_NONE)
The LOOPBACK_EXT requires an external loopback so we should not just
force link up indication for that kind of loopback.
+		vars->link_status |= LINK_STATUS_LINK_UP;
+
 	if (bnx2x_eee_has_cap(params))
 		vars->eee_status = REG_RD(bp, params->shmem2_base +
 					  offsetof(struct shmem2_region,
Thanks,
Eilon
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help