Théo Lebrun
2025-09-10T16:16:25Z

Fix a few disparate topics in MACB:

[PATCH net v5 0/5] net: macb: various fixes
[PATCH net v5 1/5] dt-bindings: net: cdns,macb: allow tsu_clk without tx_clk
[PATCH net v5 2/5] net: macb: remove illusion about TBQPH/RBQPH being per-queue
[PATCH net v5 3/5] net: macb: move ring size computation to functions
[PATCH net v5 4/5] net: macb: single dma_alloc_coherent() for DMA descriptors
[PATCH net v5 5/5] net: macb: avoid dealing with endianness in macb_set_hwaddr()

Patch 3/5 is a rework that simplifies patch 4/5. It is the only non-fix.

Pending series on MACB are: (1) many cleanup patches and (2) patches for
EyeQ5 support. Those will be sent targeting net-next/main once this
series lands there, aiming to minimise merge conflicts. Old version of
those patches are visible in the V2 revision [0].

Thanks,
Have a nice day,
Théo

[0]: https://lore.kernel.org/lkml/20250627-macb-v2-0-ff8207d0bb77@bootlin.com/

Signed-off-by: Théo Lebrun <theo.lebrun@bootlin.com>
---
Changes in v5:
- Fix hwaddr endianness patch following comment by Russell [2].
[2]: https://lore.kernel.org/lkml/DCKQTNSCJD5Q.BKVVU59U0MU@bootlin.com/
- Take 4 Acked-by: Nicolas Ferre.
- Take Tested-by: Nicolas Ferre.
- Link to v4: https://lore.kernel.org/r/20250820-macb-fixes-v4-0-23c399429164@bootlin.com

Changes in v4:
- Drop 11 patches that are only cleanups. That includes the
RBOF/skb_reserve() patch that, after discussion with Sean [1], has
had its Fixes trailer dropped. "move ring size computation to
functions" is the only non-fix patch that is kept, as it is depended
upon by further patches. Dropped patches:
dt-bindings: net: cdns,macb: sort compatibles
net: macb: match skb_reserve(skb, NET_IP_ALIGN) with HW alignment
net: macb: use BIT() macro for capability definitions
net: macb: remove gap in MACB_CAPS_* flags
net: macb: Remove local variables clk_init and init in macb_probe()
net: macb: drop macb_config NULL checking
net: macb: simplify macb_dma_desc_get_size()
net: macb: simplify macb_adj_dma_desc_idx()
net: macb: move bp->hw_dma_cap flags to bp->caps
net: macb: introduce DMA descriptor helpers (is 64bit? is PTP?)
net: macb: sort #includes
[1]: https://lore.kernel.org/lkml/d4bead1c-697a-46d8-ba9c-64292fccb19f@linux.dev/
- Wrap code to 80 chars.
- Link to v3: https://lore.kernel.org/r/20250808-macb-fixes-v3-0-08f1fcb5179f@bootlin.com

Changes in v3:
- Cover letter: drop addresses that reject emails:
cyrille.pitchen@atmel.com
hskinnemoen@atmel.com
jeff@garzik.org
rafalo@cadence.com
- dt-bindings: Take 2x Reviewed-by Krzysztof.
- dt-bindings: add Fixes trailer to "allow tsu_clk without tx_clk"
patch, to highlight we are not introducing new behavior.
- Reorder commits; move fixes first followed by cleanup patches.
- Drop all EyeQ5 related commits.
- New commit: "remove gap in MACB_CAPS_* flags".
- New commit: "move ring size computation to functions".
- New commit: "move bp->hw_dma_cap flags to bp->caps".
- Rename introduced helpers macb_dma_is_64b() to macb_dma64() and,
macb_dma_is_ptp() to macb_dma_ptp().
- Rename MACB_CAPS_RSC_CAPABLE -> MACB_CAPS_RSC.
- Fix commit message typos: "maxime" -> "maximise", etc.
- Take 7x Reviewed-by: Sean Anderson.
- Add details to some commit messages.
- Link to v2: https://lore.kernel.org/r/20250627-macb-v2-0-ff8207d0bb77@bootlin.com

---
Théo Lebrun (5):
dt-bindings: net: cdns,macb: allow tsu_clk without tx_clk
net: macb: remove illusion about TBQPH/RBQPH being per-queue
net: macb: move ring size computation to functions
net: macb: single dma_alloc_coherent() for DMA descriptors
net: macb: avoid dealing with endianness in macb_set_hwaddr()

.../devicetree/bindings/net/cdns,macb.yaml | 2 +-
drivers/net/ethernet/cadence/macb.h | 4 -
drivers/net/ethernet/cadence/macb_main.c | 140 ++++++++++-----------
3 files changed, 69 insertions(+), 77 deletions(-)
---
base-commit: 03605e0fae3948824b613bfb31bcf420b89c89c7
change-id: 20250808-macb-fixes-e2f570e11241

Best regards,
--
Théo Lebrun <theo.lebrun@bootlin.com>