Skip to content

net: stmmac: Stop using hard-coded callbacks

Jose Abreu netdev 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest5 patches 2 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/5net: stmmac: Switch stmmac_desc_ops to generic HW Interface Helpersdrivers/net/ethernet/stmicro/stmmac/chain_mode.c drivers/net/ethernet/stmicro/stmmac/common.h drivers/net/ethernet/stmicro/stmmac/dwmac4_descs.c +5 more+195 -1360 replies
2/5net: stmmac: Switch stmmac_dma_ops to generic HW Interface Helpersdrivers/net/ethernet/stmicro/stmmac/common.h drivers/net/ethernet/stmicro/stmmac/hwif.h drivers/net/ethernet/stmicro/stmmac/stmmac_ethtool.c +1 more+172 -1450 replies
3/5net: stmmac: Switch stmmac_ops to generic HW Interface Helpersdrivers/net/ethernet/stmicro/stmmac/common.h drivers/net/ethernet/stmicro/stmmac/dwmac5.c drivers/net/ethernet/stmicro/stmmac/dwmac5.h +3 more+235 -1880 replies
4/5net: stmmac: Switch stmmac_hwtimestamp to generic HW Interface Helpersdrivers/net/ethernet/stmicro/stmmac/common.h drivers/net/ethernet/stmicro/stmmac/hwif.h drivers/net/ethernet/stmicro/stmmac/stmmac_hwtstamp.c +2 more+56 -500 replies
5/5net: stmmac: Switch stmmac_mode_ops to generic HW Interface Helpersdrivers/net/ethernet/stmicro/stmmac/chain_mode.c drivers/net/ethernet/stmicro/stmmac/common.h drivers/net/ethernet/stmicro/stmmac/hwif.h +2 more+68 -580 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [PATCH net-next 0/5] net: stmmac: Stop using hard-coded callbacks

This a starting point for a cleanup and re-organization of stmmac.

In this series we stop using hard-coded callbacks along the code and use instead helpers which are defined in a single place ("hwif.h").

This brings several advantages:
1) Less typing :)
2) Guaranteed function pointer check
3) More flexibility

By 2) we stop using the repeated pattern of:

	if (priv->hw->mac->some_func)
		priv->hw->mac->some_func(...)

I didn't check but I expect the final .ko will be bigger with this series because *all* of function pointers are checked.

Anyway, I hope this can make the code more readable and more flexible now.

Cc David S. Miller <[email protected]>
Cc Joao Pinto <[email protected]>
Cc Giuseppe Cavallaro <[email protected]>
Cc Alexandre Torgue <[email protected]>

Jose Abreu (5):
net: stmmac: Switch stmmac_desc_ops to generic HW Interface Helpers
net: stmmac: Switch stmmac_dma_ops to generic HW Interface Helpers
net: stmmac: Switch stmmac_ops to generic HW Interface Helpers
net: stmmac: Switch stmmac_hwtimestamp to generic HW Interface Helpers
net: stmmac: Switch stmmac_mode_ops to generic HW Interface Helpers

 drivers/net/ethernet/stmicro/stmmac/chain_mode.c   |  34 +-
 drivers/net/ethernet/stmicro/stmmac/common.h       | 199 +---------
 drivers/net/ethernet/stmicro/stmmac/dwmac4_descs.c |   4 +-
 drivers/net/ethernet/stmicro/stmmac/dwmac5.c       |  19 +-
 drivers/net/ethernet/stmicro/stmmac/dwmac5.h       |   6 +-
 drivers/net/ethernet/stmicro/stmmac/enh_desc.c     |   4 +-
 drivers/net/ethernet/stmicro/stmmac/hwif.h         | 421 ++++++++++++++++++++
 drivers/net/ethernet/stmicro/stmmac/norm_desc.c    |   4 +-
 drivers/net/ethernet/stmicro/stmmac/ring_mode.c    |  39 +-
 .../net/ethernet/stmicro/stmmac/stmmac_ethtool.c   |  82 ++--
 .../net/ethernet/stmicro/stmmac/stmmac_hwtstamp.c  |  34 +-
 drivers/net/ethernet/stmicro/stmmac/stmmac_main.c  | 439 +++++++++------------
 drivers/net/ethernet/stmicro/stmmac/stmmac_ptp.c   |  18 +-
 13 files changed, 726 insertions(+), 577 deletions(-)
 create mode 100644 drivers/net/ethernet/stmicro/stmmac/hwif.h
Signature · 1 line
2.9.3