Thread (59 messages) 59 messages, 5 authors, 2021-08-18

RE: [PATCH net-next v2 6/8] ravb: Add net_features and net_hw_features to struct ravb_hw_info

From: Biju Das <biju.das.jz@bp.renesas.com>
Date: 2021-08-12 07:35:41
Also in: linux-renesas-soc

Hi Sergei,

Thanks for the feedback.
Subject: Re: [PATCH net-next v2 6/8] ravb: Add net_features and
net_hw_features to struct ravb_hw_info

Hello!

On 8/5/21 10:18 PM, Biju Das wrote:

[...]
quoted
quoted
quoted
On R-Car the checksum calculation on RX frames is done by the E-MAC
module, whereas on RZ/G2L it is done by the TOE.

TOE calculates the checksum of received frames from E-MAC and
outputs it to DMAC. TOE also calculates the checksum of transmission
frames from DMAC and outputs it E-MAC.

Add net_features and net_hw_features to struct ravb_hw_info, to
support subsequent SoCs without any code changes in the ravb_probe
function.
quoted
Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
Reviewed-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
[...]
quoted
diff --git a/drivers/net/ethernet/renesas/ravb.h
b/drivers/net/ethernet/renesas/ravb.h
index b765b2b7d9e9..3df813b2e253 100644
--- a/drivers/net/ethernet/renesas/ravb.h
+++ b/drivers/net/ethernet/renesas/ravb.h
@@ -991,6 +991,8 @@ enum ravb_chip_id {  struct ravb_hw_info {
 	const char (*gstrings_stats)[ETH_GSTRING_LEN];
 	size_t gstrings_size;
+	netdev_features_t net_hw_features;
+	netdev_features_t net_features;
   Do we really need both of these here?
R-Car has only Rx Checksum on E-Mac, where as Geth supports Rx Check Sum
on E-Mac or Rx/Tx CheckSum on TOE.
quoted
So there is a hw difference. Please let me know what is the best way to
handle this?

   I meant that we could go with only one field of the net_features...
Alternatively, we could use our own feature bits...
Basically are you suggesting some thing like unsigned hwcsum_tx_rx: 1;

Then,

if (hwcsum_tx_rx) {
	ndev->hw_features = NETIF_F_HW_CSUM | NETIF_F_RXCSUM;
} else {
	ndev->features = NETIF_F_RXCSUM;
	ndev->hw_features = NETIF_F_RXCSUM;
}

Cheers,
Biju
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help