The Ethernet MAC requires precise sampling times at Rx, but signals on the Rx side after transmission on the board may vary due to different hardware layouts. The RGMII_CONFIG2_RX_PROG_SWAP can be used to switch the sampling occasion between the rising edge and falling edge of the clock to meet the sampling requirements. Consequently, the configuration of this bit in the Ethernet MAC can vary between boards, even if they are of the same version. It should be adjustable rather than simply determined by the version. For example, the MAC version is less than 3, but it needs to enable this bit. Therefore, this patch set introduces a new flag for each board to control whether to open it. The dependency patch set detailed below has introduced and enabled an Ethernet node that supports 1G speed on qcs615. The current patch set now allows tuning of the MAC's RX swap, thereby supporting 10M and 100M speeds. Signed-off-by: Yijie Yang <quic_yijiyang@xxxxxxxxxxx> --- This patch series depends on below patch series: https://lore.kernel.org/all/20241118-dts_qcs615-v2-0-e62b924a3cbd@xxxxxxxxxxx/ --- Yijie Yang (3): dt-bindings: net: stmmac: Tune rx sampling occasion net: stmmac: qcom-ethqos: Enable RX programmable swap on qcs615 arm64: dts: qcom: qcs615-ride: Enable RX programmable swap on qcs615-ride .../devicetree/bindings/net/qcom,ethqos.yaml | 6 ++++ arch/arm64/boot/dts/qcom/qcs615-ride.dts | 1 + .../ethernet/stmicro/stmmac/dwmac-qcom-ethqos.c | 36 ++++++++++++---------- 3 files changed, 27 insertions(+), 16 deletions(-) --- base-commit: 532900dbb7c1be5c9e6aab322d9af3a583888f25 change-id: 20241217-support_10m100m-16239916fa12 prerequisite-message-id: <20241118-dts_qcs615-v2-0-e62b924a3cbd@xxxxxxxxxxx> prerequisite-patch-id: ab55582f3bfce00f051fddd75bb66b2ef5e0677d prerequisite-patch-id: 514acd303f0ef816ff6e61e59ecbaaff7f1b06ec Best regards, -- Yijie Yang <quic_yijiyang@xxxxxxxxxxx>